Perfis de Parceiros no OAM
Este artigo discute sobre o conceito de Perfil de Parceiro na configuração do OAM.
Durante qualquer operação de runtime de Federação entre o OAM (como um IdP ou SP) e parceiros remotos, diversas propriedades de configuração são avaliadas que afetam a forma como o OAM executa a operação.
Alguns dos parâmetros de configuração que orientam a troca de protocolo são específicos do parceiro com o qual o OAM está interagindo (como como NameID deverá ser preenchido se o OAM atuar como um SAML 2.0 IdP), enquanto outros podem ser comuns a um grupo de parceiros (como assinar ou não Asserções SAML 2.0 quando o OAM atuar como um IdP).
Em vez de ter cada entrada de parceiro na configuração do OAM contendo todos os parâmetros do OAM necessários para executar as operações de runtime da Federação, o OAM usa um Perfil de Parceiro que:
-
Contém um conjunto de configurações comuns a todos os parceiros que fazem referência a esse perfil de parceiro
-
É específico de
-
Um tipo, IdP ou SP
-
Um protocolo: SAML 2.0, SAML 1.1 ou OpenID 2.0
-
Um Perfil de Parceiro no OAM geralmente contém definições de configuração que geralmente não são alteradas com frequência e que são consideradas avançadas. Para as operações diárias, os recursos de administração fornecidos na Console de Administração do OAM ou por meio dos comandos WLST do OAM são suficientes para a maioria dos casos.
Para casos avançados que exigem alterações de configuração, um administrador teria a opção de:
-
Atualize a entrada de configuração do Parceiro, de modo que as alterações se apliquem somente ao parceiro
-
Ou atualize a entrada Perfil do parceiro para que as alterações se apliquem a todos os parceiros vinculados ao Perfil do parceiro
Observação Importante: Dada a natureza avançada da configuração, os Perfis de Parceiro só podem ser gerenciados por meio dos comandos WLST do OAM.
Perfil de Parceiro Padrão
Pronto para uso, o OAM define Perfis de Parceiro padrão que contêm as definições padrão para seus respectivos protocolos e tipos de serviço de Federação. As definições padrão são adaptadas para os casos de uso comuns encontrados nas implantações de produção atuais e, portanto, você não precisará alterá-las, exceto para casos de uso específicos.
Após a instalação, os seguintes Perfis de Parceiro são definidos na configuração do OAM:
-
saml20-idp-partner-profile:
-
Protocolo: SAML 2.0
-
Tipo: Perfil do parceiro para parceiros IdP
-
-
saml20-sp-partner-profile:
-
Protocolo: SAML 2.0
-
Tipo: Perfil do parceiro para parceiros SP
-
-
saml11-idp-partner-profile:
-
Protocolo: SAML 1.1
-
Tipo: Perfil do parceiro para parceiros IdP
-
-
saml11-sp-partner-profile:
-
Protocolo: SAML 1.1
-
Tipo: Perfil do parceiro para parceiros SP
-
-
openid20-idp-partner-profile:
-
Protocolo: OpenID 2.0
-
Tipo: Perfil do parceiro para parceiros de IdP/OP
-
-
openid20-sp-partner-profile:
-
Protocolo: OpenID 2.0
-
Tipo: Perfil do parceiro para parceiros SP/RP
-
Comandos WLST
As definições contidas em uma entrada de Perfil do Parceiro são consideradas propriedades avançadas e, como tal, somente gerenciáveis por meio dos comandos WLST do OAM, enquanto alterações de definições básicas ou operações diárias podem ser executadas por meio da Console de Administração do OAM ou por meio dos comandos WLST do OAM.
As próximas seções mostram como usar os vários comandos de Perfil do Parceiro WLST do OAM para:
-
Listar todos os Perfis de Parceiros
-
Listar os Parceiros vinculados a um Perfil de Parceiro específico
-
Listar o Perfil do Parceiro usado por um Parceiro
-
Exibir o conteúdo de um Perfil de Parceiro
-
Criar um novo Perfil de Parceiro
-
Atualizar um Perfil do Parceiro: nesse caso, altere o algoritmo de hash usado em Assinaturas Digitais em mensagens assinadas de saída para SHA-256
-
Vincular o Perfil do Parceiro a um Parceiro
-
Excluir um Perfil de Parceiro
Às vezes, é desejável criar novas entradas do Perfil do parceiro quando vários parceiros têm um conjunto comum de casos de uso que diferem da configuração definida na entrada do Perfil do parceiro à qual estão vinculados. Em vez de cada Parceiro substituir uma definição (por exemplo, assinar mensagens usando o algoritmo de compilação SHA-256 em vez do padrão SHA-1 definido em suas entradas do Perfil do Parceiro), a melhor abordagem consiste em:
-
Criando um novo Perfil de Parceiro fazendo uma cópia do Perfil de Parceiro usado atualmente pelo Parceiro
-
Definir o Parceiro para usar o novo Perfil de Parceiro
-
Modificar o Perfil do Parceiro
Para obter mais informações sobre os comandos WLST do OAM, consulte a documentação do Oracle.
Ambiente do WLST
Consideramos que você já está no ambiente WLST e conectado usando:
- 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()
Listando o Perfil do Parceiro
O comando WLST listFedPartnerProfiles() lista todos os Perfis de Parceiro presentes no OAM e exibe:
-
Nome
-
Tipo (SP ou IdP)
-
Versão do Protocolo: SAML 2.0, SAML 1.1 ou OpenID 2.0
Por exemplo, uma execução do comando exibe o seguinte:
wls:/test_domain/domainRuntime> listFedPartnerProfiles()
Partner Profile ID | Type | Protocol Version saml20-sp-partner-profile | sp | saml20 saml20-idp-partner-profile | idp | saml20 saml11-sp-partner-profile | sp | saml11 saml11-idp-partner-profile | idp | saml11 openid20-sp-partner-profile | sp | openid20 openid20-idp-partner-profile | idp | openid20
Listando parceiros para um perfil de parceiro específico
O comando listFedPartnersForProfile() lista todos os parceiros vinculados ao Perfil do Parceiro especificado como um parâmetro.
A execução do comando para exibir todos os parceiros que fazem referência ao Perfil do Parceiro saml20-sp-partnerprofile (que é o perfil OOTB padrão para Parceiros SP SAML 2.0) exibe o seguinte:
wls:/test_domain/domainRuntime> listFedPartnersForProfile("saml20-sp-partnerprofile")
-
adc00peq
-
Office365
-
ACME-ADFS
Listando o Perfil do Parceiro para um Parceiro Específico
O comando getFedPartnerProfile() exibe o Perfil do Parceiro usado pelo Parceiro e o tipo de parceiro especificado como parâmetros (o tipo de parceiro é idp ou sp)
A execução do comando para exibir o Perfil do Parceiro referenciado pelo Parceiro ACMEADFS SP exibe o seguinte:
wls:/test_domain/domainRuntime> getFedPartnerProfile("ACME-ADFS", "sp") saml20-sp-partner-profile
Exibindo o conteúdo de um perfil de parceiro
O comando WLST displayFedPartnerProfile() exibe na linha de comando as definições definidas na entrada especificada como um parâmetro.
A execução do comando para mostrar o Perfil do parceiro exibe o seguinte:
wls:/test_domain/domainRuntime> displayFedPartnerProfile("saml20-sp-partnerprofile") includecertinsignature=0 nameidqualifier= forceconsent=0 authnmethodmappings={urn%3Aoasis%3Anames%3Atc%3ASAML%3A2.0%3Aac%3Aclasses%3APasswordProtectedTransport=LDAPS1,OAM10gScheme-0,FAAuthScheme-1,BasicScheme-1,BasicFAScheme-1} sendsignedrequestquery=1 forceconsenturl= sendencryptednameid=0 sendsignedresponsequery=1 setconsentenabled=0 sessionaOributeforceauthn=0defaultauthnrequestnameidformat=orafed-emailaddress version=saml20 requesOimeout=2000 audiencerestrictionenabled=1 setconsentvalue= sendsignedresponsesoap=1 allowfederationcreation=1 sendsignedresponseassertionpost=0 reauthenticate=3600 description= sendaOribute=1defaultencryptionmethod=hOp://www.w3.org/2001/04/xmlenc#aes128-cbc requiresignedrequestquery=0 requiresignedresponsepost=0 audiencerestrictionvalue= sendsignedrequestsoap=1 sendsignedrequestpost=1 sendencryptedaOribute=0 partnerprofiletype=sp requiresignedresponsesoap=0 requiresignedrequestpost=0requiresignedresponsequery=0 partnerprofileid=saml20-sp-partner-profile sendsignedresponsepost=1 requiresignedrequestsoap=0 sendsignedassertion=1 sendsignedresponseassertionsoap=0 assertionvalidityinterval=300
Criando um novo Perfil de Parceiro
Esta seção mostra como criar um novo Perfil de Parceiro com base em um existente, usando o método createFedPartnerProfileFrom() que utiliza como argumentos:
-
O nome do novo Perfil de Parceiro
-
O nome do Perfil do Parceiro do qual copiar
A execução do comando para criar um novo Perfil de Parceiro do SP SAML 2.0 baseado no OOTB exibe o seguinte:
wls:/test_domain/domainRuntime> createFedPartnerProfileFrom("new-saml20pp", "saml20-sp-partner-profile")
Comando bem-sucedido.
Atualizando um Perfil de Parceiro
Esta seção mostra um exemplo de um comando de alteração de configuração WLST envolvendo um Perfil de Parceiro. Como mencionado anteriormente, criamos este Perfil de Parceiro para Parceiros para os quais SHA-256 precisa ser usado em Assinaturas Digitais de saída. Use o comando configureFedDigitalSignature() para configurar o novo Perfil do Parceiro chamado new-saml20-pp para usar SHA-256.
O comando usa o nome do Perfil do Parceiro, o tipo de perfil e o algoritmo de hash para usar como parâmetros:
wls:/test_domain/domainRuntime>configureFedDigitalSignature(partnerProfile="new-saml20-pp", partnerType="sp", algorithm="SHA-256")
Comando bem-sucedido.
Vinculando um Parceiro a um Perfil de Parceiro
Depois que o novo Perfil do Parceiro for criado (e configurado), os Parceiros existentes poderão ser vinculados a ele.
Em nosso exemplo, três Parceiros SP são listados:
-
adc00peq
-
Office365
-
ACME-ADFS
Queremos apenas que adc00peq e ACME-ADFS sejam alternados para o novo Perfil do parceiro. Use o comando setFedPartnerProfile() e especifique o Parceiro, seu tipo e o novo Perfil do Parceiro a ser usado:
wls:/test_domain/domainRuntime> setFedPartnerProfile("adc00peq", "sp", "newsaml20-pp")
Comando bem-sucedido.
wls:/test_domain/domainRuntime> setFedPartnerProfile("ACME-ADFS", "sp", "new-saml20-pp")
Comando bem-sucedido.
A listagem dos parceiros vinculados ao novo perfil mostra adc00peq e ACMEADFS, enquanto a listagem dos parceiros para o perfil saml20-sp-partner-profile só mostraria Office365:
wls:/test_domain/domainRuntime> listFedPartnersForProfile("new-saml20-pp")
adc00peq
ACME-ADFS
wls:/test_domain/domainRuntime> listFedPartnersForProfile("saml20-sp-partnerprofile")
Office365
Em nosso exemplo, IdP agora sinalizaria usando o algoritmo de compilação SHA-256 para adc00peq e ACME-ADFS, enquanto ele ainda usaria SHA-1 para o Office365
Excluindo um Perfil de Parceiro
Os Perfis do Parceiro podem ser excluídos por meio do deleteFedPartnerProfile(), que usa o nome do perfil como parâmetro, mas antes de executar o comando, verifique se nenhuma entrada do Parceiro está vinculada a este Perfil do Parceiro no momento.
Se tentarmos excluir o Perfil do Parceiro new-saml20-pp enquanto ele ainda for referenciado pelos Parceiros SP adc00peq e ACME-ADFS, o método retornará um erro:
wls:/test_domain/domainRuntime> deleteFedPartnerProfile("new-saml20-pp")
O Perfil do Parceiro da Federação está sendo usado por um Parceiro
Primeiro, os dois parceiros devem ser alternados de volta para outro Perfil de parceiro (saml20-sp-partner-profile neste exemplo) e, em seguida, o deleteFedPartnerProfile() pode ser chamado:
wls:/test_domain/domainRuntime> setFedPartnerProfile("adc00peq", "sp", "saml20-sp-partner-profile")
Comando bem-sucedido.
wls:/test_domain/domainRuntime> setFedPartnerProfile("ACME-ADFS", "sp", "saml20-sp-partner-profile")
Comando bem-sucedido.
wls:/test_domain/domainRuntime> deleteFedPartnerProfile("new-saml20-pp")
Comando bem-sucedido.
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.