Ir para o conteúdo

Configurando App Builder como um Provedor de Identidade

App Builder pode servir tanto como um Provedor de Serviço SAML (SP) quanto como um Provedor de Identidade SAML (IdP). Isso permite que uma instância do Viny (o IdP) autentique usuários em nome de outra instância (o SP).

Há quatro tarefas principais envolvidas:

  1. Gere um certificado de assinatura.
  2. Crie um provedor de segurança SAML IdP.
  3. Crie um provedor de segurança SAML SP.
  4. Teste

Estas instruções fazem as seguintes suposições:

  1. Você tem pelo menos duas instâncias de App Builder.
  2. Você tem acesso de administrador a cada App Builder instância.

As instruções abaixo se referirão às seguintes propriedades:

Exemplo Notas
App Builder uRL do IdP https://idp.example.com/App Builder/ A URL raiz do aplicativo do App Builder instância servindo como IdP. Inclui a barra final.
App Builder uRL SP https://sp.example.com/App Builder/ A URL raiz do aplicativo do App Builder instância servindo como SP. Inclui a barra final.
Nome do provedor de segurança IdP App Builder idP Cada App Builder provedor de segurança recebe um nome lógico. Este nome é usado no Request Redirect Endpoint (veja abaixo).
Nome do Provedor de Segurança SP App Builder sP Cada App Builder provedor de segurança recebe um nome lógico. Este nome é usado no URL do Assertion Consumer Service (ACS) (veja abaixo). Este é o nome que os usuários verão no formulário de login.
Solicitar redirecionamento de Endpoint https://idp.example.com/App Builder/entrar-App Builder idP App Builder provisiona automaticamente um Request Redirect Endpoint para provedores de segurança SAML IdP. Observe que o IdP Security Provider Name (acima) aparece no Request Redirect Endpoint.
URL do Serviço de Asserção ao Consumidor https://sp.example.com/App Builder/entrar-App Builder sP App Builder provisiona automaticamente um endpoint Assertion Consumer Service (ACS) para provedores de segurança SAML SP. Observe que o SP Security Provider Name aparece no endpoint ACS.

Gerar um Certificado de Assinatura

No SAML Single Sign-On (SSO), a confiança é estabelecida por meio de certificados de assinatura. O processo para adquirir um certificado está fora do escopo deste documento. No entanto, para fins ilustrativos, os comandos a seguir demonstram como gerar um certificado compatível usando o utilitário de linha de comando OpenSSL.

O comando a seguir gera uma chave privada codificada em PEM (key.pem) e certificado autoassinado (cert.pem):

$ openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -nodes -days 1095 -subj "/CN=idp.example.com/O=App Builder idP"

Você precisará do conteúdo do cert.pem arquivo para configurar o App Builder provedor de segurança SP.

O comando a seguir gera um arquivo PKCS#12 (cert.pfx) contendo a chave privada e o certificado:

$ openssl pkcs12 -export -in cert.pem -inkey key.pem -out cert.pfx

Você será solicitado a fornecer uma senha. Você precisará da senha para configurar o App Builder provedor de segurança IdP.

Finalmente, o comando a seguir codifica em base64 o arquivo PKCS#12:

$ openssl base64 -in cert.pfx -out cert.txt -A

Você precisará do conteúdo do cert.txt arquivo para configurar o App Builder provedor de segurança IdP.

Crie um Provedor de Segurança SAML IdP

Para criar um provedor de segurança SAML IdP, comece entrando na instância de App Builder que servirá como IdP.

  1. Navegue até o IDE
  2. Clique no botão Provedores de Segurança
  3. No painel Autenticação do Usuário, clique no botão + Autenticação do Usuário
  4. Forneça o seguinte:

    • Nome: Nome do Provedor de Segurança IdP, por exemplo. App Builder idP
    • Tipo: Provedor de identidade SAML
  5. Clique no botão Salvar

  6. No painel Propriedades, clique no botão + Propriedade para adicionar cada uma das seguintes propriedades:

    • AssertionConsumerService: URL do serviço do consumidor de asserção, por exemplo https://sp.example.com/App Builder/signin-App Builder sP.
    • Público: App Builder uRL SP, por exemplo https://sp.example.com/App Builder/.
    • Emissor: App Builder uRL do IdP, por exemplo https://idp.example.com/App Builder/.
    • Destinatário: URL do serviço de consumidor de asserção, por exemplo https://sp.example.com/App Builder/signin-App Builder sP.
    • SigningCertificate: arquivo PKCS#12 codificado em base64 (consulte Gerar um certificado de assinatura).
    • SigningCertificatePassword: senha do certificado de assinatura (consulte Gerar um certificado de assinatura).
  7. No painel Claims, clique no botão + Claim para mapear cada uma das seguintes propriedades:

    • Name: http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
    • Grupo: http://schemas.xmlsoap.org/claims/Group
  8. No painel Provedor, clique no botão Editar

  9. Marque a opção Habilitado
  10. Clique no botão Salvar

