Í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 são demonstrados os passos para a criação da entidade confiável para a Linha RM dentro do ADFS.

    Ao acessar a configuração do AD FS, selecione "Add Relying Party Trust" para acesso ao assistente de configuração.

    Selecione a opção "Enter data about the relying party manually" para inserir os dados sobre a Linha RM.

    Acione o botão "Next".

    Informe um nome para identificar o aplicativo.

    Selecione a opção: "AD FS profile".

    Neste ponto, acione "Next".

    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

    Selecione a opção: "I do not want to configure multifactor".

    Escolha a opção "Permit all users to access thie relying party".

    Neste ponto, acione "Next".

    Selecione a caixa de seleção para abrir a edição de regras.

    Configurando as Regras de Declaração (RM Portal)


      Selecione a opção: "Add rule".

      Selecione a opção: "Send LDAP Attributes as Claims".

      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.

      Selecione a opção: "Add rule".

      Selecione a opção: "Tranform an Incoming Claim".

      Defina um nome para a regra e selecione os parâmetros conforme a imagem abaixo.

      Para o Portal CorporeRM não é necessário configurar o RelaySate.

      Mas, para usar o portal FrameHTML, é necessário configurá-lo, de acordo com a regra abaixo, no seguinte formato:

      state|loginPage|returnUrl
      Ex: webapi|http://localhost:8090/RM/Login/Login.aspx|/web/app/RH/PortalMeuRH/

      obs1: state para FrameHTML deve ser exclusivamente webapi.
      obs2: até a versão 12.1.29 continua necessário mandar o ExecutablePath na requisição Saml.

      Configurando as Regras de Declaração (MDI - RM.exe)


        Selecione a opção: "Add rule".

        Selecione a opção: "Send LDAP Attributes as Claims".

        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.

        Selecione a opção: "Add rule".

        Selecione a opção: "Tranform an Incoming Claim".

        Defina um nome para a regra e selecione os parâmetros conforme a imagem abaixo.

        Selecione a opção: "Add rule".

        Selecione a opção "Send Claims Using a Custom Rule".

        Defina um nome para a regra e escreva a regra de declaração customizada conforme a imagem abaixo:

        RelayState
        => issue(Type = "RelayState", Value = "samlexecutable");

        Selecione a opção: "Add rule".

        Selecione a opção "Send Claims Using a Custom Rule".

        Defina um nome para a regra e escreva a regra de declaração customizada conforme a imagem abaixo:

        RelayState
        => issue(Type = "ExecutablePath", Value = "C:\totvs\CorporeRM\RM.Net\RM.exe");

        Integração SAML no RM


        • Metadado do ADFS

                  Abaixo temos um exemplo do metadados SAML que deve ser importado no RM:

        Metadata
        <?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.

        Atenção

        • 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"

                  Caso queira integrar o ADFS com o Portal, via SAML, adicionar o metadado no campo "Metadata Identity Provider - Portal".

        Observação

        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".

        Produto: Framework

        Versão: 12.1.18 e superiores

        Processo: Integração SAML

        Status: Finalizado

        Data: