Autenticação em IdP
Este artigo discute sobre autenticação quando o OAM atua como IdP e como o servidor pode ser configurado para usar Esquemas de Autenticação específicos do OAM para desafiar o usuário. Quando o OAM 11gR1 atuando como IdP e o OAM 11g foram integrados, o OAM estava delegando a autenticação do usuário ao OAM por meio do uso de WebGate:
- O OHS precisou ser instalado e configurado para atuar como um proxy HTTP reverso para o OAM
WebGateprecisou ser instalado no OHS e registrado no OAM- O OAM tinha que ser configurado para proteger um URL do OAM com
- Uma Política de Autenticação
- Uma Política de Autorização
- Configurar o URL de logout do OAM no OAM
- O OAM tinha que ser configurado para usar o Mecanismo de Autenticação do OAM 11g
- Informe o cabeçalho HTTP que contém o
userIDinjetado porWebGate
- Informe o cabeçalho HTTP que contém o
- Configure o URL de log-out do OAM no OAM 11gR2 e no OAM 11gR2, os dois componentes são totalmente integrados:
- Nenhuma configuração inicial é necessária para integrar os dois produtos
- Nenhum WebGate/OHS é necessário para a autenticação IdP
- IdP pode utilizar qualquer Esquema de Autenticação do OAM
Observação: Dada a natureza avançada da configuração, a configuração de autenticação do OAM só pode ser gerenciada por meio dos comandos WLST do OAM.
Visão Geral
Na release 11.1.2.2.0 ou posterior do OAM, o Aplicativo Web J2EE do OAM e o Aplicativo Web J2EE do OAM estão contidos no mesmo Aplicativo EAR J2EE do OAM que é implantado em uma instância do WLS independente. Essa abordagem de implantação permite que os dois módulos encaminhem internamente a solicitação HTTP do usuário de entrada do OAM para o OAM e vice-versa. Isso permite que o aplicativo IdP acione uma operação de autenticação do OAM local que desafie e identifique o usuário. No runtime, quando a autenticação for necessária por IdP em uma operação de Federação, IdP:
- Encaminhar internamente o usuário para o OAM
- Indique ao OAM qual Esquema de Autenticação usar para autenticação do usuário
- O OAM determina se um usuário precisa ser desafiado:
- Se o usuário ainda não tiver sido autenticado
- Se o usuário for autenticado, mas a sessão expirou
- Se o usuário for autenticado, mas o nível de esquema de autenticação da autenticação original for inferior ao nível do esquema de autenticação solicitado por IdP
- Se o usuário precisar ser desafiado, o OAM fará isso com base nas regras do esquema de autenticação especificado por IdP. Depois que o OAM (opcionalmente) tiver autenticado o usuário e criado uma sessão, ele encaminhará internamente o usuário de volta para IdP com informações de identidade e sessão. IdP retoma a operação de Federação que estava executando. Pronto para uso, IdP está configurado para usar
LDAPSchemecomo o Esquema de Autenticação do OAM para desafiar e identificar usuários: isso é definido como o esquema global padrão para IdP. É possível para um administrador:- Para definir o Esquema de Autenticação do OAM padrão global a ser usado para autenticar usuários.
- Em um Perfil do Parceiro SP para definir o Esquema de Autenticação do OAM a ser usado para autenticar usuários de parceiros SP vinculados a este Perfil do Parceiro SP. Se definida, essa definição terá precedência sobre o Esquema de Autenticação do OAM padrão global
- Em um Parceiro SP para definir o Esquema de Autenticação OAM padrão a ser usado para autenticar usuários para este parceiro SP. Se definida, essa configuração terá precedência sobre o Esquema de Autenticação OAM definido no Perfil do Parceiro SP referenciado por esse Parceiro SP ou terá precedência sobre o Esquema de Autenticação OAM padrão global
Configuração de teste
Use o seguinte ambiente de teste:
- IdP
- Um Parceiro SP SAML 2.0 chamado
AcmeSP - Outro Parceiro SP SAML 2.0 chamado
HRsp
Execute vários casos de teste:
- Autenticação Padrão Global:
- O
AcmeSPe oHRspusam o Perfil do Parceiro SP SAML 2.0 padrão - Nenhum Esquema de Autenticação será definido no nível do Parceiro SP
- Nenhum Esquema de Autenticação será definido no nível do Perfil do Parceiro SP
- A autenticação padrão global será usada como está (
OOTB:LDAPScheme), e uma operação SSO de Federação será executada - A autenticação padrão global será definida como
BasicScheme(Autenticação Básica HTTP) e uma operação SSO de Federação será executada - Autenticação do Perfil do Parceiro SP:
AcmeSPusa o Perfil do Parceiro SAML 2.0 SP padrãoHRspusa outro Perfil do Parceiro SAML 2.0 SP- Nenhum Esquema de Autenticação será definido no nível do Parceiro SP
- Nenhum Esquema de Autenticação será definido no nível de Perfil do Parceiro do SP SAML 2.0 padrão, mas o novo Perfil do Parceiro do SP SAML 2.0 será configurado para usar
BasicScheme - A autenticação padrão global será definida como
LDAPScheme - Um SSO de Federação será executado com
AcmeSP - Um SSO de Federação será executado com
HRsp - Autenticação de parceiro SP:
- O
AcmeSPe oHRspusam o Perfil do Parceiro SP SAML 2.0 padrão - O Esquema de Autenticação para o Perfil do Parceiro SP SAML 2.0 padrão será definido como
BasicScheme - O Esquema de Autenticação para
AcmeSPserá definido comoLDAPScheme - A autenticação padrão global será definida como
LDAPScheme - Um SSO de Federação será executado com
AcmeSP - Um SSO de Federação será executado com
HRsp - Configurar a Autenticação por meio de diferentes Níveis de Autenticação
- O
AcmeSPe oHRspusam o Perfil do Parceiro SP SAML 2.0 padrão - O Esquema de Autenticação para o Perfil do Parceiro SP SAML 2.0 padrão será definido como
BasicScheme - O Esquema de Autenticação para
AcmeSPserá definido comoLDAPScheme - A autenticação padrão global será definida como
LDAPScheme LDAPSchemeserá configurado para ter seu nível definido como 3BasicSchemepermanecerá inalterado com seu nível definido como 2
Teste no 1:
- O SSO da Federação será executado com
AcmeSP - O usuário é desafiado por meio de
LDAPScheme - No mesmo browser, o SSO de Federação será executado com
HRsp - O usuário não será desafiado
Teste no 2:
- O SSO da Federação será executado com
HRsp - O usuário é desafiado por meio de
BasicScheme - No mesmo browser, o SSO de Federação será executado com
AcmeSP - O usuário será desafiado por meio de
LDAPSchemeAs seções a seguir, cada uma descrevendo um caso de teste, estarão em ordem cronológica, com cada seção começando onde a seção anterior parou.
Observação: Se a Autenticação Básica HTTP for usada no IdP, o domínio WebLogic em que o OAM está sendo executado precisará ser configurado para não validar a Autenticação Básica HTTP para recursos não seguros.
Autenticação Básica HTTP
Por padrão, se um navegador enviar credenciais de Autenticação Básica HTTP ao OAM, o servidor WLS tentará validá-las antes de permitir que o OAM processe a solicitação: isso poderá resultar em falhas de autenticação, especialmente se o domínio WLS não tiver sido configurado com Autenticadores LDAP WLS para cada Armazenamento de Identidades criado no OAM.
Observação: Mesmo que o domínio WLS tenha sido configurado corretamente para ter um Autenticador LDAP WLS para cada Armazenamento de Identidades criado no OAM, isso resultará em duas operações de autenticação, uma por WLS e a outra exigida pelo OAM para criar uma sessão do OAM.
É possível desativar a validação automática das credenciais de Autenticação Básica HTTP enviadas para [aplicativos não seguros]{.underline} no domínio WLS no qual o OAM está em execução. Consulte a seção "Understanding BASIC Authentication with Unsecured Resources" do guia Oracle Fusion Middleware Programming Security for Oracle WebLogic Server para obter mais informações. Para desativar a validação automática das credenciais de Autenticação Básica HTTP enviadas a [aplicativos não seguros]{.underline} no domínio WLS, execute as seguintes etapas:
- Informe o ambiente WLST executando:
$IAM_ORACLE_HOME/common/bin/wlst.sh - Conecte-se ao servidor de Administração WLS:
connect() - Inicie uma sessão de edição:
edit()startEdit() - Navegue até o nó SecurityConfiguration:
cd('SecurityConfiguration') - Navegue até o domínio (substitua DOMAIN_NAME pelo nome do domínio WLS no qual o OAM está instalado):
cd('DOMAIN_NAME') - Defina a definição
EnforceValidBasicAuthCredentialscomo falsa para desativar a validação tomática das credenciais de Autenticação Básica HTTP enviadas a aplicativos não seguros:set('EnforceValidBasicAuthCredentials', 'false') - Salve e ative as alterações:
save()activate() - Reinicie os servidores no domínio WLS para que as alterações entrem em vigor
Autenticação Padrão Global
A primeira etapa é criar e configurar Parceiros do SP em IdP para SSO SAML 2.0. Depois de configurar essa configuração, a lista de Parceiros SP em IdP será semelhante a:

