Integrando o Office 365 com Pré-requisitos de OAM e Id
Este artigo mostra como integrar o OAM (11.1.2.2.0 ou mais recente) como um IdP com o Office 365 para SSO de Federação usando o protocolo SAML 2.0.
A integração abrange:
-
Integração de SSO de Federação de Navegador: Este é o fluxo que o usuário executa ao acessar os recursos www.office365.com por meio de um browser:
-
O www.office365.com solicita que o usuário informe seu endereço de e-mail
-
O servidor detecta que o SSO de Federação deve ser usado para esse domínio e inicia um fluxo de SSO de Federação IdP
-
IdP desafia o usuário, cria uma Asserção SAML e redireciona o usuário para www.office365.com
-
www.office365.com concede acesso ao usuário
-
Integração de e-mail ActiveSync: nesse fluxo, o usuário usa um aplicativo de e-mail configurado para o Office 365
-
Quando o aplicativo de e-mail é iniciado, ele envia as credenciais do usuário (endereço de e-mail e senha IdP) para o Office 365
-
O www.office365.com faz uma conexão direta via SSL com o IdP e usa o protocolo ECP SAML 2.0 para enviar um SAML AuthnRequest e as credenciais do usuário via Autenticação Básica HTTPwww.office365.com
-
O IdP valida essas credenciais e retorna uma Asserção SAML por meio do protocolo ECP
-
O Office 365 concede acesso ao aplicativo de e-mail
É importante observar que a integração com o Office 365 para componentes não SAML 2.0 não funcionará, como:
-
Clientes Lync
-
Aplicativos Móveis OWA
Este artigo é baseado em
-
O teste executado
-
O artigo da Microsoft sobre o suporte SAML 2.0 para o Office 365 e, mais especificamente, o documento técnico que lista as etapas necessárias para configurar o Office 365 (gerenciamento de usuários e estabelecimento de confiança da Federação):
-
Blog da Microsoft
-
Documento técnico que descreve como configurar o Office 365
Visão Geral
Para integração com o Office 365 usando o protocolo SAML 2.0, o OAM deve ser configurado para usar HTTPS/SSL como seus pontos finais com certificados SSL emitidos por CAs conhecidas (se a integração de e-mail ActiveSync for necessária). Se isso não for feito, o Office 365 não aceitará os Metadados SAML 2.0 do OAM ao estabelecer o Federation Trust.
O Office 365 espera que todas as mensagens SAML sejam assinadas usando o algoritmo de compilação SHA-1. Como tal, IdP deve ser configurado para usar SHA-1; caso contrário, o Office 365 SP retornará um erro se SHA-256 for usado. Além disso, o Office 365 requer que o certificado de assinatura do IdP seja incluído na Asserção SAML assinada. Portanto, o OAM precisa ser configurado para incluí-lo em todas as mensagens assinadas de saída do Office 365.
Se a Autenticação Básica HTTP for usada em IdP (conforme é necessário para a integração de e-mail ActiveSync), o domínio WebLogic em que o OAM está em execução precisa ser configurado para não validar a Autenticação Básica HTTP para recursos não seguros.
Para estabelecer confiança entre os dois servidores da Federação, os seguintes dados devem ser recuperados:
-
Os Metadados do Office 365 SP SAML 2.0.
-
Como o Office 365 ainda não suporta o consumo de Metadados SAML 2.0, as seguintes informações devem ser coletadas:
-
O certificado de assinatura IdP do OAM no formato codificado em Base64
-
O valor do Emissor IdP do OAM
-
Os URLs de SSO e Log-out do OAM IdP
Finalmente, para poder estabelecer a confiança da Federação, é necessário o seguinte:
-
Para um determinado usuário, o Office 365 e o diretório usados por
-
O OAM deve ter uma conta para esse usuário
-
O ID exclusivo global do usuário (ou
ImmutableId) e o endereço de e-mail (ouUserPrincipalName) usados na conta do Office 365 devem ser definidos na conta do usuário no OAM -
Para a integração de e-mail ActiveSync, o identificador no endereço de e-mail (ou
UserPrincipalName) usado pelo Office 365 deve ser o nome de usuário usado para Autenticação Básica HTTP no OAM
Habilitação de SSL
Observação importante: O certificado SSL usado para ativar o SSL para o OAM deve ter sido emitido por CAs conhecidas, uma vez que o servidor do Office 365 tenta estabelecer uma conexão direta com o servidor do OAM para o caso de uso ActiveSync.
Há várias maneiras de ativar o SSL nos pontos finais públicos do OAM:
-
Se um balanceador de carga estiver diante do OAM, o SSL/HTTPS poderá ser ativado/configurado no balanceador de carga
-
Se o OHS estiver dianteando o OAM, o OHS será configurado para SSL
-
Se nenhum componente estiver colocando o OAM na frente, o servidor WLS em que o OAM está em execução poderá ser configurado para SSL/HTTPS
Depois que o componente (Balanceador de carga, OHS ou WLS) tiver sido configurado para SSL, a configuração do OAM precisará ser atualizada para fazer referência ao novo ponto final como seu URL público:
-
Vá para a Console de Administração do OAM:
http(s)://oam-admin- host:oam-admin-port/oamconsole -
Navegue até Configuração , Definições do Access Manager
-
Definir o Host do Servidor do OAM como o nome do host do ponto final público
-
Definir a Postagem do Servidor do OAM para a porta SSL do ponto final público
-
Definir o Protocolo do Servidor do OAM como https
-
Clique em Aplicar