As etapas acima incluem uma reivindicação de grupo. A reivindicação de grupo é usada para passar a associação de grupo para o SP. No entanto, os grupos não são passados por padrão. Para passar um grupo, você deve adicioná-lo ao provedor de segurança IdP. Por exemplo:

  1. Navegue até o IDE
  2. Clique no botão Gerenciamento de usuários
  3. Clique no botão Identidades
  4. Selecione o provedor de segurança IdP, por exemplo. App Builder idP
  5. No painel Grupos de Provedores, clique no botão + Grupo
  6. Forneça um Nome, por exemplo. Administrators
  7. Selecione o Grupo, por exemplo Administrators
  8. Clique no botão Salvar

Crie um Provedor de Segurança SAML SP

Para criar um provedor de segurança SAML SP, comece entrando na instância de App Builder que servirá como SP.

  1. Navegue até o IDE
  2. Clique no botão Provedores de Segurança
  3. No painel Autenticação do Usuário, clique no botão + Autenticação do Usuário
  4. Forneça o seguinte:

    • Nome: Nome do Provedor de Segurança SP, por exemplo. App Builder sP.
    • Tipo: SAML
    • Provisionamento de usuário: marque para habilitar o provisionamento de usuário.
    • Mostrar no formulário de login: marque para mostrar o provedor de autenticação no formulário de login.
  5. Clique no botão Salvar

  6. No painel Propriedades, clique no botão + Propriedade para adicionar cada uma das seguintes propriedades:

    • Público: App Builder uRL SP, por exemplo https://sp.example.com/App Builder/.
    • Emissor: App Builder uRL do IdP, por exemplo https://idp.example.com/App Builder/.
    • Destinatário: URL do serviço de consumidor de asserção, por exemplo https://sp.example.com/App Builder/signin-App Builder sP.
    • RequestRedirectEndpoint: Solicitar Endpoint de redirecionamento, por exemplo https://idp.example.com/App Builder/signin-App Builder idP.
    • SigningCertificate: certificado codificado em PEM (consulte Gerar um certificado de assinatura).
  7. No painel Claims, clique no botão + Claim para mapear cada uma das seguintes propriedades:

    • Name: http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
    • Grupo: http://schemas.xmlsoap.org/claims/Group
  8. No painel Provedor, clique no botão Editar

  9. Marque a opção Habilitado
  10. Clique no botão Salvar

As etapas acima incluem uma reivindicação de grupo. A reivindicação de grupo é usada para mapear reivindicações para grupos de provedores de segurança. No entanto, os grupos de provedores de segurança não são mapeados para App Builder grupos de segurança por padrão. Para mapear um grupo de provedores de segurança para an App Builder security group:

  1. Navegue até o IDE
  2. Clique no botão User Management
  3. Clique no botão Identities
  4. Selecione o provedor de segurança SP, por exemplo. App Builder sP
  5. No painel Grupos de Provedores, clique no botão + Grupo
  6. Forneça um Nome, por exemplo. Administrators
  7. Selecione o Grupo, por exemplo Administrators
  8. Clique no botão Salvar

Teste

Para testar, comece abrindo um navegador no modo Incógnito/Privado.

  1. Navegue até o App Builder uRL SP, por exemplo https://sp.example.com/App Builder/.
  2. No formulário de login, clique na opção para entrar com o App Builder sP, por exemplo App Builder sP. Você será redirecionado para o App Builder formulário de login do IdP.
  3. Entre no App Builder instância IdP. Você será redirecionado de volta para o App Builder sP.

Se o teste for bem-sucedido, você será conectado ao App Builder instância SP.

Solução de Problemas

Opção "entrar Com..." Ausente no Formulário de Login

Se a opção "Entrar com..." estiver faltando no formulário de login, o App Builder o provedor de segurança SP não está habilitado ou a opção Show On Login Form não foi marcada.

Erro 404 Não Encontrado Após Clicar em "entrar Com..."

Se você receber um 404 Not Founderro após clicar no botão "Entrar com..." no formulário de login, isso pode indicar que o App Builder o IdP Security Provider não está habilitado, está com nome incorreto ou está configurado incorretamente. Para evitar interrupção do serviço, App Builder desabilitará o provedor de segurança em tempo de execução se detectar uma configuração incorreta.