Sign-On Único Usando os Serviços do Oracle Access Management Identity Federation

Você pode ativar o Essbase On-Premise para usar o sign-on único (SSO) do Oracle Access Management Identity Federation Services (FS). Isso descreve como configurar o Oracle Access Management Identity Federation como um Provedor de Identidades (IDP) a ser usado com o WebLogic como o Provedor de Serviços (SP).

  • Você deve ter um ambiente OAM (Oracle Access Manager) com os Serviços de Federação ativados. O OAM está integrado a um diretório LDAP, como OUD, OID ou AD. Aqui, o OID é integrado ao OAM.
  • É necessário ter o Essbase instalado.
  • As tarefas a seguir, para permitir que o Essbase use o Sign-On Único usando o Oracle Access Management Identity Federation Services, devem ser executadas na ordem apresentada.

PARTE A - Obter os metadados do IDP para a configuração do SP

  1. Faça log-in na console do OAM e navegue até Configuração > Serviços Disponíveis.
  2. Confirme se o Identity Federation está ativado ou ative-o.
  3. Vá para Configuração > Configurações > Visualizar > Federação.
  4. Clique em Exportar Metadados SAML 2.0 para fazer download dos metadados do IDP.
  5. Salve o arquivo de metadados como oam_fed_idp_metadata.xml para usar esse arquivo para registrar o OAM como IDP no WebLogic.
  6. Edite oam_fed_idp_metadata.xml, remova a tag <md:RoleDescriptor ... </md:RoleDescriptor e salve o arquivo. Esta tag não é suportada pelo WebLogic.

PARTE B - Configurar provedor de serviços (SP) do WebLogic

  1. Ativar SSL.
    1. No console do WebLogic, em estrutura de domínio, vá para Ambiente > Servidores > essbase_server1 > configuração > Geral. Marque a caixa de seleção Porta do Listener Ativada e forneça um número de porta para o Servidor Gerenciado.
    2. Ativar SSL para HTTP de Protocolo no servidor Gerenciado. Na estrutura de domínio, vá para Ambiente > Servidores > protocolo essbase_server1 > HTTP. Marque a caixa de seleção Porta de Listening SSL Ativada e forneça um número de porta.
    3. Vá para Security Realms > myrealm > Configuração > Guia geral. Defina Modelo de Segurança como Avançado.
  2. Crie um Mecanismo de Asserção de Identidades usando o console de Administração do WebLogic.
    1. Faça log-in no console WebLogic.
    2. Vá para Home > Resumo dos domínios de segurança > myrealm > Provedores.
    3. Clique em Criar um Novo Provedor de Autenticação.
    4. Clique em OK.
    5. Informe o nome do provedor como SAML-IA e selecione o tipo SAML2IdentityAsserter.
    6. Clique em OK.
  3. Crie um novo provedor SAMLAuthenticator.
    1. Ir para: Home > Resumo dos domínios de segurança > myrealm > Fornecedores.
    2. Clique em Criar um Novo Provedor de Autenticação.
    3. Clique em OK.
    4. Informe o nome do provedor como SAML-auth e selecione o tipo SAMLAuthenticator.
    5. Clique em OK.
  4. Altere o valor do Flag de Controle para SUFFICIENT para autenticador criado na etapa acima.
    1. Vá para: Home > Resumo de realms de segurança > myrealm > Provedores > SAML-auth.
    2. Em Configuração > Comum, defina o Indicador de Controle como SUFICIENTE.
    3. Clique em Salvar.
  5. Crie um novo provedor oid-auth.
    1. Ir para: Home > Resumo dos domínios de segurança > myrealm > Fornecedores.
    2. Clique em Criar um Novo Provedor de Autenticação.
    3. Clique em OK.
    4. Informe o nome do provedor como oid-auth e selecione o tipo OracleInternetDirectoryAuthenticator.
    5. Clique em OK.
    6. Altere Indicador de Controle para SUFICIENTE para o Provedor oid-auth adicionado e clique em Salvar.
  6. Selecione a guia Específico do profissional de saúde e insira os detalhes do servidor OID. Obtenha os detalhes do servidor OID no console do OAM > seção Armazenamento de Identidades do Usuário.
    1. Na configuração da Console do OAM > Armazenamento de Identidades do Usuário, clique em Armazenamento OID.
    2. Na seção Profissional de saúde específico do Profissional de saúde oid-auth, atualize as seções a seguir com os valores apropriados.
      • Seção de conexão:
        • Informar Host: nome do host do servidor OID
        • Principal: cn=orcladmin,cn=users,dc=us,dc=oracle,dc=com
        • Credencial de Confirmação de Credencial: forneça as credenciais
      • Usuários: DN Base do Usuário: cn=users,dc=us,dc=oracle,dc=com
      • Grupos: DN Base do Grupo: cn=groups,dc=us,dc=oracle,dc=com
      • Usar Nome do Usuário Recuperado como Principal: verificar
    3. Aceite os valores padrão dos outros campos e salve todas as alterações.
  7. Ativar Federação para servidor gerenciado.
    1. Vá para Home > Environment Servers > essbase_server1 > configuração > Federation Services.
    2. Na guia Provedor de Serviços SAML 2.0, selecione a opção Ativado e forneça o URL Padrão como
      https://Essbase-Host:Essbase-Managed Server-SSL-Port/essbase/jet
      Aceite os campos restantes como padrão e salve.
    3. Obtenha os metadados do SP para configuração do IDP: Na guia Geral do SAML 2.0, forneça os valores apropriados e salve.
    4. Assim que as alterações forem salvas, exporte os metadados do SP para um arquivo XML, como: sp_metadata.xml.
    5. Clique em Publicar Metadados.
  8. Crie o parceiro IDP no WebLogic usando o arquivo oam_fed_idp_metadata.xml, copiado da caixa OAM.
    1. Vá para Security Realms > myrealm > Providers > Authentication > saml_IA > Management > New > New Web Single Sign-On Identity Provider Partner, como: WebSSO-IdP-Partner-oam.
    2. Selecione oam_fed_idp_metadata.xml file e clique em OK.
    3. Para ativar o parceiro IDP, clique em WebSSO-IDP-Partner-oam. Marque a caixa de seleção Ativado e forneça urls de redirecionamento.
  9. Configure o IDP na console do OAM.
    1. Vá para Federation > Identity Provider Management.
    2. Clique em Criar Parceiro do Provedor de Serviços.
    3. Informe o nome.
    4. Certifique-se de que a opção Ativar Parceiro esteja selecionada.
    5. Aceite o SAML 2.0 como protocolo (padrão).
    6. Selecione o arquivo de metadados baixado do WebLogic (SP).
    7. Especifique Definições de Formato de ID de Nome.
    8. Selecione Não Especificado como o formato NameID.
    9. Selecione Atributo de Armazenamento de ID de Usuário como o Valor NameID.
    10. Informe o Atributo do Usuário no registro do usuário LDAP que contém o identificador do usuário. O Oracle Internet Directory é o Armazenamento de Dados do Usuário, o atributo é uid.
  10. Edite $ORACLE_HOME/user_projects/domains/Essbase-Domain/bin/setDomainEnv.sh e adicione -DLOGOUT_URL to the JVM arg EXTRA_JAVA_PROPERTIES conforme mostrado abaixo:
    Antes da alteração:
    EXTRA_JAVA_PROPERTIES="-Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder ${EXTRA_JAVA_PROPERTIES}"
    Após a alteração:
    EXTRA_JAVA_PROPERTIES="-Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder -DLOGOUT_URL=http://OAM-Host:OAM-Port/oam/server/logout ${EXTRA_JAVA_PROPERTIES}"

PARTE C - Atribuir funções

Após a integração do OID, os usuários LDAP incorporados, como o WebLogic, não podem fazer log-in na interface do Essbase. Somente operações REST/MaxL são permitidas. Use o usuário admin LDAP incorporado para atribuir funções do Essbase aos usuários do OID usando REST. Os usuários do OID só podem fazer login no Essbase após a atribuição de função.

Depois que uma função é atribuída a pelo menos um usuário OID (admin), esse usuário OID pode fazer login no Essbase e atribuir funções a outros usuários diretamente por meio da interface.

Exemplo de atribuição baseada em REST, conforme mostrado aqui: curl --insecure -X PUT -u weblogic:samplepass "http://host:9000/essbase/rest/v1/permissions/user1" -H "accept: application/json" -H "Content-Type: application/json" -d "{ \"links\": [ { \"rel\": \"string\", \"href\": \"string\", \"method\": \"string\", \"type\": \"string\" } ], \"id\": \"user1\", \"name\": \"user1\", \"role\": \"service_administrator\", \"group\": false}"

Parte D: Testar SSO do OAM FS

Abrir Essbase e executar
https://<essbase_vm>:<sslportno>/essbase/jet
A solicitação é redirecionada para a página de log-in da Federação do OAM.

Observação:

Se houver um problema de logout, para concluir a ação de logout, feche o navegador.