Seidor
mujer con el móvil

04 de gener de 2023

Què és SAML? Com funciona SAML 2.0?

Saps per què cada vegada més companyies aposten per SAML? Perquè és una excel·lent solució completa per a l'administració d'identitat federada (FIM) que permet integrar l'inici de sessió únic o Single Sign-on (SSO). A més, el seu procés d'autenticació única possibilita utilitzar diverses aplicacions al mateix temps.

Els components individuals de SAML, entre els quals trobem una base de dades central d'usuaris i 6 protocols diferents, proporcionen totes les funcions rellevants per descriure i transferir característiques de seguretat.

Què és SSO (Single Sign On)?

SAML permet integrar l'inici de sessió únic (SSO), així que començarem explicant què és.

El SSO permet als usuaris iniciar sessió amb les mateixes credencials en diferents comptes. D'aquesta manera, quan un treballador introdueix credencials per iniciar sessió en el seu lloc també s'autentica en les seves aplicacions, recursos i altres programaris.

Els seus avantatges són diversos:

  • Millora l'experiència d'usuari. L'usuari ja no necessitarà memoritzar diferents contrasenyes ni gastar diversos segons en cada inici de sessió.
  • Minimitza els atacs hackers. S'eviten contrasenyes dèbils, ja que en existir-ne només una aquesta sol ser més forta.
  • Protocols com SAML ho fan molt fàcil d'implementar.

Proveïdor d'identitat i Proveïdor de serveis

