2016-12-16 4 views
0

Ein einfaches Szenario Ich habe eine typische Architektur ein Client, Autorisierungsserver (OAuth Server) und Resource Server.Client erhält Token vom Autorisierungsserver mit client_credentials und sendet Token an Ressourcenserver und es dient die Anfrage.So wenn ich haben 2 APIs entweder der angemeldete Benutzer kann auf alle oder keine basierend auf gültigen oder ungültigen Token zugreifen. Gibt es einen Mechanismus, um Zugriff auf 1 API zu gewähren? Die Frage ist, ob der Token API-spezifisch sein kann, wie er Zugriff auf 1 API gibt und nicht auf den anderen.Fragen zu OAuth2

Antwort

0

scope Der Mechanismus kann verwendet werden, um zwischen Berechtigungen zu unterscheiden, die mit den Zugriffs-Token zugeordnet sind. Z.B. könnte es ein Spielraum für die API-A und eine für API B. seinen Auftraggeber für einen dieser Bereiche oder beides und das Token beiden APIs zum jeweiligen Aufruf oder nur einer von ihnen wäre gültig fragen kann.

Siehe auch: https://tools.ietf.org/html/rfc6749#section-3.3, die nicht viel über die Semantik von scope sagt, aber in der Praxis ist ein Bereich fast immer mit einer (Menge von) Erlaubnis (en) verbunden.

+0

Was auch immer Sie sagen, ist absolut richtig in Bezug auf Client permission.The Frage WRT ist. User.Say ein Client hat beide Geltungsbereich. Dadurch kann der gesamte Benutzer auf beide Ressourcen zugreifen, die versuchen, über denselben Client zuzugreifen. Wenn ich möchte, dass Benutzer A sowohl auf API A als auch auf Benutzer B zugreift. –

+0

Sie sollten einen Zuschuss Typ verwenden, die den Benutzer eher beinhaltet als client_credentials oder eine client_id pro Benutzer verwenden –