Descrição da ilustração Access_Manager_Settings.jpg
Observação: Depois de fazer essas alterações, a recuperação dos Metadados SAML 2.0 do OAM contém os novos URLs https
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 a aplicativos não seguros no domínio WLS em que o OAM está sendo executado. 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 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() -
Iniciar 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çãoautomaticdas credenciais de Autenticação Básica HTTP enviadas a aplicativos não seguros:set('EnforceValidBasicAuthCredentials','false') -
Salvar e ativar as alterações:
save()activate() -
Reinicie os servidores no domínio WLS para que as alterações entrem em vigor
Metadados, Certificado e Emissor SAML 2.0
Para fazer download dos Metadados SAML 2.0 do servidor do Office 365 SP:
-
Abrir um browser
-
Vá para o serviço de publicação de Metadados do Azure/Office 365:
https://nexus.microsoftonline-p.com/federationmetadata/saml20/federationmetadata.xml -
Salvar os Metadados localmente usando o botão Salvar Como no browser
O Certificado de Assinatura IdP do OAM deve ser fornecido como uma string codificada em Base64 para os comandos do Windows Powershell, como uma string única sem espaços/breaks de linha. Para recuperar o Certificado de Assinatura IdP do OAM, execute as seguintes operações para determinar qual entrada keyID é usada para assinar mensagens SAML de saída:
-
Vá para a Console de Administração do OAM:
http(s)://oam-adminhost:oam-admin-port/oamconsole -
Navegue até Configuração , Definições da Federação
-
Observe o
keyIDda Chave de Assinatura para operações de assinatura SAML, no campo Chave de Assinatura

Descrição da ilustração Federation_Settings.jpg
Execute as seguintes etapas para recuperar o certificado dessa entrada keyID:
-
Abrir um browser
-
Vá para o seguinte URL (substitua KEYENTRY_ID pelo nome
keyIDrecuperado na etapa anterior): -
Salvar o certificado em um arquivo de texto.
-
Abra o arquivo com seu editor de texto favorito
-
O conteúdo do arquivo é semelhante a:
-----BEGIN CERTIFICATE----- MIIB+DCCAWGgAwIBAgIBCjANBgkqhkiG9w0BAQQFADAhMR8wHQYDVQQDExZhZGMMHBjYy51cy5vcmFjbGUuY29tMB4XDTE0MDMwNDE5MjAzMloXDTI0MDMwMTE5MjAzMlowITEfMB0GA1UEAxMWYWRjMDBwY2MudXMub3JhY2xlLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAkQOdZCmoOQRuxSvI/74bjnUPq7u7qiGbmaN1D5TB JaM+j5XRixEUI3pidaxlbykaraqVBMJpXJ6ua0QWectv6SdzuqcvH8C5el06NxTs fB6pcvxHGXVAbAvtGr2tOPSL+5HaFQoATpiY3HugTnJfjmHRfOqIo8nUMek6zCtv rKUCAwEAAaNAMD4wDAYDVR0TAQH/BAIwADAPBgNVHQ8BAf8EBQMDB9gAMB0GA DgQWBBQ/7yJbGCbbAnaLEi4ReLwLlvSxJTANBgkqhkiG9w0BAQQFAAOBgQBrMb2i6zcChhVM7a9VVgBr8xljBsPxVWCAYNUYaoyUj9VkD4CpFF9hVX0CpceoSBTiyMQp 3sg0FAYz1PGfjrq7uFEq9iTCwa5J/7k/VSOLKd3IDqzz7w0ZERksgp3OOqOct/wB/wQplaoMZLcRoInVUbGTBDMfqmW5iZ/wjpzItg== —–END CERTIFICATE—– -
Remova a primeira linha
(-----BEGIN CERTIFICATE-----), remova a última linha(-----END CERTIFICATE-----)e modifique o restante do arquivo para remover as quebras de linha. O resultado deve ser um único arquivo de linha (o conteúdo foi encurtado): - Salve o arquivo. Esta linha é fornecida como uma entrada para o comando do Windows Powershell.
http://oam-runtime-host:oam-runtime-port/oamfed/idp/cert?id=<KEYENTRY_ID>
MIIB+DCCAWGgAwIBAgIBCjANBg....InVUbGTBDMfqmW5iZ/wjpzItg==
Execute as seguintes etapas para recuperar o ID do Emissor/Fornecedor do IdP:
-
Vá para a Console de Administração do OAM:
http(s)://oam-admin-host:oam-admin-port/oamconsole -
Navegue até Configuração , Definições da Federação
-
Observe o valor do ID do Emissor/Provedor do OAM no campo ID do Provedor

Descrição da ilustração Retrieve_IDP.jpg
Os URLs de SSO e Log-out do OAM IdP são (Observação: Certifique-se de ter os pontos finais públicos, que são os URLs que o usuário final usa):
-
URL de SSO do Browser:
http(s)://oam-public-host:oam-publicport/oamfed/idp/samlv20 -
URL DO ECP SSO:
http(s)://oam-public-host:oam-publicport/oamfed/idp/soap -
URL de Log-out:
http(s)://oam-public-host:oam-publicport/oamfed/idp/samlv20
Se você tiver dúvidas, poderá recuperar esses URLs dos metadados IdP:
-
Abrir um browser
-
Vá para
http(s)://oam-public-host:oam-public-port/oamfed/idp/metadata -
O URL SSO do Browser será o atributo Location do XML
Element EntityDescriptor , IDPSSODescriptor , SingleSignOnService for which the Binding attribute is set to urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect: <md:EntityDescriptor ...> ... <md:IDPSSODescriptor ...> ... <md:SingleSignOnService> Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTPRedirect" Location="https://acme.com/oamfed/idp/samlv20"/> ... </md:IDPSSODescriptor> ... </md:EntityDescriptor>
-
O URL ECP SSO será o atributo Location do XML
Element EntityDescriptor , IDPSSODescriptor , SingleSignOnService for which the Binding attribute is set to urn:oasis:names:tc:SAML:2.0:bindings:SOAP: <md:EntityDescriptor ...> ... <md:IDPSSODescriptor ...> ... <md:SingleSignOnService> Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP"Location="https://acme.com/oamfed/idp/soap"/> ... </md:IDPSSODescriptor> ... </md:EntityDescriptor> -
O URL de Log-out será o atributo Local do XML
Element EntityDescriptor , IDPSSODescriptor , SingleLogoutService for which the Binding attribute is set to urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect: <md:EntityDescriptor ...> ... <md:IDPSSODescriptor ...> ... <md:SingleLogoutServiceBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTPRedirect" Location="https://acme.com/oamfed/idp/samlv20"ResponseLocation="https://acme.com/oamfed/idp/samlv20"/> ... </md:IDPSSODescriptor> ... </md:EntityDescriptor>
SHA-256 x SHA-1
Depois de configurar a Federação entre o OAM e o Office 365, configure o OAM para usar SHA-1 para assinaturas do parceiro SP do Office 365.
Certificado de Assinatura do OAM em Mensagens de Assinatura
Depois de configurar a Federação entre o OAM e o Office 365, você deverá configurar o OAM para que o servidor de Federação inclua seu certificado de assinatura X.509 em todas as mensagens SAML assinadas de saída para o parceiro do Office 365 SP.
Conta de Usuário
As contas de usuário no Office 365 e no diretório OAM devem ser sincronizadas para suportar os vários fluxos de Federação (SSO do Browser e ActiveSync):
-
Para um determinado usuário, o Office 365 e o diretório usados pelo OAM devem ter uma conta para esse usuário
-
O ID exclusivo global do usuário (ou
ImmutableId) e o endereço de e-mail (ouUserPrincipalName) usados na conta do Office 365 devem ser definidos na conta do usuário no OAM -
Para a integração de e-mail ActiveSync, o
userID(ouImmutableId) usado pelo Office 365 deve ser o nome de usuário usado para Autenticação Básica HTTP no OAM: -
O identificador no endereço de e-mail (ou
UserPrincipalName) é a parte do endereço de e-mail antes do caractere@. Por exemplo, seUserPrincipalNamefor alice.appleton@acme.com, o identificador seráalice.appleton -
Esse identificador é o nome do usuário da Autenticação Básica HTTP. Por exemplo,
alice.appleton -
O Atributo de ID do Usuário usado na configuração do Armazenamento de Identidades do OAM para o Esquema de Autenticação Básica HTTP do OAM deve corresponder ao nome do usuário de Autenticação Básica HTTP recebido. Por exemplo, o Atributo de ID do Usuário usado no Armazenamento de Identidades do OAM para o elemento do usuário deve ser alice.appleton.
ImmutableId
O ImmutableId é um atributo usado pelo Office 365 para fazer referência exclusiva a um usuário. Mesmo que o registro do usuário seja excluído posteriormente, nenhum outro usuário criado subsequentemente poderá ter o mesmo valor ImmutableId.
Geralmente, um ImmutableId é
-
Um identificador exclusivo aleatório (como 2848cfc7f6914af2a550c024bcbf0c6e)
-
Ou um nome de usuário que é considerado exclusivo: nenhum outro usuário terá o mesmo nome de usuário, mesmo que o usuário original tenha sido excluído do sistema.
UserPrincipalName
O UserPrincipalName (ou UPN) é um identificador que tem o formato de um endereço de e-mail. O nome de domínio do endereço de e-mail precisa ser mapeado para o nome usado no domínio do Office 365.
Por exemplo, se o Office 365 tiver sido configurado para o domínio acme.com do SSO de Federação, todos os usuários com um endereço de e-mail semelhante a identiSer@acme.com poderão fazer o SSO de Federação com o IdP configurado para esse domínio do Office 365.
ActiveSync Requisitos
Em um fluxo de e-mail ActiveSync:
-
O servidor de e-mail do Office 365 faz uma conexão direta via SSL com o IdP e usa o protocolo ECP SAML 2.0 para enviar um SAML AuthnRequest e as credenciais do usuário via Autenticação Básica HTTP
-
O IdP valida essas credenciais e retorna uma Asserção SAML por meio do protocolo ECP
-
O Office 365 concede acesso ao aplicativo de e-mail
Nesse fluxo, o usuário irá:
-
Forneça seu endereço de e-mail para o Office 365 (alice.appleton@acme.com, por exemplo)
-
O Office 365 usa o identificador antes do caractere '@' como nome de usuário de Autenticação Básica HTTP (alice.appleton, por exemplo)
-
IdP deve ser capaz de validar as credenciais com o nome de usuário sendo o identificador no endereço de e-mail (alice.appleton, por exemplo)
Requisitos de Nome de Usuário
Com base no acima, os requisitos para a autenticação do usuário em IdP são:
| Browser |
Nome do Usuário de Autenticação |
Nome do Usuário de Autenticação Básica HTTP em IdP |
|---|---|---|
| SSO de Federação com base no Browser | Tudo | N/D |
SSO de Federação com base no Browser + ActiveSync ECP |
Tudo | Identificador do endereço de e-mail |
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.
Integrating Office 365 with OAM and Id Pre-Requisites
F60937-01
September 2022
Copyright © 2022, Oracle and/or its affiliates.