Buscando artículos sobre "JBoss"
13-junio-2023
admin

Utilización de Keycloak para Single Sign-On (SSO)

Single Sign-On se trata de un inicio de sesión unificado. Consiste en un procedimiento de autenticación que habilita a un usuario concreto acceso a distintos sistemas con una sola instancia de identificación.

Una herramienta sencilla que podemos utilizar para configurarnos un SSO que poder utilizar en nuestras aplicaciones se trata de Keycloak.

Ejemplo de uso:
Paso 1 – Ponemos iniciar keycloak mediante su imagen Docker mediante el siguiente comando:

 
 docker run -p 8081:8080 -e KEYCLOAK_USER=admin -e KEYCLOAK_PASSWORD=password jboss/keycloak
-Dkeycloak.profile.feature.docker=enabled -b 0.0.0.0

Una vez iniciado podemos acceder a la aplicación mediante la url:
http://localhost:8081/auth/admin/master/console/

Paso 2 – Vamos a configurar un usuario y un cliente para poder probar el acceso:

Paso 2.1 – Crear Realm

Creación de un Realm
Crear Realm en keycloak

Pantalla de edición de un Realm
Crear Realm en keycloak

Paso 2.2 – Crear Client (es la aplicación que se va a conectar)

Creación de un cliente
Crear Cliente en keycloak

Crear Cliente en keycloak

Pantalla de edición de un cliente
Crear Cliente en keycloak

Paso 2.3 – Crear User y Rol (Se trata del usuario que se va a conectar y un rol que va a tener asignado)

Creación de un rol
Crear Rol en keycloak

Crear Rol en keycloak

Creación de un usuario
Crear User en keycloak

Crear User en keycloak

Crear User en keycloak

Crear User en keycloak

Pantalla de asignación del rol al usuario creado
Asignar Rol al User en keycloak

Paso 3 – Prueba obtención token.

 
curl --example --request POST 'http://localhost:8081/auth/realms/disastercode/protocol/openid-connect/token' 
--header 'Content-Type: application/x-www-form-urlencoded' 
--data-urlencode 'grant_type=password' 
--data-urlencode 'client_id=appClient' 
--data-urlencode 'client_secret=7YXN4WL8n3d0LUYejWGJWpG3xyJPUaPE' 
--data-urlencode 'username=admin' 
--data-urlencode 'password=admin'

Petición con postman
Prueba Postman

6-junio-2023
admin

Dockers para Oracle, OpenLdap y JBoss

Docker para la version de Oracle Standard Edition 12c Release 2 >>> https://github.com/MaksymBilenko/docker-oracle-12c
Este contenedor te permite utilizar una base de datos de oracle desde un contenedor. Esta en docker hub. Puedes ejecutarlo con el comando:

docker run -d -p 8080:8080 -p 1521:1521 quay.io/maksymbilenko/oracle-12c

Y los datos de acceso serían:

hostname: localhost
port: 1521
sid: xe
service name: xe
username: system
password: oracle

Docker para la última version de OpenLdap >>> https://hub.docker.com/r/bitnami/openldap/
Contenemos que te permite ejecutar un OpenLDAP. Es muy sencillo de ejecutar ya que incluye variables de entorno que si las declaras te permiten configurar el LDAP que se ejecuta. Ejemplo de ejecución:

docker run -p 1389:1389 -e LDAP_ROOT="dc=disastercode,dc=com,dc=es" --name openldap bitnami/openldap:latest

Docker para utilización de Jboss 7.2 >>> https://hub.docker.com/r/daggerok/jboss-eap-7.2

8-septiembre-2012
admin

Debuggear en el eclipse con servidores jboss y oc4j externos

Lo primero es lanzar los servidores en modo debug. Para ello:
– En JBOSS, p.e.:

set JAVA_OPTS=-Xmx1024m 
        -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=4001
run.bat -b 0.0.0.0 -Djboss-service.binding.set=ports-02 
        -Djboss.partition.name=DefaultPartition -Djboss.platform.mbeanserver 

En este ej con el comando «-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=4001» le decimos que arranque en modo debug y utilice el puerto 4001 para ello.

– En OC4J, p.e.:

set ORACLE_HOME=C:\\oc4j_extended_101350
set OC4J_JVM_ARGS=-XX:PermSize=256m -XX:MaxPermSize=256m 
        -Xms2048m -Xmx2048m -XX:NewSize=256m -XX:MaxNewSize=256m  
        -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=4000
set VERBOSE=-verbose:gc
oc4j.cmd  -start 

En este ej con el comando «-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=4000» le decimos que arranque en modo debug y utilice el puerto 4000 para ello.

Una vez arrancados, podemos poner el eclipse a escuchar esos puertos. Para ello se debe ir a la opción de debug configurations y ahí remote java application en el port se pone el correspondiente a cada caso y en host localhost (si estamos en local como es el caso).
Por último en la vista modo debug del eclipse se deben agregar los proyectos que se desean debuggear. Para ello, tras arrancar el modo debug podremos hacer click en el botón derecho en la pestaña de debug -> edit source lookup -> add -> java project

3-febrero-2012
admin

Cambiar el puerto del JBoss

Para cambiar el puerto bajo el que corre JBoss. Se debe modificar el archivo server.xml.
Concretamente la línea que pone:

 

...




Nota: El archivo server.xml se puede encontrar en el jbosweb. Algo así:
/server/default/deploy/jbossweb.sar/server.xml

2-febrero-2012
admin

Instalar un JBoss

Pasos a seguir para poner a funcionar un JBoss de manera rápida.


Paso 1: Se debe instalar una jdk y añadir la variable de entorno JAVA_HOME.
p.e. si tenemos instalada la jdk en C:\Program Files\Java\jdk1.5.0_22, se añadiría la variable de entorno JAVA_HOME=C:\Program Files\Java\jdk1.5.0_22

Paso 2: Descomprimir en una carpeta del sistema el JBoss y añadir la variable de entorno JBOSS_HOME.
p.e. si descomprimimos el JBoss en la carpeta C:\jboss, se añadiría la variable de entorno JBOSS_HOME=C:\jboss

Paso 3: Ahora se deben añadir esas dos variables de entorno al path. Tal que así:
PATH = %JBOSS_HOME%\bin;%JAVA_HOME%\bin; %PATH%

Paso 4: Para lanzar el servidor de JBoss simplemente se ejecuta el archivo run.bat (está en la carpeta bin del JBoss).

Paso 5: Para probarlo se puede ejecutar el siguiente Hola Mundo:
Paso 5.1: Crear una carpeta llamada HolaMundo y dentro colocar la jsp «hola.jsp». Que contenga por ejemplo:

  <% String mensaje= "Hola, Mundo."; %>
  <%=mensaje %>
  <%=new java.util.Date() %>

Paso 5.2: Dentro de la carpeta HolaMundo crear también la carpeta «WEB-INF» y dentro de ésta un fichero web.xml con el siguiente contenido:


   Hello World

Paso 5.3: Finalmente, para crear el war y desplegarlo en el servidor jboss se crea dentro de la carpeta HolaMundo un fichero deploy.bat con este contenido:

@echo off
"%JAVA_HOME%\bin\jar.exe" -cvf HolaMundo.war *.jsp WEB-INF
copy HolaMundo.war "%JBOSS_HOME%\server\default\deploy"
pause

Paso 5.4: Ejecutar ese deploy.bat y probar en el navegar la siguiente url http://localhost:8080/HolaMundo/hola.jsp»
Si todo ha ido bien, se debe ver un hola mundo.

Categorias

Linkedin