Configurando Métodos de Autenticação Fed no OAM e IdP
Este artigo fornece exemplos de como configurar IdP para mapear Esquemas de Autenticação do OAM para Métodos de Autenticação de Federação. Este artigo também mostra exemplos dos três protocolos suportados pelo OAM:
- SAML 2.0 SSO
- SAML 1.1 SSO
- OpenID 2.0
Configuração
O mapeamento de Métodos de Autenticação de Federação para Esquemas de Autenticação do OAM depende do protocolo, uma vez que os métodos são definidos nos diversos protocolos (SAML 2.0, SAML 1.1, OpenID 2.0).
Os comandos WLST para definir esses mapeamentos envolvem:
- O Perfil do Parceiro SP e afeta todos os Parceiros que fazem referência a esse perfil, que não substituem o Método de Autenticação da Federação para mapeamentos do Esquema de Autenticação do OAM
- Ou a entrada Parceiro do Ponto de Serviço, que afeta apenas o Parceiro do Ponto de Serviço
É importante observar que, se um Parceiro SP estiver configurado para definir um ou mais mapeamentos do Método de Autenticação da Federação para o Esquema de Autenticação do OAM, todos os mapeamentos definidos no Perfil do Parceiro SP serão ignorados.
Comandos WLST
Os dois comandos do OAM WLST que podem ser usados para definir o mapeamento de Métodos de Autenticação de Federação para Esquemas de Autenticação do OAM são:
addSPPartnerProfileAuthnMethod()
para definir um mapeamento em um Perfil do Parceiro SP, tomando como parâmetros:- O nome do Perfil do Parceiro SP
- O Método de Autenticação da Federação
- O nome do Esquema de Autenticação do OAM
addSPPartnerAuthnMethod()
para definir um mapeamento em um Parceiro SP, tomando como parâmetros:- O nome do Parceiro SP
- O Método de Autenticação da Federação
- O nome do Esquema de Autenticação do OAM
as próximas seções mostram alguns exemplos de oF sobre como usar esses métodos:
- Para SAML 2.0, configure o Perfil do Parceiro SP, que aplica todos os mapeamentos aos Parceiros SP que fazem referência a esse perfil, a menos que eles substituam a definição de mapeamento
- Para SAML 1.1, configure o Parceiro SP.
- Para OpenID 2.0, configure o Parceiro SP/RP
SAML 2.0
Configuração do Teste
Nesta configuração, o OAM está atuando como IdP e é integrado a um parceiro SP SAML 2.0 remoto identificado por AcmeSP. Neste teste, execute o SSO de Federação com IdP configurado para:
- Usar
LDAPScheme
como o Esquema de Autenticação - Usar
BasicScheme
como o Esquema de Autenticação - Mapeie
BasicSessionScheme
para ourn:oasis:names:tc:SAML:2.0:ac:classes:Password Federation Authentication Method
- Usar
OAMLDAPPluginAuthnScheme
como o Esquema de Autenticação - Mapeie
OAMLDAPPluginAuthnScheme
para ourn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport Federation Authentication Method
LDAPScheme como Esquema de Autenticação
Usando as definições do OOTB referentes à autenticação do usuário no OAM, o usuário é desafiado por meio de uma página de log-in baseada no FORM baseada no LDAPScheme
. Além disso, a configuração padrão de mapeamentos do Método de Autenticação da Federação mapeia apenas urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport
para LDAPScheme
(também marcado como esquema padrão usado para autenticação), FAAuthScheme
, BasicScheme
e BasicFAScheme
. Após a autenticação via FORM, IdP emite uma Asserção semelhante a
<samlp:Response ...>
<saml:Issuer ...>https://idp.com/oam/fed</saml:Issuer>
<samlp:Status>
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/>
</samlp:Status>
<saml:Assertion ...>
<saml:Issuer ...>https://idp.com/oam/fed</saml:Issuer>
<dsig:Signature>
...
</dsig:Signature>
<saml:Subject>
<saml:NameID ...>bob@oracle.com</saml:NameID>
<saml:SubjectCon<rmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
<saml:SubjectCon<rmationData .../>
</saml:SubjectCon<rmation>
</saml:Subject>
<saml:Conditions ...>
<saml:AudienceRestriction>
<saml:Audience>https://acme.com/sp</saml:Audience>
</saml:AudienceRestriction>
</saml:Conditions>
<saml:AuthnStatement AuthnInstant="2014-03-21T20:53:55Z" SessionIndex="id6i-Dm0yB-HekG6cejktwcKIFMzYE8Yrmqwfd0azz"
SessionNotOnOrAfter="2014-03-21T21:53:55Z">
<saml:AuthnContext>
<saml:AuthnContextClassRef>
urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport
</saml:AuthnContextClassRef>
</saml:AuthnContext>
</saml:AuthnStatement>
</saml:Assertion>
</samlp:Response>
BasicScheme como Esquema de Autenticação
Para este teste, alterne o Esquema de Autenticação padrão para o Perfil do Parceiro SP para BasicScheme
em vez de LDAPScheme
. Use o comando WLST setSPPartnerProfileDefaultScheme()
do OAM e especifique qual esquema será usado como padrão para o Perfil do Parceiro SP referenciado por AcmeSP
(que é saml20-sppartner-profile nesse caso: getFedPartnerProfile("AcmeSP", "sp")
):
- Informe o ambiente WLST executando:
$IAM_ORACLE_HOME/common/bin/wlst.sh
- Conecte-se ao servidor de Administração WLS:
connect()
- Navegue até a ramificação Runtime do Domínio:
domainRuntime()
- Execute o comando
setSPPartnerProfileDefaultScheme()
:setSPPartnerProfileDefaultScheme("saml20-sp-partner-profile", "BasicScheme")
- Saia do ambiente WLST:
exit()
O usuário é desafiado por meio da Autenticação Básica HTTP definida no BasicScheme
para AcmeSP
. Além disso, conforme observado anteriormente, a configuração padrão de mapeamentos do Método de Autenticação da Federação mapeia apenas urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport
para LDAPScheme
(também marcado como o esquema padrão usado para autenticação), FAAuthScheme
, BasicScheme
e BasicFAScheme
. Após a autenticação por meio da Autenticação Básica HTTP, IdP emite uma Asserção semelhante a:
<samlp:Response ...>
<saml:Issuer ...>https://idp.com/oam/fed</saml:Issuer>
<samlp:Status>
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/>
</samlp:Status>
<saml:Assertion ...>
<saml:Issuer ...>https://idp.com/oam/fed</saml:Issuer>
<dsig:Signature>
...
</dsig:Signature>
<saml:Subject>
<saml:NameID ...>bob@oracle.com</saml:NameID>
<saml:SubjectCon<rmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
<saml:SubjectCon<rmationData .../>
</saml:SubjectCon<rmation>
</saml:Subject>
<saml:Conditions ...>
<saml:AudienceRestriction>
<saml:Audience>https://acme.com/sp</saml:Audience>
</saml:AudienceRestriction>
</saml:Conditions>
<saml:AuthnStatement AuthnInstant="2014-03-21T20:53:55Z" SessionIndex="id6i-Dm0yB-HekG6cejktwcKIFMzYE8Yrmqwfd0azz"
SessionNotOnOrAfter="2014-03-21T21:53:55Z">
<saml:AuthnContext>
<saml:AuthnContextClassRef>
urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport
</saml:AuthnContextClassRef>
</saml:AuthnContext>
</saml:AuthnStatement> </saml:Assertion> </samlp:Response>
Mapeando BasicScheme
Para alterar o mapeamento do Método de Autenticação da Federação para BasicScheme
para urn:oasis:names:tc:SAML:2.0:ac:classes:Password
em vez de urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport
para o Perfil do Parceiro SP saml20sp-partner-profile SAML 2.0 (o perfil ao qual meu Parceiro AcmeSP
está vinculado), execute o método addSPPartnerProfileAuthnMethod()
:
- Informe o ambiente WLST executando:
$IAM_ORACLE_HOME/common/bin/wlst.sh
- Conecte-se ao servidor de Administração WLS:
connect()
- Navegue até a ramificação Runtime do Domínio:
domainRuntime()
- Execute o comando
addSPPartnerProfileAuthnMethod()
:addSPPartnerProfileAuthnMethod("saml20-sp-partner-profile", "urn:oasis:names:tc:SAML:2.0:ac:classes:Password", "BasicScheme")
- Saia do ambiente WLST:
exit()
Após a autenticação por meio da Autenticação Básica HTTP, IdP emite uma Asserção semelhante a (consulte que AuthnContextClassRef
foi alterado de PasswordProtectedTransport
para Senha):
<samlp:Response ...>
<saml:Issuer ...>https://idp.com/oam/fed</saml:Issuer>
<samlp:Status>
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/>
</samlp:Status>
<saml:Assertion ...>
<saml:Issuer ...>https://idp.com/oam/fed</saml:Issuer>
<dsig:Signature>
...
</dsig:Signature>
<saml:Subject>
<saml:NameID ...>bob@oracle.com</saml:NameID>
<saml:SubjectCon<rmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
<saml:SubjectCon<rmationData .../>
</saml:SubjectCon<rmation>
</saml:Subject>
<saml:Conditions ...>
<saml:AudienceRestriction>
<saml:Audience>https://acme.com/sp</saml:Audience>
</saml:AudienceRestriction>
</saml:Conditions>
<saml:AuthnStatement AuthnInstant="2014-03-21T20:53:55Z" SessionIndex="id6i-Dm0yB-HekG6cejktwcKIFMzYE8Yrmqwfd0azz"
SessionNotOnOrAfter="2014-03-21T21:53:55Z"> <saml:AuthnContext>
<saml:AuthnContextClassRef>
urn:oasis:names:tc:SAML:2.0:ac:classes: Password
</saml:AuthnContextClassRef>
</saml:AuthnContext>
</saml:AuthnStatement>
</saml:Assertion> </samlp:Response>
OAMLDAPPluginAuthnScheme como Esquema de Autenticação
Para este teste, alterne o Esquema de Autenticação padrão para o Perfil do Parceiro SP para OAMLDAPPluginAuthnScheme
em vez de BasicScheme
. Use o comando WLST setSPPartnerProfileDefaultScheme()
do OAM e especifique qual esquema será usado como padrão para o Perfil do Parceiro SP referenciado por AcmeSP
(que é saml20-sppartner-profile nesse caso: getFedPartnerProfile("AcmeSP", "sp")
):
- Informe o ambiente WLST executando:
$IAM_ORACLE_HOME/common/bin/wlst.sh
- Conecte-se ao servidor de Administração WLS:
connect()
- Navegue até a ramificação Runtime do Domínio:
domainRuntime()
- Execute o comando
setSPPartnerProfileDefaultScheme()
:setSPPartnerProfileDefaultScheme("saml20-sp-partner-profile", "OAMLDAPPluginAuthnScheme")
- Saia do ambiente WLST:
exit()
O usuário é desafiado por meio do FORM definido no OAMLDAPPluginAuthnScheme
para AcmeSP
.
Contrariamente a LDAPScheme
e BasicScheme
, o OAMLDAPPluginAuthnScheme
não é mapeado por padrão para nenhum Método de Autenticação de Federação. IdP não conseguirá localizar um Método de Autenticação de Federação e definir o método na Asserção SAML para o nome do Esquema de Autenticação do OAM. Após a autenticação via FORM, IdP emite uma Asserção semelhante a (consulte AuthnContextClassRef
definido como OAMLDAPPluginAuthnScheme
):
<samlp:Response ...>
<saml:Issuer ...>https://idp.com/oam/fed</saml:Issuer>
<samlp:Status>
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/>
</samlp:Status>
<saml:Assertion ...>
<saml:Issuer ...>https://idp.com/oam/fed</saml:Issuer>
<dsig:Signature>
...
</dsig:Signature>
<saml:Subject>
<saml:NameID ...>bob@oracle.com</saml:NameID>
<saml:SubjectCon<rmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
<saml:SubjectCon<rmationData .../>
</saml:SubjectCon<rmation>
</saml:Subject>
<saml:Conditions ...>
<saml:AudienceRestriction>
<saml:Audience>https://acme.com/sp</saml:Audience>
</saml:AudienceRestriction>
</saml:Conditions>
<saml:AuthnStatement AuthnInstant="2014-03-21T20:53:55Z" SessionIndex="id6i-Dm0yB-HekG6cejktwcKIFMzYE8Yrmqwfd0azz"
SessionNotOnOrAfter="2014-03-21T21:53:55Z">
<saml:AuthnContext>
<saml:AuthnContextClassRef>
OAMLDAPPluginAuthnScheme
</saml:AuthnContextClassRef>
</saml:AuthnContext>
</saml:AuthnStatement>
</saml:Assertion>
</samlp:Response>
Mapeando OAMLDAPPluginAuthnScheme
Para adicionar o OAMLDAPPluginAuthnScheme
ao mapeamento urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport
do Método de Autenticação da Federação, execute o método addSPPartnerProfileAuthnMethod()
:
- Informe o ambiente WLST executando:
$IAM_ORACLE_HOME/common/bin/wlst.sh
- Conecte-se ao servidor de Administração WLS:
connect()
- Navegue até a ramificação Runtime do Domínio:
domainRuntime()
- Execute o comando
addSPPartnerProfileAuthnMethod()
:addSPPartnerProfileAuthnMethod("saml20-sp-partner-profile", "urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport", "OAMLDAPPluginAuthnScheme")
- Saia do ambiente WLST:
exit()
Após a autenticação via FORM, IdP agora emite uma Asserção semelhante a (consulte que o método foi alterado de OAMLDAPPluginAuthnScheme
para PasswordProtectedTransport
):
<samlp:Response ...>
<saml:Issuer ...>https://idp.com/oam/fed</saml:Issuer>
<samlp:Status>
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/>
</samlp:Status>
<saml:Assertion ...>
<saml:Issuer ...>https://idp.com/oam/fed</saml:Issuer>
<dsig:Signature>
...
</dsig:Signature>
<saml:Subject>
<saml:NameID ...>bob@oracle.com</saml:NameID>
<saml:SubjectCon<rmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
<saml:SubjectCon<rmationData .../>
</saml:SubjectCon<rmation>
</saml:Subject>
<saml:Conditions ...>
<saml:AudienceRestriction>
<saml:Audience>https://acme.com/sp</saml:Audience>
</saml:AudienceRestriction>
</saml:Conditions>
<saml:AuthnStatement AuthnInstant="2014-03-21T20:53:55Z" SessionIndex="id6i-Dm0yB-HekG6cejktwcKIFMzYE8Yrmqwfd0azz"
SessionNotOnOrAfter="2014-03-21T21:53:55Z">
<saml:AuthnContext>
<saml:AuthnContextClassRef>
urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport
</saml:AuthnContextClassRef>
</saml:AuthnContext>
</saml:AuthnStatement> </saml:Assertion> </samlp:Response>
SAML 1.1
Configuração do Teste
Nesta configuração, o OAM está atuando como IdP e é integrado a um parceiro SP SAML 1.1 remoto identificado por AcmeSP
. Neste teste, execute o SSO de Federação com IdP configurado para:
- Usar
LDAPScheme
como o Esquema de Autenticação - Usar
OAMLDAPPluginAuthnScheme
como o Esquema de Autenticação - Mapear
OAMLDAPPluginAuthnScheme
para o Método de Autenticação da Federaçãourn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport
- Usar
LDAPScheme
como o Esquema de Autenticação - Mapear
LDAPScheme
para o Método de Autenticação da Federaçãourn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport
LDAPScheme como Esquema de Autenticação
Usando as definições do OOTB referentes à autenticação do usuário no OAM, o usuário é desafiado por meio de uma página de log-in baseada no FORM baseada no LDAPScheme
. Além disso, a configuração padrão de mapeamentos do Método de Autenticação da Federação mapeia apenas urn:oasis:names:tc:SAML:1.0:am:password
para LDAPScheme
(também marcado como esquema padrão usado para autenticação), FAAuthScheme
, BasicScheme
e BasicFAScheme
. Após a autenticação via FORM, IdP emite uma Asserção semelhante a
<samlp:Response ...>
<samlp:Status>
<samlp:StatusCode Value="samlp:Success"/> </samlp:Status>
<saml:Assertion Issuer="https://idp.com/oam/fed" ...>
<saml:Conditions ...>
<saml:AudienceRestriction>
<saml:Audience>https://acme.com/sp/ssov11</saml:Audience>
</saml:AudienceRestriction>
</saml:Conditions>
<saml:AuthnStatement AuthenticationInstant="2014-03-21T20:53:55Z"
AuthenticationMethod="urn:oasis:names:tc:SAML:1.0:am:password">
<saml:Subject>
<saml:NameIdenti<er ...>bob@oracle.com</saml:NameIdenti<er>
<saml:SubjectCon<rmation>
<saml:Con<rmationMethod>
urn:oasis:names:tc:SAML:1.0:cm:bearer
</saml:Con<rmationMethod>
</saml:SubjectCon<rmation>
</saml:Subject>
</saml:AuthnStatement>
<dsig:Signature>
...
</dsig:Signature>
</saml:Assertion> </samlp:Response>
OAMLDAPPluginAuthnScheme como Esquema de Autenticação
Para este teste, alterne o Esquema de Autenticação padrão do Parceiro SP para OAMLDAPPluginAuthnScheme
em vez de LDAPScheme
. Use o comando WLST setSPPartnerDefaultScheme()
do OAM e especifique qual esquema será usado como padrão para o Parceiro SP:
- Informe o ambiente WLST executando:
$IAM_ORACLE_HOME/common/bin/wlst.sh
- Conecte-se ao servidor de Administração WLS:
connect()
- Navegue até a ramificação Runtime do Domínio:
domainRuntime()
- Execute o comando
setSPPartnerDefaultScheme()
:setSPPartnerDefaultScheme("AcmeSP", "OAMLDAPPluginAuthnScheme")
- Saia do ambiente WLST:
exit()
O usuário é desafiado por meio do FORM definido no OAMLDAPPluginAuthnScheme
para AcmeSP.
Contrariamente ao LDAPScheme
, o OAMLDAPPluginAuthnScheme
não é mapeado por padrão para nenhum Método de Autenticação de Federação (no Perfil do Parceiro SP). IdP não conseguirá localizar um Método de Autenticação de Federação e definir o método na Asserção SAML para o nome do Esquema de Autenticação do OAM. Após a autenticação via FORM, IdP emite uma Asserção semelhante a (consulte AuthenticationMethod
definido como OAMLDAPPluginAuthnScheme
)
<samlp:Response ...>
<samlp:Status>
<samlp:StatusCode Value="samlp:Success"/>
</samlp:Status>
<saml:Assertion Issuer="https://idp.com/oam/fed" ...>
<saml:Conditions ...>
<saml:AudienceRestriction>
<saml:Audience>https://acme.com/sp/ssov11</saml:Audience>
</saml:AudienceRestriction>
</saml:Conditions>
<saml:AuthnStatement AuthenticationInstant="2014-03-21T20:53:55Z"
AuthenticationMethod="OAMLDAPPluginAuthnScheme>
<saml:Subject>
<saml:NameIdenti<er ...>bob@oracle.com</saml:NameIdenti<er>
<saml:SubjectCon<rmation>
<saml:Con<rmationMethod>
urn:oasis:names:tc:SAML:1.0:cm:bearer
</saml:Con<rmationMethod>
</saml:SubjectCon<rmation>
</saml:Subject>
</saml:AuthnStatement>
<dsig:Signature>
...
</dsig:Signature> </saml:Assertion> </samlp:Response>
Mapeando OAMLDAPPluginAuthnScheme
Para mapear OAMLDAPPluginAuthnScheme
para o Método de Autenticação da Federação urn:oasis:names:tc:SAML:1.0:am:password
somente para este Parceiro SP, execute o método addSPPartnerAuthnMethod()
:
- Informe o ambiente WLST executando:
$IAM_ORACLE_HOME/common/bin/wlst.sh
- Conecte-se ao servidor de Administração WLS:
connect()
- Navegue até a ramificação Runtime do Domínio:
domainRuntime()
- Execute o comando
addSPPartnerAuthnMethod()
:addSPPartnerAuthnMethod("AcmeSP", "urn:oasis:names:tc:SAML:1.0:am:password", "OAMLDAPPluginAuthnScheme")
- Saia do ambiente WLST:
exit()
Após a autenticação via FORM, IdP agora emite uma Asserção semelhante a (consulte que o método foi alterado de OAMLDAPPluginAuthnScheme
para senha):
<samlp:Response ...>
<samlp:Status>
<samlp:StatusCode Value="samlp:Success"/> </samlp:Status>
<saml:Assertion Issuer="https://idp.com/oam/fed" ...>
<saml:Conditions ...>
<saml:AudienceRestriction>
<saml:Audience>https://acme.com/sp/ssov11</saml:Audience>
</saml:AudienceRestriction>
</saml:Conditions>
<saml:AuthnStatement AuthenticationInstant="2014-03-21T20:53:55Z"
AuthenticationMethod="urn:oasis:names:tc:SAML:1.0:am:password">
<saml:Subject>
<saml:NameIdenti<er ...>bob@oracle.com</saml:NameIdenti<er>
<saml:SubjectCon<rmation>
<saml:Con<rmationMethod>
urn:oasis:names:tc:SAML:1.0:cm:bearer
</saml:Con<rmationMethod>
</saml:SubjectCon<rmation>
</saml:Subject>
</saml:AuthnStatement>
<dsig:Signature>
...
</dsig:Signature> </saml:Assertion> </samlp:Response>
LDAPScheme como Esquema de Autenticação
Como resultado da definição de um Mapeamento de Autenticação da Federação no nível do Parceiro, todos os mapeamentos no nível do Perfil do Parceiro do Ponto de Serviço serão ignorados. Para este teste, alterne o Esquema de Autenticação padrão para este Parceiro SP de volta para LDAPScheme
e a Asserção emitida por IdP não poderá mapear este LDAPScheme
para um Método de Autenticação de Federação, desde que mais
- Um mapeamento do Método de Autenticação da Federação é definido no nível do Parceiro SP e, portanto, os mapeamentos definidos no Perfil do Parceiro SP são ignorados
- O
LDAPScheme
não está listado no mapeamento no nível do Parceiro
Use o comando WLST setSPPartnerDefaultScheme()
do OAM e especifique qual esquema será usado como padrão para este Parceiro SP:
- Informe o ambiente WLST executando:
$IAM_ORACLE_HOME/common/bin/wlst.sh
- Conecte-se ao servidor de Administração WLS:
connect()
- Navegue até a ramificação Runtime do Domínio:
domainRuntime()
- Execute o comando
setSPPartnerDefaultScheme()
:setSPPartnerDefaultScheme("AcmeSP", "LDAPScheme")
- Saia do ambiente WLST:
exit()
Após a autenticação via FORM, IdP emite uma Asserção semelhante a (consulte AuthenticationMethod
definido como LDAPScheme
):
<samlp:Response ...>
<samlp:Status>
<samlp:StatusCode Value="samlp:Success"/> </samlp:Status>
<saml:Assertion Issuer="https://idp.com/oam/fed" ...>
<saml:Conditions ...>
<saml:AudienceRestriction>
<saml:Audience>https://acme.com/sp/ssov11</saml:Audience>
</saml:AudienceRestriction>
</saml:Conditions>
<saml:AuthnStatement AuthenticationInstant="2014-03-21T20:53:55Z"
AuthenticationMethod="LDAPScheme">
<saml:Subject>
<saml:NameIdenti<er ...>bob@oracle.com</saml:NameIdenti<er>
<saml:SubjectCon<rmation>
<saml:Con<rmationMethod>
urn:oasis:names:tc:SAML:1.0:cm:bearer
</saml:Con<rmationMethod>
</saml:SubjectCon<rmation>
</saml:Subject>
</saml:AuthnStatement>
<dsig:Signature>
...
</dsig:Signature>
</saml:Assertion> </samlp:Response>
Mapeando LDAPScheme no Nível do Parceiro
Para corrigir esse problema, adicione LDAPScheme
ao mapeamento do Método de Autenticação da Federação urn:oasis:names:tc:SAML:1.0:am:password
somente para este Parceiro SP. Execute o método addSPPartnerAuthnMethod()
:
- Informe o ambiente WLST executando:
$IAM_ORACLE_HOME/common/bin/wlst.sh
- Conecte-se ao servidor de Administração WLS:
connect()
- Navegue até a ramificação Runtime do Domínio:
domainRuntime()
- Execute o comando
addSPPartnerAuthnMethod()
:addSPPartnerAuthnMethod("AcmeSP", "urn:oasis:names:tc:SAML:1.0:am:password", "LDAPScheme")
- Saia do ambiente WLST:
exit()
Após a autenticação via FORM, IdP agora emite uma Asserção semelhante a (consulte que o método foi alterado de LDAPScheme
para senha):
<samlp:Response ...>
<samlp:Status>
<samlp:StatusCode Value="samlp:Success"/>
</samlp:Status>
<saml:Assertion Issuer="https://idp.com/oam/fed" ...>
<saml:Conditions ...>
<saml:AudienceRestriction>
<saml:Audience>https://acme.com/sp/ssov11</saml:Audience>
</saml:AudienceRestriction>
</saml:Conditions>
<saml:AuthnStatement AuthenticationInstant="2014-03-21T20:53:55Z"
AuthenticationMethod="urn:oasis:names:tc:SAML:1.0:am:password">
<saml:Subject>
<saml:NameIdenti<er ...>bob@oracle.com</saml:NameIdenti<er>
<saml:SubjectCon<rmation>
<saml:Con<rmationMethod>
urn:oasis:names:tc:SAML:1.0:cm:bearer
</saml:Con<rmationMethod>
</saml:SubjectCon<rmation>
</saml:Subject>
</saml:AuthnStatement>
<dsig:Signature>
...
</dsig:Signature>
</saml:Assertion> </samlp:Response>
OpenID 2.0
Nos fluxos do OpenID 2.0, o RP deve solicitar o uso de PAPE, para que IdP/OP inclua informações de PAPE. Para o OpenID 2.0, a configuração envolve o mapeamento de uma lista de políticas do OpenID 2.0 para uma lista de Esquemas de Autenticação. O comando WLST usa uma lista de políticas, delimitadas pelo caractere ',', em vez de SAML 2.0 ou SAML 1.1, em que um único Método de Autenticação de Federação tinha que ser especificado.
Configuração do Teste
Nesta configuração, o OAM está atuando como um IdP/OP e é integrado a um parceiro SP/RP remoto OpenID 2.0 identificado por AcmeRP. Neste teste, execute o SSO de Federação com IdP configurado para:
- Usar LDAPScheme como o Esquema de Autenticação
- Mapeie LDAPScheme para os Métodos de Autenticação de Federação das políticas
http://schemas.openid.net/pape/policies/2007/0/phishing-resistant
ehttp://openid-policies/password-protected
(o segundo é personalizado para este caso de uso)
LDAPScheme como Esquema de Autenticação
Usando as definições do OOTB referentes à autenticação do usuário no OAM, o usuário é desafiado por meio de uma página de log-in baseada no FORM baseada no LDAPScheme
.
Nenhum Método de Autenticação de Federação está definido como OOTB para OpenID 2.0. Portanto, se o IdP/OP emitir uma resposta SSO com um elemento de Resposta PAPE, ele especificará o nome do esquema em vez de Métodos de Autenticação de Federação
Após a autenticação por meio de FORM, IdP emite uma Resposta de SSO semelhante à
https://acme.com/openid?refid=id-9PKVXZmRxAeDYcgLqPm36ClzOMA-&openid.ns=hUp%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&openid.mode=id_res&openid.op_endpoint=https%3A%2F%2Fidp.com%2Fopenid&openid.claimed_id=https%3A%2F%2Fidp.com%2Fopenid%3Fid%3Did-38iCmmlAVEXPsFjnFVKArfn5RIiF75D5doorhEgqqPM%3D&openid.identity=https%3A%2F%2Fidp.com%2Fopenid%3Fid%3Did-38iCmmlAVEXPsFjnFVKArfn5RIiF75D5doorhEgqqPM%3D&openid.return_to=https%3A%2F%2Facme.com%2Fopenid%3Frefid%3Did-9PKVXZmRxAeDYcgLqPm36ClzOMA-&openid.response_nonce=2014-03-24T19%3A20%3A06Zid-YPa2kTNNFftZkgBb460jxJGblk2g--iNwPpDI7M1&openid.assoc_handle=id-6a5S6zhAKaRwQNUnjTKROREdAGSjWodG1el4xyz3&openid.ns.ax=http%3A%2F%2Fopenid.net%2Fsrv%2Fax%2F1.0&openid.ax.mode=fetch_response&openid.ax.type.aUr0=http%3A%2F%2Fsession%2Fcount&openid.ax.value.aUr0=1&openid.ax.type.aUr1=http%3A%2F%2Fopenid.net%2Fschema%2FnamePerson%2Ffriendly&openid.ax.value.aUr1=My+name+is+Bobby+Smith&openid.ax.type.aUr2=http%3A%2F%2Fschemas.openid.net%2Fax%2Fapi%2Fuser_id&openid.ax.value.aUr2=bob&openid.ax.type.aUr3=http%3A%2F%2Faxschema.org%2Fcontact%2Femail&openid.ax.value.aUr3=bob%40oracle.com&openid.ax.type.aUr4=http%3A%2F%2Fsession%2Fipaddress&openid.ax.value.aUr4=10.145.120.253&openid.ns.pape=http%3A%2F%2Fspecs.openid.net%2Fextensions%2Fpape%2F1.0&openid.pape.auth_time=2014-03-24T19%3A20%3A05Z&openid.pape.auth_policies=LDAPScheme&openid.signed=op_endpoint%2Cclaimed_id%2Cidentity%2Creturn_to%2Cresponse_nonce%2Cassoc_handle%2Cns.ax%2Cax.mode%2Cax.type.aUr0%2Cax.value.aUr0%2Cax.type.aUr1%2Cax.value.aUr1%2Cax.type.aUr2%2Cax.value.aUr2%2Cax.type.aUr3%2Cax.vopenid.sig=mYMgbGYSs22l8e%2FDom9NRPw15u8%3D
Mapeando LDAPScheme
Para mapear o Esquema LDAP para os Métodos de Autenticação da Federação das políticas http://schemas.openid.net/pape/policies/2007/0/phishing-resistant
e http://openid-policies/password-protected
, execute o método addSPPartnerAuthnMethod()
(as políticas são separadas por vírgulas):
- Informe o ambiente WLST executando:
$IAM_ORACLE_HOME/common/bin/wlst.sh
- Conecte-se ao servidor de Administração WLS:
connect()
- Navegue até a ramificação Runtime do Domínio:
domainRuntime()
- Execute o comando
addSPPartnerAuthnMethod()
:addSPPartnerAuthnMethod("AcmeRP", "http://schemas.openid.net/pape/policie/2007/06/phishing-resistant,http://openid-policies/password-protected""LDAPScheme")
- Saia do ambiente WLST:
exit()
Após a autenticação via FORM, IdP agora emite uma Asserção semelhante a (consulte que o método foi alterado de LDAPScheme
para as duas políticas):
https://acme.com/openid?refid=id-9PKVXZmRxAeDYcgLqPm36ClzOMA-&openid.ns=hUp%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&openid.mode=id_res&openid.op_endpoint=https%3A%2F%2Fidp.com%2Fopenid&openid.claimed_id=https%3A%2F%2Fidp.com%2Fopenid%3Fid%3Did-38iCmmlAVEXPsFjnFVKArfn5RIiF75D5doorhEgqqPM%3D&openid.identity=https%3A%2F%2Fidp.com%2Fopenid%3Fid%3Did38iCmmlAVEXPsFjnFVKArfn5RIiF75D5doorhEgqqPM%3D&openid.return_to=https%3A%2F%2Facme.com%2Fopenid%3Frefid%3Did-9PKVXZmRxAeDYcgLqPm36ClzOMA-&openid.response_nonce=2014-03-24T19%3A20%3A06Zid-YPa2kTNNFftZkgBb460jxJGblk2g--iNwPpDI7M1&openid.assoc_handle=id-6a5S6zhAKaRwQNUnjTKROREdAGSjWodG1el4xyz3&openid.ns.ax=http%3A%2F%2Fopenid.net%2Fsrv%2Fax%2F1.0&openid.ax.mode=fetch_response&openid.ax.type.aUr0=http%3A%2F%2Fsession%2Fcount&openid.ax.value.aUr0=1&openid.ax.type.aUr1=http%3A%2%2Fopenid.net%2Fschema%2FnamePerson%2Ffriendly&openid.ax.value.aUr1=My+name+is+Bobby+Smith&openid.ax.type.aUr2=http%3A%2F%2Fschemas.openid.net%2Fax%2Fapi%2Fuser_id&openid.ax.value.aUr2=bob&openid.ax.type.aUr3=http%3A%2F%2Faxschema.org%2Fcontact%2Femail&openid.ax.value.aUr3=bob%40oracle.com&openid.ax.type.aUr4=http%3A%2F%2Fsession%2Fipaddress&openid.ax.value.aUr4=10.145.120.253&openid.ns.pape=http%3A%2F%2Fspecs.openid.net%2Fextensions%2Fpape%2F1.0&openid.pape.auth_time=2014-03-24T19%3A20%3A05Z&openid.pape.auth_policies=http%3A%2F%2Fschemas.openid.net%2Fpape%2Fpolicies%2F2007%2F06%2Fphishingresistant+hUp%3A%2F%2Fopenid-policies%2Fpassword-protected&openid.signed=op_endpoint%2Cclaimed_id%2Cidentity%2Creturn_to%2Cresponse_nonce%2Cassoc_handle%2Cns.ax%2Cax.mode%2Cax.type.aUr0%2Cax.value.aUr0%2Cax.type.aUr1%2Cax.value.aUr1%2Cax.type.aUr2%2Cax.value.aUr2%2Cax.type.aUr3%2Cax.vopenid.sig=mYMgbGYSs22l8e%2FDom9NRPw15u8%3D
Mais Recursos de Aprendizagem
Explore outros laboratórios em docs.oracle.com/learn ou acesse mais conteúdo de aprendizado gratuito no canal YouTube do Oracle Learning. Além disso, visite education.oracle.com/learning-explorer para se tornar um Oracle Learning Explorer.
Para obter a documentação do produto, visite o Oracle Help Center.
Configuring Fed Authentication Methods in OAM and IdP
F59898-01
September 2022
Copyright © 2022, Oracle and/or its affiliates.