Client Credentials Grant Type OAuth 2.0:ssa
Client Credentials Grant Type on suunniteltu erityisesti sovelluksille, jotka tarvitsevat pääsyn resursseihin, joita ei ole liitetty tiettyyn käyttäjään. Tässä skenaariossa asiakas toimii resurssin omistajana. Tämä grant type sopii parhaiten taustajärjestelmiin, joissa sovellus vuorovaikuttaa palvelun kanssa ilman käyttäjäkontekstia.
Kuinka se toimii
Tokenin pyytäminen:
- Asiakas lähettää pyynnön valtuutuspalvelimelle. Pyyntö sisältää yleensä asiakkaan
client_id:n jaclient_secret:in todentamista varten.
Tokenisvaste:
- Onnistuneen asiakkaan todennuksen jälkeen valtuutuspalvelin myöntää pääsytokenin. Asiakas voi sitten käyttää tätä tokenia pyytääkseen resursseja resurssipalvelimelta.
Client Credentials Grantin konfigurointi
Rekisteröi sovelluksesi:
- Aloita rekisteröimällä sovelluksesi OAuth 2.0 -palveluntarjoajalle. Rekisteröinnin jälkeen saat
client_id:n jaclient_secret:in.
Tokenipyyntö:
- Sovelluksesi on lähetettävä POST-pyyntö valtuutuspalvelimen tokenipäätepisteeseen. Pyynnön tulee sisältää
grant_type-parametri asetettuna "client_credentials"-arvoksi sekäclient_idjaclient_secret. On ratkaisevan tärkeää lähettää tämä pyyntö turvallisesti HTTPS:ää käyttäen.
Tokenivastauksen käsittely:
- Valtuutuspalvelin vastaa pääsytokenilla kun se tarkistaa sovelluksesi. Käsittele tätä tokenia turvallisesti sovelluksessasi.
Tokenin käyttö:
- Pääsytokenin kanssa sovelluksesi voi lähettää valtuutettuja pyyntöjä resurssipalvelimelle päästäkseen sallittuihin resursseihin.
Huomioitavaa
Ei käyttäjävuorovaikutusta: Tämä grant type ei sisällä loppukäyttäjän todennusta, mikä tekee siitä sopivan palvelin-palvelin-vuorovaikutuksiin.
Turvallisuus: Koska sovelluksen tunnistetiedot (
client_idjaclient_secret) ovat välttämättömiä tokenin hankkimiseen, niiden turvallisena pitäminen on ehdottoman tärkeää. Mikä tahansa tietoturvapuute voisi johtaa luvattomaan pääsyyn.Rajoitettu laajuus: Tällä vuokululla hankittujen tokenien laajuus tulisi rajoittaa myöntämällä vain sovelluksen toimintaan tarvittavat oikeudet.
Yhteenveto
Client Credentials Grant Type tarjoaa tehokkaan tavan sovelluksille kommunikoida palvelun kanssa ilman käyttäjän väliintuloa. Se on suositeltava menetelmä tilanteissa, joissa sovelluksen on toimittava omissa nimissään eikä käyttäjän puolesta. Kehittäjien on kuitenkin oltava varovaisia ja varmistettava sovelluksen tunnistetietojen turvallisuus mahdollisten turvallisuusriskien estämiseksi.