Puede verificar y analizar mediante programación señales JWT (JSON Web Token (JWT)
configurando el elemento de consumidor de JWT en la configuración del servidor e implementando las
API com.ibm.websphere.security.jwt.JwtConsumer y
com.ibm.websphere.security.jwt.JwtToken en las aplicaciones.
Acerca de esta tarea
Para obtener información sobre las API de JWT, consulte la
documentación
de Java para JSON Web Token o la documentación de API que se incluye en el producto en el
directorio ${wlp.install.dir}/dev.
Procedimiento
- En el archivo server.xml, añada la característica
jwt-1.0.
<featureManager>
<feature>jwt-1.0</feature>
...
</featureManager>
- Configure el consumidor de JWT modificando el elemento jwtConsumer.
Para obtener información sobre los atributos jwtConsumer que puede configurar,
consulte Consumidor JWT (jwtConsumer).
Cuando añade la característica
jwt-1.0 y guarda los cambios, Liberty añade el
siguiente elemento
jwtConsumer predeterminado.
<jwtConsumer id="defaultJWTConsumer">
</jwtConsumer>
En esta configuración predeterminada, se presuponen los valores siguientes:
- La cabecera alg de la JWT consumida es RS256. Puede configurar este valor en el
atributo signatureAlgorithm.
- Una JWT se considera válida durante 5 minutos en las reclamaciones exp,
nbf e iat. Puede configurar este valor en el atributo
clockSkew.
Puede reconfigurar este elemento jwtConsumer predeterminado o crear uno o más
elementos jwtConsumer. Cada elemento jwtConsumer debe tener una
serie de URL segura especificada como el atributo id. Si falta el ID, el
jwtConsumer no se procesa.
Para señales JWT firmadas con RS256 y un certificado X.509, debe configurar los atributos
trustStoreRef y
trustAliasName para poder localizar la clave de verificación de firma.
- Importe el certificado X.509 del emisor de JWT al almacén de confianza.
- En el elemento jwtConsumer, especifique el ID de almacén de confianza y el
alias de certificado.
<jwtConsumer id="defaultJWTConsumer" trustStoreRef="id_almacén_confianza" trustAliasName="alias_certificado">
</jwtConsumer>
- Verifique y analice mediante programación las señales JWT implementando las API
com.ibm.websphere.security.jwt.JwtConsumer y com.ibm.websphere.security.jwt.JwtToken en la aplicación.
Para obtener más información, consulte la
documentación
de Java para JSON Web Token.
- Cree un objeto JwtConsumer.
Si no especifica un ID de configuración, el objeto se vincula a la configuración de
jwtConsumer predeterminada.
com.ibm.websphere.security.jwt.JwtConsumer jwtConsumer = JwtConsumer.create();
Si se especifica un ID de configuración, el objeto se vincula a la configuración de
jwtConsumer con el ID especificado.
com.ibm.websphere.security.jwt.JwtConsumer jwtConsumer = JwtConsumer.create("id_configuración_jwtConsumer");
- Verifique y analice una señal JWT implementando la API com.ibm.websphere.security.jwt.JwtToken.
JwtToken jwtToken = jwtConsumer.createJwt("señal_JWT_codificada_Base64>");