Índice
Objetivo
Este documento demonstra como integrar o sistema RM com o AD FS como provedor de Identidade.
Introdução
O ADFS (Active Diretory Federation Services) permite o compartilhamento da informação de identidade em um ampla variedade de aplicativos utilizando o padrão SAML que é suportado na linha RM.
Configurando o Aplicativo Confiável no ADFS
Abaixo Abaixo são demonstrados os passos para a criação da entidade confiável para a Linha RM dentro do ADFS.
Informações |
---|
|
Deck of Cards |
---|
id | Configurando o Aplicativo Confiável no ADFS |
---|
| Card |
---|
| Ao acessar a configuração do AD FS, selecione "Add Relying Party Trust" para acesso ao assistente de configuração. ![](/download/attachments/344475592/image2018-3-14_10-34-23.png?version=1&modificationDate=1521034464000&api=v2&effects=drop-shadow)
|
Card |
---|
| Selecione a opção "Enter data about the relying party manually" para inserir os dados sobre a Linha RM. ![](/download/attachments/344475592/image2018-3-14_10-46-14.png?version=1&modificationDate=1521035178000&api=v2&effects=drop-shadow)
Acione o botão "Next". |
Card |
---|
| Informe um nome para identificar o aplicativo. ![](/download/attachments/344475592/image2018-3-14_10-54-6.png?version=1&modificationDate=1521035647000&api=v2&effects=drop-shadow)
|
Card |
---|
| Selecione a opção: "AD FS profile". ![](/download/attachments/344475592/image2018-3-14_10-57-10.png?version=1&modificationDate=1521035831000&api=v2&effects=drop-shadow)
|
Card |
---|
| Neste ponto, acione "Next". ![](/download/attachments/344475592/image2018-3-14_10-58-55.png?version=1&modificationDate=1521035938000&api=v2)
|
Card |
---|
| Neste passo, deve-se informar a URL do serviço responsável por processar o SingleSignOn do RM: https://<Endereço do Host>/RMCloudPass/SSOSaml2 O AD FS exige que este serviço esteja exposto via SSL. Mais detalhes sobre como configurar o RM Host para expor serviços via SSL em: Habilitar SSL/TLS no Host ![](/download/attachments/344475592/image2018-3-14_11-2-29.png?version=1&modificationDate=1521036150000&api=v2&effects=drop-shadow)
|
Card |
---|
| Selecione a opção: "I do not want to configure multifactor". ![](/download/attachments/344475592/image2018-3-14_11-5-53.png?version=1&modificationDate=1521036354000&api=v2&effects=drop-shadow)
|
Card |
---|
| Escolha a opção "Permit all users to access thie relying party". ![](/download/attachments/344475592/image2018-3-14_11-9-13.png?version=1&modificationDate=1521036555000&api=v2&effects=drop-shadow)
|
Card |
---|
| Neste ponto, acione "Next". ![](/download/attachments/344475592/image2018-3-14_12-9-1.png?version=1&modificationDate=1521040142000&api=v2&effects=drop-shadow)
|
Card |
---|
| Selecione a caixa de seleção para abrir a edição de regras. ![](/download/attachments/344475592/image2018-3-14_12-9-34.png?version=1&modificationDate=1521040176000&api=v2)
|
|
|
Configurando as Regras de Declaração (RM Portal)
Informações |
---|
|
Deck of Cards |
---|
id | Configurando o Aplicativo Confiável no ADFS |
---|
| Card |
---|
| Selecione a opção: "Add rule". ![](/download/attachments/344475592/image2018-3-14_12-10-18.png?version=1&modificationDate=1521040220000&api=v2&effects=drop-shadow)
|
Card |
---|
| Selecione a opção: "Send LDAP Attributes as Claims". ![](/download/attachments/344475592/image2018-3-14_12-10-48.png?version=1&modificationDate=1521040249000&api=v2&effects=drop-shadow)
|
Card |
---|
| Defina um nome para a regra e selecione o mapeamento conforme a imagem abaixo. O mapeamento para o SSO no RM é feito pelo e-mail do usuário. ![](/download/attachments/344475592/image2018-3-14_12-11-17.png?version=1&modificationDate=1521040279000&api=v2&effects=drop-shadow)
|
Card |
---|
| Selecione a opção: "Add rule". ![](/download/attachments/344475592/image2018-3-14_12-10-18.png?version=1&modificationDate=1521040220000&api=v2&effects=drop-shadow)
|
Card |
---|
| Selecione a opção: "Tranform an Incoming Claim". ![](/download/attachments/344475592/image2018-3-14_12-14-23.png?version=1&modificationDate=1521040466000&api=v2&effects=drop-shadow)
|
Card |
---|
| Defina um nome para a regra e selecione os parâmetros conforme a imagem abaixo. ![](/download/attachments/344475592/image2018-3-14_12-15-8.png?version=1&modificationDate=1521040510000&api=v2&effects=drop-shadow)
|
|
|
Configurando as Regras de Declaração (MDI - RM.exe)
Informações |
---|
|
Deck of Cards |
---|
id | Configurando o Aplicativo Confiável no ADFS |
---|
| Card |
---|
| Selecione a opção: "Add rule". ![](/download/attachments/344475592/image2018-3-14_12-10-18.png?version=1&modificationDate=1521040220000&api=v2&effects=drop-shadow)
|
Card |
---|
| Selecione a opção: "Send LDAP Attributes as Claims". ![](/download/attachments/344475592/image2018-3-14_12-10-48.png?version=1&modificationDate=1521040249000&api=v2&effects=drop-shadow)
|
Card |
---|
| Defina um nome para a regra e selecione o mapeamento conforme a imagem abaixo. O mapeamento para o SSO no RM é feito pelo e-mail do usuário. ![](/download/attachments/344475592/image2019-6-18_14-39-4.png?version=1&modificationDate=1560879545050&api=v2&effects=drop-shadow)
|
Card |
---|
| Selecione a opção: "Add rule". ![](/download/attachments/344475592/image2018-3-14_12-12-13.png?version=1&modificationDate=1521040334000&api=v2)
|
Card |
---|
| Selecione a opção: "Tranform an Incoming Claim". ![](/download/attachments/344475592/image2018-3-14_12-14-23.png?version=1&modificationDate=1521040466000&api=v2)
|
Card |
---|
| Defina um nome para a regra e selecione os parâmetros conforme a imagem abaixo. ![](/download/attachments/344475592/image2019-6-18_14-45-42.png?version=1&modificationDate=1560879942197&api=v2&effects=drop-shadow)
|
Card |
---|
| Selecione a opção: "Add rule". ![](/download/attachments/344475592/image2018-3-14_12-12-13.png?version=1&modificationDate=1521040334000&api=v2&effects=drop-shadow)
|
Card |
---|
| Selecione a opção "Send Claims Using a Custom Rule". ![](/download/attachments/344475592/image2019-6-18_14-48-44.png?version=1&modificationDate=1560880124297&api=v2&effects=drop-shadow)
|
Card |
---|
| Defina um nome para a regra e escreva a regra de declaração customizada conforme a imagem abaixo: ![](/download/attachments/344475592/image2019-6-18_14-51-20.png?version=1&modificationDate=1560880281087&api=v2&effects=drop-shadow)
Bloco de código |
---|
language | c# |
---|
title | RelayState |
---|
linenumbers | true |
---|
| => issue(Type = "RelayState", Value = "samlexecutable"); |
|
Card |
---|
| Selecione a opção: "Add rule". ![](/download/attachments/344475592/image2018-3-14_12-12-13.png?version=1&modificationDate=1521040334000&api=v2&effects=drop-shadow)
|
Card |
---|
| Selecione a opção "Send Claims Using a Custom Rule". ![](/download/attachments/344475592/image2019-6-18_14-48-44.png?version=1&modificationDate=1560880124297&api=v2&effects=drop-shadow)
|
Card |
---|
| Defina um nome para a regra e escreva a regra de declaração customizada conforme a imagem abaixo: ![](/download/attachments/344475592/image2019-6-18_15-1-52.png?version=1&modificationDate=1560880912103&api=v2&effects=drop-shadow)
Bloco de código |
---|
language | c# |
---|
title | RelayState |
---|
linenumbers | true |
---|
| => issue(Type = "ExecutablePath", Value = "C:\totvs\CorporeRM\RM.Net\RM.exe"); |
|
|
|
Integração SAML no RM
Abaixo temos um exemplo do metadados SAML que deve ser importado no RM:
Bloco de código |
---|
language | xml |
---|
firstline | 1 |
---|
title | Metadata |
---|
linenumbers | true |
---|
|
<?xml version="1.0" encoding="UTF-8"?>
<EntityDescriptor xmlns="urn:oasis:names:tc:SAML:2.0:metadata" entityID="http://<URI do Portal Corpore .NET>" ID="_32a417e2-1378-405d-8757-94bcba2db823">
<IDPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
<KeyDescriptor use="signing">
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
<X509Data>
<X509Certificate><Conteúdo do Certificado Proveniente do Arquivo Metadata></X509Certificate>
</X509Data>
</KeyInfo>
</KeyDescriptor>
<SingleSignOnService Location="https://<Servidor AD FS>/adfs/ls/idpinitiatedsignon.aspx?loginToRp=<Identificador do RP>" Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"/>
<SingleSignOnService Location="https://<Servidor AD FS>/adfs/ls/idpinitiatedsignon.aspx?loginToRp=Totvs" Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect"/>
<SingleLogoutService Location="https://<Servidor AD FS>/adfs/ls/?wa=wsignout1.0" Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect"/>
<SingleLogoutService Location="https://<Servidor AD FS>/adfs/ls/?wa=wsignout1.0" Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" />
</IDPSSODescriptor>
</EntityDescriptor> |
Repare que as URI's devem estar configuradas de acordo com seu ambiente.
Aviso |
---|
|
- O atributo entityID do elemento EntityDescriptor deve estar definido com a URL do Portal Corpore.NET.
- A tag X509Certificate deve ser preenchida com o certificado em base64 proveninente do arquivo de metadata, disponível em https://<Servidor AD FS>/FederationMetadata/2007-06/FederationMetadata.xml
- Nas URI's de SingleSignOnService, o parâmetros LoginToRp deve receber o nome da Relying Party configurado no Passo 3 do Item "Configurando o aplicativo confiável no AD FS".
|
- Importando o metadado do AD FS no RM
Após obter o metadados personalizado, ele deve ser importado no RM em: Ambiente → Parâmetros → Parâmetros Globais → Integração SAML
Caso queira integrar o ADFS com a MDI, via SAML, adicionar o metadado no campo "Metadata Identity Provider - RM.exe"
![](/download/attachments/344475592/image2019-8-16_19-0-4.png?version=1&modificationDate=1565992804863&api=v2&effects=drop-shadow)
Caso queira integrar o ADFS com o Portal, via SAML, adicionar o metadado no campo "Metadata Identity Provider - Portal".
![](/download/attachments/344475592/image2018-3-14_14-43-56.png?version=1&modificationDate=1521049437000&api=v2)
Informações |
---|
|
Existe a possibilidade de integrar o ADFS com a MDI e o Portal de forma simultânea, basta adicionar o metadado nos campos "Metadata Identity Provider - RM.exe" e "Metadata Identity Provider - Portal". |