Descripción general de la seguridad del perímetro: implementación de gestión de identidad y acceso con software gratuito de código abierto


Hoy queremos compartir un hallazgo literario directamente relacionado con nuestra área temática.

Tema de gestión de identidad y accesoen este momento está bastante cerrado, lo que nos crea problemas, en primer lugar, con la selección de especialistas altamente calificados, desde el desarrollador líder hasta el RP y el arquitecto. La capacitación de tales especialistas que se han mudado de otra materia requiere mucho tiempo. No menos problema es la actitud cautelosa hacia esta área de muchos clientes que no entienden "por qué necesitamos todo esto", si existe una infraestructura de dominio normal. A pesar de que el autor del libro dirige al lector a la creación de infraestructura IAM basada en OSS y da ejemplos de soluciones específicas, el valor principal del libro, en nuestra opinión, es sistematizar el campo y las clases de productos diseñados para resolver problemas en el campo de identificación, autenticación y gestión acceso, así como en una descripción accesible de estándares y tecnologías abiertos,reunidos en un solo lugar y dispuestos en estantes.

:

  • IAM OSS- .
  • Enterprise- .
  • Software- Solution- , , .
  • IAM .
  • - — , SAML OpenID Connect, , , .

A continuación consideramos los capítulos del libro y sus contenidos.

Capítulo 1. Dominio: IDM, IAM, IAG, DS. IAM y DS como punto de partida. OpenSource y un poco de Gluu

Este capítulo discute las funciones y tareas de un Identity and Access Control (Servicio de Identidad) a nivel empresarial y compara soluciones / componentes que implementan las funciones de dicho sistema: IDM (Identity Management), IAM (Identity and Access Management), IAG ( Gobierno de identidad y acceso), DS (Servicios de directorio). Se ofrece una breve descripción de los estándares y tecnologías disponibles en esta área. El capítulo es la base para la formación de una imagen holística.

En detalle
(Identity Service), enterprise- . « ». , . :

  • (Identity Management, IDM).
  • (Identity & Access Management, IAM)/
  • (Identity & Access Governance, IAG).
  • (Directory Services, DS).

(IDM) () . , , . IDM « » (Identity Lifecycle), — , , , .. IDM , , .

(IAM) « » . , IDM. IAM , , IAM . IDM IAM . , , (, IDM), (, IAM). , ( , ) , IAM IDM.

, , IAM. 90- , RADIUS. 90- PDP-PEP Pattern, Netegrity SiteMinder. 2000- SAML XACML, XML/SOAP- . OAuth-, RESTful/JSON-.

(IAG) , (IDM) (IAM). IAG , , . IAG «» - (, ) . « » - , IAG , , , (Segregation of Duties) .

, (Directory Services). - . , , , .

, . , IAG, IAM . , — « » ( IAM Directory Service , IDM IAG), « » ( , ).

: LDAP, SAML, OAuth, OpenID Connect (OIDC) User Managed Protocol (UMA). - Gluu Server, OSS : pen source , , pen source , «».

Capítulo 2. Curso de luchador joven en LDAP. LDAP para ayudar a IAM. El

Capítulo 2 del Showcase de datos proporciona un resumen muy voluminoso para un libro que no es LDAP que se puede cortar y leer por separado de todo el libro. Contiene un "curso de luchador joven" en LDAP para aquellos que no están interesados ​​en LDAP, pero necesitan comprender su estructura y mecanismos para resolver tareas relacionadas. En teoría y práctica, utilizando el desarrollo de una aplicación Python como ejemplo, describimos el concepto de un Data Mart para recopilar datos dispares sobre ultrasonido en un solo lugar. Poco se ha dicho acerca de conectar Gluu Server a un servidor LDAP como fuente de datos KM.

En detalle
, , LDAP, LDAP .

-10 LDAP :

  1. LDAP .
    : , — . — MS AD, LDAP-. MS AD .
  2. LDAP - .
    : , — .
  3. LDAP . / .
  4. LDAP- . .
  5. LDAP- (, ).
  6. .
  7. UNIX CLI-.
  8. .
  9. .
  10. LDAP !

, LDIF- LDAP-. LDAP. LDAP. LDAP-: CLI-, GUI:

  • UNIX-way: ldapserach, ldapmodify, ldapdelete.
  • , : Apache Directory Studio, JXplorer, Web2LDAP, phpLDAPAdmin, FusionDirectory.

(Data Mart) , ( ) . , / Microsoft Active Directory, - LDAP- (, FreeIPA 389Server ), , , ERP- ( , SAP), -. IAM « », ( ). — Python, , LDAP- LDIF-. Python- .

, — , «» Gluu Server LDAP, Gluu , .

Capítulo 3. SAML: excursiones, declaraciones, protocolos. Snibboleth IDP y Snibboleth SP. Python-SAML

Capítulo 3 está completamente dedicado a sondear SAML de manera integral. Se proporciona una descripción perceptible de la estructura de los elementos SAML: declaraciones, protocolos, perfiles y mucho más. Y para fines prácticos, se proporciona una descripción de varias formas de interactuar con el proveedor de identidad SAML, desde la implementación del proveedor de identidad Snibboleth hasta el uso de la biblioteca Python-SAML para esta tarea.

En detalle
SAML. 90-, - , . LDAP , (Single Sign-On, SSO), - - . WebSSO, SAML - SAML WebSSO . , SAML, 2005 , XML. SAML 2.0 (SAML 1.1, Libery Alliance ID-FF 1.2 Snibboleth 1.3). , SAML 2.0 («assertion», «relying party», «identity provider» ..), SSO IAM . , SAML.

( , SAML) SAML: Assertions (), Bindings ( ), Protocols () Profiles (). SAML . «» SAML, Service Provider Identity Provider. : , (Identity Provider-initiated, IDP-initiated) , (Service Provider-initiated, SP-initiated). (HTTP Redirect (GET), HTTP Post, Simple Sign, SAML SOAP, Reverse SOAP, HTTP Artifact, SAML URI). SAML: Web Browser SSO Profile, Single Logout Profile Attribute Profile.

, Gluu Server ( ). Snibboleth Identity Provider, Gluu Server. Identity Provider Service Provider, Service Provider Snibboleth Service Provider.

Python: Python-SAML SAML , SAML .

Capítulo 4. OAuth: no es un protocolo, sino un marco. Excursión. Ejemplo con API de Google. Ejemplo de Gluu Server Se explica

el lugar de OAuth en el "mundo" de los protocolos de autenticación y autorización. Se explica la estructura de OAuth como marco de autorización: roles de los participantes en las interacciones de OAuth (Servidor de Autorización, Servidor de Recursos, Cliente), tokens (Portador y JWT), escenarios de interacción (las llamadas "subvenciones"). Un ejemplo práctico de autorización en la API de Google con OAuth. Y un ejemplo práctico de configuración de OAuth en Gluu Server.

En detalle
, OAuth. : OAuth ( ), ( «» ). OAuth . SAML , OAuth ( OIDC) «» (consumer) .

OAuth-: (Authorization Server), (Resource Server), (Client). , , , : Bearer Token, JWT (JSON Web Token). OAuth, «grants» ( , OAuth - Resource Server): Authorization Code Grant, Implicit Grant, Resource Owner Password Credential Grant, Client Credential Grant, Token Introspection.

Google API OAuth-: API OAuth. - Client Grant Flow Gluu Server.

OAuth 5, 6 8. 5 OAuth — OIDC, -. 8 UMA, OAuth API (API access management). 6 - OAuth API.

Capítulo 5. OpenID Connect. Teoría: estructura, terminología. Implementar el proveedor OIDC de Gluu Server

explica el historial y la ubicación de OpenID Connect. Comparación con SAML. Estructura, actores, escenarios de interacción en OpenID Connect. Implementación de un servidor OpenID Connect basado en Gluu Server. Implementar una aplicación cliente en JavaScript para implementar el cliente OpenID Connect.

En detalle
OpenID Connect ( OIDC , , Connect; OIDC) , «Federated Identity» Consumer Identity Provider (Consumer IdP) Facebook, Google Microsoft. - OAuth- IdP, OpenID Connect.

OIDC SAML ( 3); SAML OIDC. OIDC SAML, XML SOAP, «» JSON RESTful -. — SAML ( - ), OIDC — «» , .

, OIDC. OIDC, 5 — .

Gluu Server OpenID Connect Provider. JavaScript Gluu Server OpenID Connect Provider.

Capítulo 6. Proxy: proxy web para IAM. Apache httpd, Nginx, Kong,

proxy web Istio Destination. Soluciones de código abierto: Apache httpd, Nginx, Kong, Istio.

En detalle
-. IAM — -.

( IAM ):

  • - , .
  • .
  • .
  • .
  • .
  • Amazon Web Services.

- -: Apache httpd, Nginx, Kong Istio. .

Capítulo 7. Autenticación fuerte. TOTP / HOTP. SSL / TLS. FIDO UAF / U2F. Autenticación web, problemas de autenticación de

contraseña de CTAP . Tecnología de autenticación de contraseña única TOTP / HOTP. Autenticación de certificado en SSL / TLS mutuo. FIDO Technologies UAF y U2F, Autenticación web W3C, CTAP. Soporte FIDO en Gluu Server.

En detalle
«» .

OTP (TOTP HOTP), . OTP — . OTP- OTP- (Google Authenticator ).

SSL TLS (Mutual SSL/TLS). SSL/TLS ( Certificate Authority, CA), . — ( CA) . , . Mutual SSL/TLS , , .

Fast Identity Online (FIDO) FIDO Alliance, : Universal Authentication Framework (UAF) Universal Second Factor (U2F). FIDO UAF (passwordless) . FIDO U2F (2FA), . , FIDO, — , . FIDO . FIDO , , , -, .

