5.6.3. Configuração do Provedor de Identidade

O Identity Provider (IDP - Provedor de Identidade) é uma instância do servidor do JBoss EAP.

Procedimento 5.1. Configuração do Identity Provider (IDP - Provedor da Identidade)

  1. Configure a segurança do aplicativo da web para o IDP

    Configure um aplicativo da web como provedor da Identidade.

    Nota

    Com o objetivo de usar a segurança do aplicativo da web baseado no FORMULÁRIO uma vez que o fornece a habilidade de personalizar a página de login.
    Segue abaixo uma amostra da configuração web.xml

    Exemplo 5.6. Configuração web.xml para o IDP

    <display-name>IDP</display-name>
    <description>IDP</description>
    <!-- Define a security constraint that gives unlimited access to images -->
    <security-constraint>
      <web-resource-collection>
      <web-resource-name>Images</web-resource-name>
      <url-pattern>/images/*</url-pattern>
    </web-resource-collection>
    </security-constraint>
    <!-- Define a Security Constraint on this Application -->
    <security-constraint>
      <web-resource-collection>
      <web-resource-name>IDP</web-resource-name>
      <url-pattern>/*</url-pattern>
    </web-resource-collection>
      <auth-constraint>
      <role-name>manager</role-name>
    </auth-constraint>
    </security-constraint>
    <!-- Define the Login Configuration for this Application -->
    <login-config>
      <auth-method>FORM</auth-method>
      <realm-name>IDP Application</realm-name>
      <form-login-config>
        <form-login-page>/jsp/login.jsp</form-login-page>
        <form-error-page>/jsp/loginerror.jsp</form-error-page>
      </form-login-config>
    </login-config>
    <!-- Security roles referenced by this web application -->
    <security-role>
     <description>
      The role that is required to log in to the IDP Application
     </description>
     <role-name>manager</role-name>
    </security-role>
    </web-app>
    
    
  2. Configuração das Válvulas IDP

    Crie um arquivo context.xml no diretório WEB-INF de seu aplicativo da web IDP para configuração das válvulas para o IDP. Segue abaixo uma amostra do arquivo context.xml.

    Exemplo 5.7. Configuração do Arquivo context.xml para as Válvulas IDP

    <context>
      <Valve className="org.picketlink.identity.federation.bindings.tomcat.idp.IDPWebBrowserSSOValve"/>
    </context>
    
    
  3. Configure o Arquivo da Configuração PicketLink (picketlink.xml)

    Configure o picketlink.xml no diretório WEB-INF de seu aplicativo da web IDP. Neste arquivo de configuração você fornece o URL que é adicionado como um emissor nas declarações SAML2 de saída aos provedores de serviço e o IDP. Segue abaixo uma amostra da configuração picketlink.xml.

    Exemplo 5.8. Configuração picketlink-idfed.xml

    <PicketLink xmlns="urn:picketlink:identity-federation:config:2.1">
            <PicketLinkIDP xmlns="urn:picketlink:identity-federation:config:2.1">
                    <IdentityURL>http://localhost:8080/idp/</IdentityURL>
            </PicketLinkIDP>
            <Handlers xmlns="urn:picketlink:identity-federation:handler:config:2.1">
                    <Handler
                            class="org.picketlink.identity.federation.web.handlers.saml2.SAML2IssuerTrustHandler" />
                    <Handler
                            class="org.picketlink.identity.federation.web.handlers.saml2.SAML2LogOutHandler" />
                    <Handler
                            class="org.picketlink.identity.federation.web.handlers.saml2.SAML2AuthenticationHandler" />
                    <Handler
                            class="org.picketlink.identity.federation.web.handlers.saml2.RolesGenerationHandler" />
            </Handlers>
    </PicketLink>