Descrição da ilustração accessmanagement.jpg
A execução do SSO de Federação envolvendo um desses AcmeSP ou HRsp com IdP resulta no servidor do OAM desafiando o usuário usando o Esquema de Autenticação global padrão configurado para ser LDAPScheme OOTB:

Descrição da ilustração accessmanager.jpg
Para alternar o Esquema de Autenticação global padrão para BasicScheme, use o comando WLST setIdPDefaultScheme() do OAM e especifique qual esquema será usado como padrão:
-
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
setIdPDefaultScheme():setIdPDefaultScheme("BasicScheme") -
Saia do ambiente WLST:
exit()A execução do SSO de Federação envolvendo um dessesAcmeSPouHRspcom IdP resulta no desafio do servidor OAM ao usuário usando o OAMBasicSchemeem vez deLDAPScheme:
Para alternar de volta o Esquema de Autenticação global padrão para LDAPScheme, execute as seguintes operações:
- 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
setIdPDefaultScheme():setIdPDefaultScheme("LDAPScheme") - Saia do ambiente WLST:
exit()
A execução do SSO de Federação envolvendo um desses AcmeSP ou HRsp com IdP resulta no desafio do usuário pelo servidor OAM via LDAPScheme.
Autenticação do Perfil do Parceiro SP
Nos casos de teste anteriores, a definição é como:
AcmeSPeHRspexistem em IdP- O Esquema de Autenticação global padrão em IdP é
LDAPScheme - Tanto
AcmeSPquantoHRspestão usando o Perfil do Parceiro SAML 2.0 SP padrão
Para configurar HRsp para usar um novo Perfil do Parceiro SP, execute os seguintes comandos:
- 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() - Crie o novo Perfil do Parceiro SP a partir do Perfil do Parceiro SP SAML 2.0 padrão:
createFedPartnerProfileFrom("new-saml20-pp", "saml20-sp-partner-profile") - Vincule o Parceiro HRsp ao novo Perfil do Parceiro SP:
setFedPartnerProfile("HRsp", "sp", "newsaml20-pp") - Saia do ambiente WLST:
exit()
Nesse ponto, a execução do SSO de Federação envolvendo um desses AcmeSP ou HRsp com IdP resulta no desafio do usuário pelo servidor OAM via LDAPScheme. Para configurar o novo Perfil do Parceiro SP para ter BasicScheme como o Esquema de Autenticação padrão, use o comando WLST setSPPartnerProfileDefaultScheme() do OAM:
- 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() - Defina o Esquema de Autenticação padrão para o novo Perfil do Parceiro SP como
BasicScheme:setSPPartnerProfileDefaultScheme("newsaml20-pp", "BasicScheme") - Saia do ambiente WLST:
exit()
Agora, executando o SSO de Federação com:
- O
AcmeSPresulta em IdP desafiando o usuário por meio doLDAPScheme. - O
HRspresulta em IdP desafiando o usuário por meio doBasicScheme.
Vincule HRsp de volta ao Perfil do Parceiro SP padrão e depois exclua o Perfil do Parceiro SP que eu criei neste teste:
- 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() - Vincule o Parceiro HRsp ao Perfil padrão do Parceiro SP:
setFedPartnerProfile("HRsp", "sp", "saml20-sp-partner-profile") - Exclua o novo Perfil do Parceiro SP:
deleteFedPartnerProfile("new-saml20-pp") - Saia do ambiente WLST:
exit()
Após a execução desses comandos, a execução do SSO de Federação envolvendo um desses AcmeSP ou HRsp com IdP resulta no desafio do usuário pelo servidor OAM por meio do LDAPScheme.
Autenticação do Parceiro SP
Nos casos de teste anteriores, a definição é como:
AcmeSPeHRspexistem em IdP- O Esquema de Autenticação global padrão em IdP é
LDAPScheme - Tanto
AcmeSPquantoHRspestão usando o Perfil do Parceiro SAML 2.0 SP padrão
Para configurar o Perfil do Parceiro do SP SAML 2.0 padrão para usar BasicScheme como o Esquema de Autenticação, execute as seguintes operações:
- 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() - Defina o Esquema de Autenticação padrão para o novo Perfil do Parceiro SP como
BasicScheme:setSPPartnerProfileDefaultScheme("saml20-sppartner-profile", "BasicScheme") - Saia do ambiente WLST:
exit()
Nesse ponto, a execução do SSO de Federação envolvendo um desses AcmeSP ou HRsp com IdP resulta no desafio do usuário pelo servidor OAM via BasicScheme. Para configurar o Parceiro SP AcmeSP para ter LDAPScheme como o Esquema de Autenticação padrão, use o comando WLST setSPPartnerDefaultScheme() do OAM:
- 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() - Defina o Esquema de Autenticação padrão para o Parceiro SP
AcmeSPcomoLDAPScheme:setSPPartnerDefaultScheme("AcmeSP", "LDAPScheme") - Saia do ambiente WLST:
exit()
Agora, executando o SSO de Federação com:
- O
AcmeSPresulta em IdP desafiando o usuário por meio doLDAPScheme. - O
HRspresulta em IdP desafiando o usuário por meio doBasicScheme.
Autenticação Detalhada via Diferentes Níveis de Autenticação
Nos casos de teste anteriores, a definição é como:
AcmeSPeHRspexistem em IdP- O Esquema de Autenticação global padrão em IdP é
LDAPScheme - Tanto
AcmeSPquantoHRspestão usando o Perfil do Parceiro SAML 2.0 SP padrão - O Perfil do Parceiro do SP SAML 2.0 padrão é configurado com o Esquema de autenticação padrão definido como
BasicScheme - O Parceiro SP
AcmeSPestá configurado com o Esquema de Autenticação padrão definido comoLDAPSchemeNeste ponto, executando SSO de Federação com: - O
AcmeSPresulta em IdP desafiando o usuário por meio doLDAPScheme. - O
HRspresulta em IdP desafiando o usuário por meio doBasicScheme.
OOTB, o Nível de Autenticação para LDAPScheme e BasicScheme está definido como 2. Para alterar o Nível de Autenticação de LDAPScheme para 3, execute as seguintes operações:
-
Vá para a Console de Administração do OAM:
http(s)://oam-admin-host:oam-adminport/oamconsole -
Navegue até Gerenciador de Acesso, Esquemas de Autenticação
-
Clique em Pesquisar e selecione
LDAPScheme -
Definir o Nível de Autenticação como 3
-
Clique em Aplicar

Após essas alterações, se o usuário já tiver sido autenticado no OAM e o usuário executar uma operação SSO de Federação com IdP, o OAM garantirá que o esquema usado para autenticar o usuário em primeiro lugar tenha um nível maior ou igual ao esquema configurado para o Parceiro SP atual com o qual o SSO de Federação é exercitado. Por exemplo:
- Se o usuário for autenticado pela primeira vez por meio de
LDAPScheme, ele não será reprocessado quando uma segunda operação SSO de Federação for executada com o Esquema de Autenticação padrão para esse segundo baixo sendoBasicScheme: - O SSO da Federação é iniciado com o Parceiro
AcmeSP - O usuário é desafiado pelo OAM por meio de
LDAPScheme - IdP emite uma Asserção e redireciona o usuário para
AcmeSP - No mesmo browser, o SSO de Federação é iniciado com
HRsp - O OAM não desafiará o usuário, porque ele já foi autenticado, a sessão não sofreu timeout e o nível do esquema usado para criar a sessão (que era 3 para
LDAPScheme) é maior ou igual ao esquema padrão configurado para este SSO da Federação atual (que é 2 paraBasicScheme) - IdP emite uma Asserção e redireciona o usuário para
HRsp - Se o usuário for autenticado pela primeira vez por meio de
BasicScheme, ele será rechallenged quando uma segunda operação SSO de Federação for executada com o Esquema de Autenticação padrão para esse segundo baixo sendoLDAPScheme: - O SSO da Federação é iniciado com o Parceiro
HRsp - O usuário é desafiado pelo OAM por meio de
BasicScheme - IdP emite uma Asserção e redireciona o usuário para
HRsp - No mesmo browser, o SSO de Federação é iniciado com
AcmeSP - O OAM desafia o usuário, porque ele já foi autenticado, a sessão não sofreu timeout [mas]{.underline} o nível do esquema usado para criar a sessão (que era 2 para
BasicScheme) é menor que o esquema padrão configurado para este SSO da Federação atual (que é 3 paraLDAPScheme) - IdP emite uma Asserção e redireciona o usuário para
AcmeSP
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.
Authentication in OAM and IdP
F59731-01
September 2022
Copyright © 2022, Oracle and/or its affiliates.