W3C Web Authentication API, FIDO Alliance, FIDO, . , (Signature, Key Attestation), , (W3C Web Authentication API), (Client to Authenticator Protocol, CTAP).

Gluu Server. FIDO Gluu Server. 2FA/MFA -.

Capítulo 8. Perfil de acceso administrado por el usuario (UMA). Subvención UMA / Autorización Federada. Gluu Server,

se considera el protocolo de autorización Gluu Gateway UMA 2.0 que extiende OAuth 2.0. Casos prácticos Revisión teórica de la beca UMA. Descripción general de la autorización federada de UMA. Implementación del Servidor de Autorización UMA basado en Gluu Server. Use Gluu Gateway para conectar aplicaciones cliente a UMA.

En detalle
, (User-Managed Access Protocol, UMA 2.0). , . , OIDC, OAuth 2.0, 4. «Alice to Bob Sharing». , UMA, , UMA. UMA «UMA 2.0 Grant for OAuth 2.0 Authorization». ( UMA Resource Server UMA Authorization Server) «Federated Authorization for UMA 2.0».

UMA , - -. , (federated document sharing), Google Docs. — . «» , .

UMA (narrow, medium, wide), «» (Resource Owner (RO), Requesting Party(RqP), Permission Ticket ..). UMA Grant (UMA RPT Requests with Interactive Claims Gathering, UMA RPT Requests with a Pushed Claim Token), RPT Request Options (Client Credentials). UMA Federated Authorization, (authorization servers) (resource servers).

Gluu Server UMA Authorization Server scopes, , (interactive claims gathering workflows). UMA- (authorization server) UMA- (resource server), Gluu Gateway Gluu Federation. UMA 2.0.

Capítulo 9. IDM: descripción funcional. MidPoint, Syncope, Wren: IDM, Gluu Casa

Al desarrollar las ideas del Capítulo 1, consideramos las razones por las cuales IDM es importante para la organización. Una descripción funcional de los sistemas IDM de código abierto Evolveum MidPoint, Apache Syncope, Wren: IDM, Gluu Casa.

En detalle
, IAM, IDM IAM (. 1), , Identity Management. opensource-: Evolveum MidPoint, Apache Syncope, Wren:IDM Gluu Casa.

IDM , IDM «» , IAM IAG. IAM- , IDM-. «» .

MidPoint, Syncope Wren:IDM IDM: (approvals), (workflows), (synchronization connectors) (self-service password management). Gluu Casa (2FA; «» 7). , , IDM , .

Capítulo 10. Federación multipartidista. Topologías Roles Federación SAML / Federación OpenID. Estándares OTTO Federation, Trustmarks. Herramienta de gestión de la Federación Jaagger /

Asociación Fides de participantes que proporcionan acceso a una red de confianza (Federación multipartidista). El triángulo de confianza (Triángulo de confianza). Características LOA, LOP, LOC. Topologías: Federación de malla, Federación de proxy, Interfederation Trust. Actores de la Federación: Autoridad de Registro, Operador de la Federación, Entidad. Federación SAML de Tecnologías, Federación OpenID. Estándares OTTO Federation, Trustmarks. Herramienta de gestión de la Federación Jagger, OTTO-Node / Fides.

En detalle
, (Multiparty Federation). , , , , , .

« » (Trust Triangle, OpenID Connect) , «»:

  • (Person) (control) (, ).
  • (OpenID provider) , (protection) .
  • (Relying Party) (assurance), , , , .

:

  • (Level of assurance, LOA).
  • (Level of protection, LOP).
  • (Level of control, LOC).

. Identity Provider Service Provider « »:

  • (Meshed Federation), InCommon. eduGAIN.
  • (Proxy Federation Service). . Identity Provider, Service Provider, Identity Provider Service Provider. , , .
  • (Interfederation Trust). . InCommon eduGAIN, .

« », (NIST Special Publication 800-63C, NIST 800-63-C). (Federation Actors) Registration Authority (RA), Federation Operator (FO), Participant Entity .

SAML Federations OpenID Federations. SAML Federation Jagger Federation Management Tool. Open Trust Taxonomy for OAuth (OTTO) Federation, Trustmarks.

- OTTO-Node/Fides. «» (federation): - .

Resumen de la lectura del libro

El libro ofrece una visión general muy amplia de todos los que pueden interesar a un especialista que necesita construir una infraestructura segura de autorización y control de acceso en las realidades modernas. Es gracias a la cobertura compacta de temas tan complejos recopilados bajo una sola cubierta que el lector recibe alimento para pensar en la dosis necesaria para eso. El libro será útil tanto para aquellos que por primera vez necesitan comprender las ideas y tecnologías de este campo, como para aquellos que necesitan actualizar y actualizar sus conocimientos sobre este tema.

All Articles