---
title: 4Biz Autologin - SSO
slug: helium/4biz-autologin-sso
description: Learn how to create a user in Active Directory and configure the Wildfly server with this comprehensive document. Follow step-by-step instructions for setting a password, enabling 256-bit encryption, and configuring Service Principal Name (SPN). Additiona
createdAt: 2021-10-01T15:51:01.000Z
---

:::BlockQuote
**Branchs**:
   Sso (itsm)
   Spnego 1.0 (artifactory)
:::

## Criar usuário AD

1. Acesse `Criar usuário em Usuários e Computadores do Active Directory`,   &#x20;conforme a figura abaixo:

::Image[]{src="https://api.archbee.com/api/optimize/pu5VMc-2TW3GQX4ly5Xp7/ZqayODZUzfn4qnIq4pcRm_image.png" size="68" width="574" height="684" position="center" showCaption="false"}

2\. Criar uma senha: 

::Image[]{src="https://api.archbee.com/api/optimize/pu5VMc-2TW3GQX4ly5Xp7/JP1T2Pi0MpEieQTi_cTss_image.png" size="54" width="397" height="306" position="center" showCaption="false"}

3\. Clicar no lado direito do mouse, no botão usuário/propriedades:

::Image[]{src="https://api.archbee.com/api/optimize/pu5VMc-2TW3GQX4ly5Xp7/LDIPs7rnOayl5yI8nRjt5_image.png" size="54" width="472" height="488" position="center" showCaption="false"}

4\. Selecionar a opção "**Esta conta oferece suporte para criptografia de 256 bits**", aplicar e marcar "**OK**", conforme a figura abaixo:

::Image[]{src="https://api.archbee.com/api/optimize/pu5VMc-2TW3GQX4ly5Xp7/BDikGJqIovklIdKf__pea_image.png" size="54" width="408" height="459" position="center" showCaption="false"}

5\. Abrir o "**ADSI Editar**". Logo após, conectar no AD, clicar em usuários e&#x20;localizar o usuário recém criado, conforme a figura abaixo:

