Wildfly + LDAP: Fazendo Segurança do Management Console

Para realizar esta configuração, você precisará:

  • Wildfly versão mais atual;
  • Vamos realizar o exemplo utilizando o modo standalone;
  • Servidor LDAP.

Para o Servidor LDAP e ter uma visão mais completa das configurações LDAP, recomendo utilizar o ApacheDS Studio, que é baseado na IDE Eclipse e trás muitas facilidades para utilização do LDAP. Com o Wildfly instalado e rodando e também o ApacheDS, vamos configurar o LDAP.

Configurando LDAP

 

  1. Inicie o ApacheDS:
$APACHE_DS_HOME/Apache/./ApacheDirectoryStudio

2. Crie uma nova connection usando os valores padrão;

3. Crie uma nova LDAP partition com o seguinte sufix: dc=keycloak,dc=org

4. Importe o seguinte LDIF file dentro do partition criado anteriormente:

dn: ou=People,dc=keycloak,dc=org
objectclass: top
objectclass: organizationalUnit
ou: People

dn: ou=RealmRoles,dc=keycloak,dc=org
objectclass: top
objectclass: organizationalUnit
ou: RealmRoles

dn: ou=FinanceRoles,dc=keycloak,dc=org
objectclass: top
objectclass: organizationalUnit
ou: FinanceRoles

dn: uid=jbrown,ou=People,dc=keycloak,dc=org
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
uid: jbrown
cn: James
sn: Brown
mail: jbrown@keycloak.org
postalCode: 88441
userPassword: password

dn: uid=bwilson,ou=People,dc=keycloak,dc=org
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
uid: bwilson
cn: Bruce
sn: Wilson
mail: bwilson@keycloak.org
postalCode: 88441
postalCode: 77332
postalCode: 66221
street: Elm 5
userPassword: password

dn: cn=ldap-user,ou=RealmRoles,dc=keycloak,dc=org
objectclass: top
objectclass: groupOfNames
cn: ldap-user
member: uid=jbrown,ou=People,dc=keycloak,dc=org
member: uid=bwilson,ou=People,dc=keycloak,dc=org

dn: cn=ldap-admin,ou=RealmRoles,dc=keycloak,dc=org
objectclass: top
objectclass: groupOfNames
cn: ldap-admin
member: uid=jbrown,ou=People,dc=keycloak,dc=org

dn: cn=accountant,ou=FinanceRoles,dc=keycloak,dc=org
objectclass: top
objectclass: groupOfNames
cn: accountant
member: uid=bwilson,ou=People,dc=keycloak,dc=org

fonte: https://github.com/keycloak/keycloak/blob/master/examples/ldap/ldap-example-users.ldif

Configurando Wildfly

  1. Inicie o jboss-cli.sh:
$JBOSS_HOME/bin/jboss-cli.sh --connect

2. Execute os seguintes comandos:

/core-service=management/ldap-connection=ldapconnection/:add(search-credential=secret,url=ldap://localhost:10389,search-dn="uid=admin,ou=system")

/host=master/core-service=management/security-realm=LDAPRealm:add()

/host=master/core-service=management/security-realm=LDAPRealm/authentication=ldap:add(base-dn="ou=People,dc=keycloak,dc=org", recursive=true, username-attribute="uid", connection="ldapconnection")

/host=master/core-service=management/management-interface=http-interface/:write-attribute(name=security-realm,value=LDAPRealm)

3. Agora só acessar o Management Console (ex. http://localhost:9990) e utilize um dos dois usuários que existem no arquivo LDIF

Baseado no artigo: http://www.mastertheboss.com/jboss-server/jboss-security/ldap-and-wildfly-part-1-securing-the-management-console

[Iniciante] Aprendendo Wildfly 10

Conteúdo relacionado ao aprendizado inicial do servidor de aplicação wildfly 10. Caso queira mais fontes, a comunidade brasileira de JBoss, o JBug Brasil, se organizou no nosso grupo do telegram para escrever um livro em português sobre o servidor de aplicação Wildfly!

  1. Iniciando com Wildfly 10
    • Introdução;
    • Download e instalação;
    • Executando pela primeira vez;
  2. Gerenciando Wildfly 10.
  3. Configurando Standalone mode
  4. Configurando Managed Domain
  5. Configurando Data Sources
  6. Configurando Logging Subsystem
  7. Configurando Messaging Subsystem
  8. Configurando e enviando Email com Mail Subsystem
  9. Segurança
  10. Configurando JVM