SAML
SAML brukes til å tillate webapplikasjoners SSO-leverandører å overføre og flytte legitimasjon mellom Identity Provider (IDP), som har legitimasjonen, og Service Provider (SP), som er ressursen som trenger disse legitimasjonene. SAML er et standard autorisasjons- og autentiseringsprotokollspråk som vanligvis brukes til å utføre føderasjon og identitetsadministrasjon, sammen med Single Sign On-administrasjon. I SAML, XML-metadatadokumenter brukes som et token for innlevering av klientens identitet. Autentiserings- og autorisasjonsprosessen av SAML er som følgende:
- Brukeren ber om å logge på tjenesten via nettleseren.
- Tjenesten informerer nettleseren om at den autentiseres til en bestemt identitetsleverandør (IdP) som er registrert hos tjenesten.
- Nettleseren videresender autentiseringsforespørselen til de registrerte identitetsleverandørene for pålogging og autentisering.
- Ved vellykket legitimasjon / godkjenningskontroll genererer IdP et XML-basert påstandsdokument som verifiserer brukerens identitet og videreformidler dette til nettleseren.
- Nettleseren videresender påstanden til tjenesteleverandøren.
- Tjenesteleverandøren (SP) godtar påstanden for oppføring og gir brukeren tilgang til tjenesten ved å logge dem på.
La oss nå se på et eksempel fra virkeligheten. Anta at en bruker klikker på Logg Inn alternativet på bildedelingstjenesten på nettstedet abc.com. For å autentisere brukeren, sendes en kryptert forespørsel om SAML-godkjenning av abc.com. Forespørselen vil bli sendt fra nettstedet direkte til autorisasjonsserveren (IdP). Her vil tjenesteleverandøren omdirigere brukeren til IdP for autorisasjon. IdP vil bekrefte den mottatte SAML-godkjenningsforespørselen, og hvis forespørselen viser seg å være gyldig, vil den presentere brukeren et påloggingsskjema for å legge inn legitimasjonen. Etter at brukeren oppgir legitimasjonen, vil IdP generere en SAML-påstand eller SAML-token som inneholder brukerens data og identitet, og vil sende den til tjenesteleverandøren. Tjenesteleverandøren (SP) verifiserer SAML-påstanden og trekker ut dataene og identiteten til brukeren, tildeler de riktige tillatelsene til brukeren og logger brukeren inn i tjenesten.
Web-applikasjonsutviklere kan bruke SAML-plugins for å sikre at appen og ressursen begge følger den nødvendige Single Sign On-fremgangsmåten. Dette vil gi en bedre brukerinnloggingsopplevelse og mer effektiv sikkerhetspraksis som utnytter en felles identitetsstrategi. Med SAML på plass er det bare brukere med riktig identitet og påstandstoken som har tilgang til ressursen.
OAUTH
OAUTH brukes når det er behov for å overføre autorisasjon fra en tjeneste til en annen tjeneste uten å dele den faktiske legitimasjonen, som passord og brukernavn. Ved hjelp av OAUTH, brukere kan logge på en enkelt tjeneste, få tilgang til ressursene til andre tjenester og utføre handlinger på tjenesten. OAUTH er den beste metoden som brukes til å overføre autorisasjon fra en Single Sign On-plattform til en annen tjeneste eller plattform, eller mellom to webapplikasjoner. De OAUTH arbeidsflyten er som følger:
- Brukeren klikker på Innlogging-knappen for en ressursdelingstjeneste.
- Ressursserveren viser brukeren et autorisasjonstilskudd og omdirigerer brukeren til autorisasjonsserveren.
- Brukeren ber om et tilgangstoken fra autorisasjonsserveren ved bruk av autorisasjonstilskuddskoden.
- Hvis koden er gyldig etter innlogging på autorisasjonsserveren, får brukeren et tilgangstoken som kan brukes til å hente eller få tilgang til en beskyttet ressurs fra ressursserveren.
- Når du mottar en forespørsel om en beskyttet ressurs med et tilgangsbevilgningstoken, kontrolleres gyldigheten av tilgangstokenet av ressursserveren ved hjelp av autorisasjonsserveren.
- Hvis tokenet er gyldig og består alle kontrollene, tildeles den beskyttede ressursen av ressursserveren.
En vanlig bruk av OAUTH er å la en webapplikasjon få tilgang til en sosial medieplattform eller annen online konto. Google-brukerkontoer kan brukes med mange forbrukerapplikasjoner av flere forskjellige grunner, for eksempel blogging, online spill, pålogging med sosiale mediekontoer og lesing av artikler på nyhetsnettsteder. I disse tilfellene fungerer OAUTH i bakgrunnen, slik at disse eksterne enhetene kan kobles og få tilgang til de nødvendige dataene.
OAUTH er en nødvendighet, da det må være en måte å sende autorisasjonsinformasjon mellom forskjellige applikasjoner uten å dele eller avsløre brukerlegitimasjon. OAUTH brukes også i bedrifter. Anta for eksempel at en bruker trenger tilgang til selskapets Single Sign On-system med brukernavn og passord. SSO gir tilgang til alle nødvendige ressurser ved å sende OAUTH autorisasjonstokener til disse appene eller ressursene.
Konklusjon
OAUTH og SAML er begge veldig viktige sett fra en webapplikasjonsutvikler eller systemadministrator, mens begge er veldig forskjellige verktøy med forskjellige funksjoner. OAUTH er protokollen for tilgangsautorisasjon, mens SAML er et sekundært sted som analyserer inngangen og gir autorisasjon til brukeren.