![](https://api.archbee.com/api/optimize/pu5VMc-2TW3GQX4ly5Xp7/WA4V8pU8EZ9BznaiqSraE_image.png)

6\. Clicar no botão direito do mouse e selecionar a opção Propriedades.&#x20;Logo após, procurar o ***servicePrincipalName*** (sigla de SPN);

7\. Adicionar <font color="#2166ae"><u>**HTTP/hom-itsm.4biz.com.br**</u></font>, clicar em "**OK**" para efetuar a&#x20;operação, conforme a figura abaixo:

![](https://api.archbee.com/api/optimize/pu5VMc-2TW3GQX4ly5Xp7/cs9r0VnVVQMAAbPGDTZjr_image.png)

8\. Abrir o **CMD** como Administrador e colocar os seguintes comandos.&#x20;Lembrar que o primeiro seta o **SPN** e o segundo gera o **Keytab&#x20;**(o que&#x20;será utilizado no Wildfly):

:::BlockQuote
setspn -s HTTP/hom-itsm.run2biz.com.br 4biz2

ktpass / princ HTTP/hom-itsm.centralit.com.br /mapuser 4biz2  /passcentral\@123 /ptype KRB5\_NT\_Principal/out4biz2.keytab /crypto ALL
:::

9\. Realizado os passos acima, o **AD** estará configurado. 

## Configurar o servidor Wildfly

1. Copiar o **war** gerado da branch **sso**;
2. Copiar o arquivo krb5.conf (validar as informações de acordo com o AD) para a pasta standalone/configuration (wildfly):

```shell
    [libdefaults]
    default_tkt_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96 rc4-hmac
    default_tgs_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96 rc4-hmac
    permitted_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96 rc4-hmac
    [realms]
```

```shell
    citgosrv004.cit.local  = {
    kdc = 4bizsrv.run2bizsrv.bigdata-team.com
    default_domain = 4bizsrv.run2bizsrv.bigdata-team.com }     
```

```shell
    [domain_realm]
    .4bizsrv.run2bizsrv.bigdata-team.com = run2bizsrv.run2bizsrv.bigdata-team.com
```

1. Copiar o arquivo login.conf (validar as informações de acordo com o AD) para a pasta standalone/configuration (wildfly):

```shell
    custom-client {
    com.sun.security.auth.module.Krb5LoginModule required
    storeKey=true
    useKeyTab=true
    keyTab="file:///opt/wildfly-12.0.0.Final/standalone/configuration/lightkeytab.keytab"
    principal=HTTP/light-desenvolvimento.cloud4biz.com\@4bizSRV.BIGDATA-TEAM.COM;
    };
```

1. Copiar o arquivo lightkeytab.keytab (gerado pelo comando no AD) para a pasta
   standalone/configuration (wildfly)
2. Arrumar o standalone.xlm ao adicionar as seguintes informações:

- Em **\<system-properties>:**

```java
    \<property name="sun.security.krb5.debug" value="true"/\>
    \<property name="java.security.krb5.kdc" value="4bizSRV.BIGDATA-TEAM.COM"/\>
    \<property name="java.security.krb5.realm"value="4bizSRV.BIGDATA-TEAM.COM"/\>
    \<property name="java.security.krb5.conf"value="/opt/wildfly-12.0.0.Final/standalone/configuration/krb5.conf"/\>
    \<property name="java.security.auth.login.config"value="/opt/wildfly-12.0.0.Final/standalone/configuration/login.conf"/\>
    \<property name="krb.keyTab"value="/opt/wildfly-12.0.0.Final/standalone/configuration/lightkeytab.keytab"/\>
    \<property name="krb.principal"value="HTTP/light-desenvolvimento.cloud4biz.com\@4bizSRV.BIGDATA-TEAM.COM"/\>
```

- Em **\<security-domains>:**

```java
    \<security-domain name="spnego-server"\>
    \<authentication\>
    \<login-module code="com.sun.security.auth.module.Krb5LoginModule"flag="required"\>
    \<module-option name="storeKey" value="true"/\>
    \<module-option name="useKeyTab" value="true"/\>
    \<module-option name="keyTab" value="\${krb.keyTab}"/\>
    \<module-option name="principal" value="\${krb.principal}"/\>
    \<module-option name="isInitiator" value="false"/\>
    \</login-module\>
    \</authentication\>
    \</security-domain\>
    \<security-domain name="SPNEGO" cache-type="default"\>
    \<authentication\>
    \<login-module code="Kerberos" flag="required"\>
    \<module-option name="storeKey" value="true"/\>
    \<module-option name="refreshKrb5Config" value="true"/\>
    \<module-option name="useKeyTab" value="true"/\>
    \<module-option name="doNotPrompt" value="true"/\>
    \</login-module\>
    \</authentication\>
    \</security-domain\>
```

1. Caso não tenha alterado o jar do policy do JAVA (JCE - Java Cryptography   &#x20;Extension), baixar os arquivos e colocar em<u>   &#x20;</u><u>*jdk/jre/lib/security/policy/limited e jdk/jre/lib/security/policy/unlimited*</u>;
2. Importar (sincronizar) usuários do LDAP no ITSM.

:::hint{type="warning"}
⚠ <u>**Atenção**</u>**!**

O DN Alias deve ser igual ao domínio da rede:
:::

![](https://api.archbee.com/api/optimize/pu5VMc-2TW3GQX4ly5Xp7/HA5JILcMMTPXi0oEDClTN_image.png)

:::hint{type="warning"}
⚠ <u>**Atenção**</u>**!**

É recomendável a leitura dos seguintes materiais de apoio: 

[https://ss64.com/nt/setspn.html](https://ss64.com/nt/setspn.html) e [http://spnego.sourceforge.net/](http://spnego.sourceforge.net/)
:::