SAML (Security Assertion Markup Language) és un estàndard de codi obert basat en XML que permet l'intercanvi d'informació, tant d'autenticació com d'autorització entre diferents parts: un identity provider (proveïdor d'identitat) i un service provider (proveïdor de serveis).

Per una banda, un proveïdor de serveis necessita l'autenticació del proveïdor d'identitat per atorgar autorització a l'usuari. Salesforce sol ser proveïdor de serveis, ja que depenen d'un proveïdor d'identitat per a l'autenticació de l'usuari. Fes clic aquí si vols conèixer en profunditat què és Salesforce.

D'altra banda, un proveïdor d'identitat realitza l'autenticació que l'usuari final és qui diu ser i envia aquestes dades al proveïdor del servei juntament amb els drets d'accés de l'usuari al servei.

Un exemple és OKTA, un dels líders en el subministrament de solucions d'identitat.


Autenticació SAML

Així, l'autenticació SAML és el procés pel qual es verifica la identitat i les credencials de l'usuari (contrasenya, autenticació de dos factors, etc.). L'autorització SAML és la que li diu al proveïdor de serveis quin accés atorga a l'usuari autenticat.

Com funciona SAML?

SAML té diverses utilitats. Una de les seves funcions és la de fer declaracions sobre les propietats i autoritzacions d'un usuari per a altres usuaris o empreses associades, però en especial sobre aplicacions, és a dir, als «proveïdors de serveis». Això és possible gràcies al fet que l'identity provider, base de dades central en la qual s'emmagatzema la corresponent informació de l'usuari, utilitza assercions en un format XML.

Però a més compta amb altres components, com protocols, enllaços i perfils, que expliquem a continuació.

Aserciones

Una asserció SAML és el document XML creat pel proveïdor d'identitat que envia al proveïdor de serveis, i pot contenir una o més declaracions. De fet, existeixen tres tipus diferents d'assertions SAML, que es especifiquen en SAML 2.0: autenticació, atribut i decisió d'autorització.

  • Declaracions d'autenticació: el proveïdor d'identitat informa a l'aplicació que l'usuari s'ha autenticat mitjançant declaracions d'autenticació. Aquest tipus de declaració també proporciona informació en una afirmació sobre quan es va realitzar l'autenticació i quin mètode es va utilitzar.
  • Attribute statements: les declaracions d'atributs són atributs que estan vinculats a l'usuari respectiu i es poden comunicar a l'aplicació utilitzant el token SAML corresponent.
  • Declaracions de decisió d'autorització: quan les declaracions de decisió d'autorització s'inclouen en una asserció SAML, a l'usuari se li ha atorgat accés a recursos específics o se li ha denegat l'accés a recursos específics.

Cada una de les assercions també rep una signatura digital, la qual ha de ser verificada pel proveïdor que accedeix al servei. Aquesta és la forma mitjançant la qual es garanteix la integritat i autenticitat del token SAML, que és el nom que rep l'asserció després d'haver estat signada. Un cop s'ha procedit a la correcta verificació, és el proveïdor de serveis qui analitza el contingut real, amb la finalitat de decidir, si escau, el tipus d'accés que se li atorga a l'usuari.

Protocolos

La especificació SAML 2.0 defineix un conjunt de protocols de consulta / resposta. A través d'ells, l'aplicació pot sol·licitar o consultar una asserció, o bé sol·licitar a un usuari que s'autentifiqui. Aquests són els següents protocols:

  • Authentication request protocol: el protocol de sol·licitud d'autenticació defineix missatges de tipus <AuthnRequest> que són necessaris per consultar assercions amb declaracions d'autenticació per a un usuari seleccionat. Basant-se en aquest protocol, la informació es transfereix de la base de dades al proveïdor de serveis, generalment utilitzant un «Perfil SSO del navegador web SAML 2.0».
  • Protocol de consulta i sol·licitud d'afirmació: per a consultes que es poden utilitzar per recuperar afirmacions SAML en general, el marc conté el protocol de consulta i sol·licitud d'afirmació. Les afirmacions es poden consultar en funció de diversos paràmetres, com els tipus de declaracions que conté.
  • Single logout protocol: el protocol de tancament de sessió únic defineix consultes que inicien un tancament de sessió gairebé simultani de totes les sessions actives d'un usuari. L'usuari, el proveïdor d'identitat o el proveïdor de serveis poden enviar aquest tipus de missatges.
  • Protocol de resolució d'artefactes: si els missatges SAML s'han de transportar per separat a través d'un canal segur o en una mida que estalviï recursos, s'utilitza el protocol de resolució d'artefactes. Permet enviar referències a assercions, també anomenades artefactes, que són molt més petites que el missatge real. El registre també permet resoldre aquestes referències per rebre el missatge original.
  • Protocol de gestió d'identificadors de nom: aquest protocol proporciona mitjans per canviar el valor del nom o el format d'una identitat d'usuari. La sol·licitud pot ser escrita pel proveïdor de serveis o pel proveïdor d'identitat. També pot utilitzar el protocol de gestió de l'identificador de nom per eliminar els enllaços entre els proveïdors de serveis i identitats que es van crear per autenticar la identitat de l'usuari original.
  • Name identifier mapping protocol: el protocol d'assignació d'identificador de nom defineix missatges de consulta i resposta per a la comunicació entre dos proveïdors de serveis. Segons aquest tipus de missatge, una aplicació pot consultar un identity provider perquè un usuari accedeixi a una altra aplicació.

Vincles

Les assignacions de missatges SAML en els protocols estàndard de missatgeria o comunicació s'anomenen «enllaços de protocol SAML» o simplement «enllaços».

Per exemple l'enllaç SOAP defineix com es poden intercanviar missatges SAML dins d'entorns SOAP, mentre que l'enllaç de redireccionament HTTP defineix com es poden transportar els missatges del protocol SAML mitjançant el reenviament HTTP. Altres enllaços que ja estan predefinits en SAML 2.0:

  • Enllaç SOAP invers
  • Enllaç HTTP POST
  • Enllaç d'Artifact HTTP
  • Enllaç URI SAML

Perfil SSO de navegador web SAML 2.0 i altres perfils

Una de les principals qualitats de SAML és la seva gran flexibilitat, que facilita el seu ús per a una àmplia varietat de propòsits. No obstant això, cal tenir en compte que esta flexibilitat pot ser la causa que algunes aplicacions no l'admetin. Encara que en aquests casos existeix una solució que consisteix a limitar-la. La manera de fer-ho és utilitzar els anomenats perfils.

En general, un perfil de SAML define restriccions i / o extensions en suport de l'ús de SAML per a una aplicació en particular; la seva finalitat és millorar la interoperabilitat en eliminar part de la flexibilitat inevitable en un estàndard d'ús general.

Perfil SSO de navegador web SAML 2.0, un dels perfils més destacats, conté tots els components essencials per definir la comunicació dels requisits d'autenticació SAML entre els proveïdors d'identitat i serveis. A més d'això, s'ofereixen altres perfils molt interessants, que poden ser de molta utilitat:

  • Perfil de Client i Proxy Millorat (ECP).
  • Perfil de Descobriment del Proveïdor d'Identitat.
  • Perfil de Tancament de Sessió Únic.
  • Perfil de Gestió d'Identificadors de Nom.
  • Perfil de Resolució d'Artifactes.
  • Perfil de Consulta/Solicitud de Aserción.
  • Perfil de Mapeig d'Identificadors de Nom.

Quines novetats aporta SAML 2.0?

SAML es va desenvolupar el 2001 pels serveis de seguretat del comitè tècnic del consorci OASIS (Organization for the Advancement of Structured Information Standards). La seva primera versió, SAML v1.0, es va publicar el novembre de 2002. El 2005, a partir de diverses adaptacions, van aparèixer les revisions anomenades SAML 2.0 i 2.1.

Amb les últimes versions, es van aplicar importants canvis i es van afegir noves característiques derivades del marc de la federació d'identitat de l'aliança llibertat (ID-FF) 1.2 i de l'arquitectura shibboleth, com les que assenyalem a continuació:

  • Eliminació d'alguns elements obsolets com <AuthorityBinding> o <RespondWith>
  • Implementació de signatura XML i encriptació XML (segons W3C)
  • Reemplaçament de l'atribut AssertionID amb un atribut d'ID XML general
  • Introducció de la gestió de sessions per admetre el tancament de sessió automàtic de totes les aplicacions (per exemple durant absències prolongades).
  • Adaptació de les metadades per simplificar l'ús de SAML (en aquest cas, el proveïdor d'identitat i el proveïdor de serveis també passen a estar marcats en les metadades).
  • L'ús de mecanismes que permeten als proveïdors comunicar polítiques i configuracions de privacitat.
  • Suport millorat per a dispositius mòbils.
  • Implementació dels registres ja enumerats (només existia el protocol de consulta i sol·licitud d'assertió en SAML 1.0 i 1.1)
  • Optimització de perfil (per exemple, Fusió dels perfils «navegador / artefacte» i «navegador / publicació» en el «SAML 2.0 Web Browser SSO Profile«).

Per a què és adequat l'estàndard SAML?

El estàndard SAML resulta molt útil per implementar una instància d'autenticació central en funció del llenguatge de marcat. Un dels seus grans avantatges és que ofereix un elevat grau d'eficiència i un alt estàndard de seguretat. En particular, es minimitza el nombre de possibles fuites de seguretat, gràcies al fet que les aplicacions individuals no han d'emmagatzemar ni sincronitzar cap dada de l'usuari. D'aquesta manera s'aconsegueix un dels objectius primordials, que és compatibilitzar un alt grau de seguretat amb el millor nivell possible de facilitat d'ús.

El seu ús és molt recomanable en diferents àmbits, i es pot utilitzar tant per als processos interns de sol·licitud de l'empresa com per a diversos serveis web com els de banca en línia o aplicacions mòbils. Com a client, notarà que està tractant amb diverses aplicacions diferents quan utilitza aquest tipus de serveis ja que, encara que l'usuari, en realitat, accedeixi a més d'un sistema de fons. SAML crearà la il·lusió que s'ha ingressat en un sol programa.


Conclusió

SAML és un dels protocols usats pels diferents productes de OKTA, una de les millors solucions d'autenticació moderna.

OKTA proporciona eines que faciliten la identificació, autenticació i autorització mitjançant solucions Single Sign-On (SSO), Directori Universal (UD), Autenticació Adaptativa Multifactor (Adaptative MFA), Accés Condicional, etc.

Potser et pot interessar

01 de febrer de 2023

Què és un Middleware?

Potser el nom de middleware no et sona de res. Però si coneixes el hardware o el software, ho podràs relacionar. El middleware és, de fet, un tipus de programari. A diferència d'altres programes informàtics, aquest serveix per interactuar amb altres elements de l'ordinador, com pot ser el sistema operatiu, el maquinari o aplicacions. També, amb nosaltres, els propis usuaris.

SEIDOR
27 de gener de 2023

7 Avantatges (i 5 Desavantatges) d'un CRM

La tecnologia CRM ens permet millorar les relacions amb els clients i facilita la presa de decisions per obtenir millors resultats en el departament de vendes.

22 de febrer de 2023

Intel·ligència artificial per parlar? 6 exemples reals

Els xatbots són canals personalitzats de comunicació que utilitzen les empreses per interactuar amb els seus clients sense la necessitat d'un interlocutor real. La solució perfecta per trobar informació o realitzar qualsevol gestió simple.

SEIDOR