Mi sono assicurato un REST API usando OAuth 2.0 sicurezza e non sono sicuro su come configurare l'accesso di sicurezza utilizzando ruoli o ambiti.
Ci saranno tre tipi di client:
- Client di app per dispositivi mobili pubblici utilizzato dagli utenti finali che possono accedervi profilo, dati, ecc. (utilizzando il tipo di concessione della password). Con "pubblico" intendo che l'app è intesa da qualsiasi utente e disponibile per qualsiasi utente da Google Store, ecc.)
- Client di amministrazione non pubblico utilizzato solo da me per l'amministrazione scopi che possono accedere ai servizi amministrativi non consentiti utilizzato da utenti normali (utilizzando il tipo di concessione client_credentials).
- Client di terze parti non pubblico (utilizzando il tipo di concessione client_credentials) che utilizzerà alcuni servizi creati appositamente per loro.
Devo solo creare tre ruoli diversi, Utente, Amministratore e ThirdPartyX e servizi sicuri con le regole di "oauth2.clientHasRole"? O dovrei creare diversi ambiti e non mi interessa i ruoli? Esiste una regola generale su dove dovrei usare ruoli o ambiti in generale?