Autorización en OAM y IdP
En este artículo, vamos a aprender a activar e implantar políticas de autorización para SSO de federación cuando OAM actúa como IdP. Cuando OAM autentica a un usuario en nombre de socios SAML/OpenID 2.0 remotos, emite un token (SAML o OpenID) que contiene información sobre el usuario que el partner consume para identificar al usuario. Como parte de la creación del token, IdP se puede configurar para evaluar una política de emisión de token que indica si el usuario tiene permiso para realizar SSO de federación con ese SP/RP concreto. La política de emisión de tokens se crea con:
- Nombre de socio de SP como recurso
- Una o más restricciones
- Restricción verdadera que se utiliza para indicar que IdP debe emitir tokens para todos los usuarios para los partners de SP que se muestran en la política
- Restricción de identidad hecha de
- Lista de usuarios: IdP garantiza que el usuario que realiza SSO de federación entre OAM y el SP remoto pertenece a dicha lista
- O lista de grupos: IdP garantiza que el usuario que realiza SSO de federación entre OAM y el SP remoto pertenece a un grupo mostrado en la restricción
Activación/desactivación de la autorización en IdP
Inicialmente, la autorización está desactivada en IdP. Como tal, no hay aplicación de autorización cuando OAM emite un token SAML/OpenID.
Nota: Una vez activada la autorización, todas las operaciones de SSO de federación IdP necesitan una evaluación correcta de la política de autorización. Por lo tanto, si tiene acuerdos de federación existentes, ninguna política de emisión de token y activa la autorización, la operación SSO de federación falla hasta que se crean las políticas de emisión de token necesarias.
Para activar o desactivar la autorización en IdP, ejecute los siguientes comandos WLST de OAM:
- Introduzca el entorno WLST ejecutando:
$IAM_ORACLE_HOME/common/bin/wlst.sh
- Conéctese al servidor de administración de WLS:
connect()
- Navegue a la rama Domain Runtime:
domainRuntime()
- Ejecute el comando
configureFedSSOAuthz()
: - Para activar la autorización:
configureFedSSOAuthz("true")
- Para desactivar la autorización:
configureFedSSOAuthz("false")
- Salga del entorno WLST:
exit()
Política de emisión de tokens
Visión general
Como se ha mencionado anteriormente, una política de emisión de token está formada por dos objetos:
- Una lista de recursos, con cada recurso que contiene el nombre del socio de SP
- Una lista de restricciones, siendo cada restricción una de las siguientes:
- Restricción verdadera que se utiliza para indicar que IdP debe emitir tokens para todos los usuarios para los partners de SP que se muestran en la política
- Restricción de identidad hecha de
- Lista de usuarios: IdP garantiza que el usuario que realiza SSO de federación entre OAM y el SP remoto pertenece a dicha lista
- O lista de grupos: IdP garantiza que el usuario que realiza SSO de federación entre OAM y el SP remoto pertenece a un grupo mostrado en la restricción
- Reglas que utilizan las restricciones
Durante una operación de SSO de federación, tras la autenticación del usuario, IdP comprueba si la autorización está activada y, en caso afirmativo, recopila la identidad del usuario y los grupos a los que pertenece, el nombre del partner de SP y llama al motor de autorización de OAM que indica si la evaluación se ha realizado correctamente o no.
- Si tiene éxito, significa que
- El nombre del socio de SP se ha enumerado como recurso en uno en la política de emisión de token
- Evaluación de las restricciones de una de las políticas de emisión de tokens en las que se muestra el partner de SP
- Existe una restricción verdadera
- O bien, había una restricción de identidad con la identidad del usuario
- O bien con un grupo al que pertenece el usuario
En los ejemplos que se muestran en este artículo, agregue todas las políticas de emisión de token a los dominios de aplicación de IAM Suite en la consola de administración de OAM.
Entorno de Prueba
El entorno de prueba muestra el uso de la función Autorización mediante ejemplos con:
- Tres usuarios en el directorio LDAP utilizado por IdP (consulte a continuación la salida de LDIF)
- Alicia
- bovina
- Charlie
- Tres grupos en el directorio LDAP
- Ingenieros a los que pertenecen bob y charlie
- Mánager, al que pertenece la alicia
- Empleados, a los que pertenecen alicia, bob y charlie
- Cuatro partners de SP:
- OnlineConference.com (Fin de creación)
- HR
- TravelSite y
- 401kSP
- Tres políticas de autorización
- Authz #1: solo los usuarios del grupo Empleados menos bob pueden acceder a 401kSP
- Authz #2: solo los usuarios de los gestores de grupos y la charlie de usuario pueden acceder a RR. HH.
- Authz #3: cualquiera puede acceder a TravelSite y OnlineConference.com
La salida LDIF del directorio LDAP de prueba para los tres usuarios es:
\# alice, users, us.oracle.com
dn: cn=alice,ou=users,dc=us,dc=oracle,dc=com
objectClass: person
objectClass: inetOrgPerson
objectClass: organizationalPerson
objectClass: top
givenName: Alice
uid: alice
cn: alice
sn: Appleton
mail: alice@oracle.com
\# bob, users, us.oracle.com
dn: cn=bob,ou=users,dc=us,dc=oracle,dc=com
objectClass: person
objectClass: inetOrgPerson
objectClass: organizationalPerson
objectClass: top
givenName: Bobby
uid: bob
cn: bob
sn: Smith
mail: bob@oracle.com
\# charlie, users, us.oracle.com
dn: cn=charlie,ou=users,dc=us,dc=oracle,dc=com
objectClass: person
objectClass: inetOrgPerson
objectClass: organizationalPerson
objectClass: top
givenName: Charlie
uid: charlie
cn: Charlie
sn: Crown
mail: charlie@oracle.com
La salida LDIF del directorio LDAP de prueba para los tres grupos es:
\# Managers, groups, us.oracle.com
dn: cn=Managers,ou=groups,dc=us,dc=oracle,dc=com uniqueMember:
cn=alice,ou=users,dc=us,dc=oracle,dc=com
cn: Managers
objectClass: groupOfUniqueNames
objectClass: top
\# Employees, groups, us.oracle.com
dn: cn=Employees,ou=groups,dc=us,dc=oracle,dc=com
uniqueMember:
cn=charlie,ou=users,dc=us,dc=oracle,dc=com
uniqueMember:
cn=alice,ou=users,dc=us,dc=oracle,dc=com
uniqueMember:
cn=bob,ou=users,dc=us,dc=oracle,dc=com
cn: Employees
objectClass: groupOfUniqueNames
objectClass: top
\# Engineers, groups, us.oracle.com
dn: cn=Engineers,ou=groups,dc=us,dc=oracle,dc=com
uniqueMember: cn=bob,ou=users,dc=us,dc=oracle,dc=com
uniqueMember: cn=charlie,ou=users,dc=us,dc=oracle,dc=com
cn: Engineers
objectClass: groupOfUniqueNames
objectClass: top
Ejemplos
Caso de uso no 1
En este caso de uso:
- 401kSP es el nombre del partner de SP de SAML 2.0
- IdP debe permitir a los usuarios que pertenecen al grupo de empleados realizar SSO de federación con ese partner de SP
- IdP no debe permitir que bob realice SSO de federación con ese partner de SP
Para configurar IdP para este caso de uso, realice los siguientes pasos:
-
Vaya a la consola de administración de OAM:
http(s)://oam-admin-host:oam-adminport/oamconsole
-
Vaya a Access Manager, Application Domains.
-
Haga clic en Buscar
-
Haga clic en IAM Suite en la lista de resultados y haga clic en el separador Políticas de emisión de token.
-
Haga clic en Crear Política de Emisión del Token.
-
Introduzca un nombre (por ejemplo, EmployeesPolicy)
Descripción de la ilustración Token_Issuance_Policy_Screen.jpg
Realice los siguientes pasos:
- Haga clic en el separador condiciones
- Haga clic en Add para agregar una restricción para el grupo employees.
- Introduzca los detalles de las restricciones:
Name
: por ejemplo,EmployeesGroup
Type
: identidad del solicitante del token
Descripción de la ilustración Add_Conditions_Screen.jpg
Realice los siguientes pasos:
-
Haga clic en Agregar selección
-
Seleccione la restricción recién creada para configurarla
-
En los detalles de las condiciones, haga clic en Agregar y seleccione Agregar identidades.
-
Seleccione el almacén de identidades en el que existe el usuario y haga clic en Buscar.
-
Seleccione el grupo de empleados.
-
Haga clic en Agregar selección
Descripción de la ilustración Create_Token_Issuance_policy_Screen.jpg
Realice los siguientes pasos:
- Haga clic en Agregar para agregar otra restricción para el usuario bob
- Introduzca los detalles de las restricciones:
Name
: por ejemplo, BobUserType
: identidad del solicitante del token
Descripción de la ilustración Add_Condition_Bob.jpg
Realice los siguientes pasos:
-
Haga clic en Agregar selección
-
Seleccione la restricción recién creada para configurarla
-
En los detalles de las condiciones, haga clic en Agregar y seleccione Agregar identidades.
-
Seleccione el almacén de identidades en el que existe el usuario y haga clic en Buscar.
-
Seleccione el usuario bob
-
Haga clic en Agregar selección
Realice los siguientes pasos:
-
Haga clic en el separador Reglas.
-
En la sección Permitir regla, seleccione la condición
EmployeesGroup
y agréguela a las condiciones seleccionadas, ya que queremos permitir a los usuarios que pertenecen al grupo Empleados realizar la SSO de federación con los partners que se muestran en esta política. -
En la sección Deny Rule, seleccione la condición
BobUser
y agréguela a Selected Conditions, ya que deseamos no permitir que bob realice SSO de federación con los partners que se muestran en esta política. -
Haga clic en Aplicar.
Ejecute los siguientes pasos para crear un nuevo recurso y agregarlo a la política de emisión de token EmployeesPolicy:
- Vaya a la consola de administración de OAM:
http(s)://oam-admin-host:oam-adminport/oamconsole
- Vaya a Access Manager , Application Domains
- Haga clic en Buscar
- Haga clic en IAM Suite en la lista de resultados. Haga clic en el separador Recursos.
- Haga clic en Nuevo recurso y cree un nuevo recurso para la política de emisión de token:
Type
: TokenServiceRPResource URL
, nombre del partner de SP creado en la sección Administración de Federación: 401kSPOperations
: todoToken Issuance Policy
: EmployeesPolicy
-
Haga clic en Aplicar.
Caso de uso no 2
En este caso de uso:
- RR. HH. es el nombre del partner de SP de SAML 2.0
- IdP debe permitir a los usuarios que pertenecen al grupo de gestores realizar SSO de federación con ese partner de SP
- IdP debe permitir que charlie realice SSO de federación con ese partner de SP
Para configurar IdP para este caso de uso, realice los siguientes pasos:
- Vaya a la consola de administración de OAM:
http(s)://oam-admin-host:oam-adminport/oamconsole
- Vaya a Access Manager , Application Domains
- Haga clic en Buscar
- Haga clic en IAM Suite en la lista de resultados y haga clic en el separador Políticas de emisión de token.
- Haga clic en Crear Política de Emisión del Token.
- Introduzca un nombre (por ejemplo,
HRPolicy
) - Haga clic en el separador condiciones
- Haga clic en Agregar para agregar una restricción para el grupo de empleados.
- Introduzca los detalles de las restricciones:
Name
: por ejemplo, HRConditionType
: identidad del solicitante del token
-
Haga clic en Agregar selección
-
Seleccione la restricción recién creada para configurarla
-
En los detalles de las condiciones, haga clic en Agregar y seleccione Agregar identidades.
-
Seleccione el almacén de identidades en el que existe el usuario y haga clic en Buscar.
-
Seleccione el grupo de gestores y el usuario
charlie
haga clic en Agregar selección.
Realice los siguientes pasos:
-
Haga clic en el separador Reglas.
-
En la sección Permitir regla, seleccione la condición
HRCondition
y agréguela a las condiciones seleccionadas, ya que queremos permitir a los usuarios que pertenecen al grupo Mánager y al usuario realizar la SSO de federación con los partners que se muestran en esta política. -
Haga clic en Aplicar.
Ejecute los siguientes pasos para crear un nuevo recurso y agregarlo a la política de emisión de token HRPolicy:
- Vaya a la consola de administración de OAM:
http(s)://oam-admin-host:oam-adminport/oamconsole
- Vaya a Access Manager , Application Domains
- Haga clic en Buscar
- Haga clic en IAM Suite en la lista de resultados y haga clic en el separador Recursos.
- Haga clic en Nuevo recurso y cree un nuevo recurso para la política de emisión de token:
Type
: TokenServiceRPResource URL
, nombre del partner de SP tal y como se creó en la sección Administración de Federación: HROperations
: todoToken Issuance Policy
: HRPolicy
- Haga clic en Aplicar.
Caso de uso n.o 3
En este caso de uso:
- TravelSite es el nombre del primer partner de SP de SAML 2.0
- OnlineConference.com es el nombre del segundo partner de SP de SAML 2.0
- IdP debe permitir a todos los usuarios realizar SSO de federación con esos partners de SP
Para configurar IdP para este caso de uso, realice los siguientes pasos:
- Vaya a la consola de administración de OAM:
http(s)://oam-admin-host:oam-adminport/oamconsole
- Vaya a Access Manager , Application Domains
- Haga clic en Buscar
- Haga clic en IAM Suite en la lista de resultados y haga clic en el separador Políticas de emisión de token.
- Haga clic en Crear Política de Emisión del Token.
- Introduzca un nombre (por ejemplo,
AllUsersPolicy
) - Haga clic en el separador condiciones
- Haga clic en Add para agregar una restricción para todos los usuarios.
- Introduzca los detalles de las restricciones:
Name
: por ejemplo, TrueConditionType
: verdadero
Descripción de la ilustración TrueCondition_Screen.jpg
-
Haga clic en Agregar selección
Descripción de la ilustración TrueCondition_Added_Screen.jpg
Realice los siguientes pasos:
-
Haga clic en el separador Reglas.
-
En la sección Permitir regla, seleccione la condición
TrueCondition
y agréguela a las Condiciones seleccionadas, ya que queremos permitir que todos los usuarios realicen SSO de federación con los partners que se muestran en esta política. -
Haga clic en Aplicar.
Descripción de la ilustración Rules_TrueCondition_Screen.jpg
Ejecute los siguientes pasos para crear un nuevo recurso y agregarlo a la política de emisión de tokens HRPolicy
para los partners TravelSite
y OnlineConference.com:
- Vaya a la consola de administración de OAM:
http(s)://oam-admin-host:oam-adminport/oamconsole
- Vaya a Access Manager , Application Domains
- Haga clic en Buscar
- Haga clic en IAM Suite en la lista de resultados y haga clic en el separador Recursos.
- Haga clic en Nuevo recurso y cree un nuevo recurso para la política de emisión de token para
TravelSite
: Type
: TokenServiceRPResource URL
, nombre del partner de SP creado en la sección Administración de Federación: TravelSiteOperations
: todoToken Issuance Policy
: AllUsersPolicy Aplicar- Haga clic en Nuevo recurso y cree un nuevo recurso para la política de emisión de token para
OnlineConference.com
: Type
: TokenServiceRPResource UR
L, nombre del partner de SP creado en la sección Administración de Federación:OnlineConference.com
Operations
: todoToken Issuance Policy
: AllUsersPolicy- Haga clic en Aplicar.
Resumen
Para ver los recursos para los socios de SP creados anteriormente, realice los siguientes pasos:
-
Vaya a la consola de administración de OAM:
http(s)://oam-admin-host:oam-adminport/oamconsole
-
Vaya a Access Manager , Application Domains
-
Haga clic en Buscar
-
Haga clic en IAM Suite en la lista de resultados y haga clic en el separador Recursos.
-
Seleccione
TokenServiceRP
como tipo de recurso. Haga clic en Buscar. Se mostrará la lista de recursos de tipoTokenServiceRP
MissingRP
yUnknownRP
están relacionados con las políticas de autorización de OSTS- Se muestran
HR
,TravelSite
,OnlineConference.com
y401kSP
Más recursos de aprendizaje
Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de aprendizaje gratuito en el canal YouTube de Oracle Learning. Además, visite education.oracle.com/learning-explorer para convertirse en un explorador de Oracle Learning.
Para obtener documentación sobre el producto, visite Oracle Help Center.
Authorization in OAM and IdP
F59887-01
September 2022
Copyright © 2022, Oracle and/or its affiliates.