[16.0.0.4 y posterior]

Consumo de JWT (JSON Web Tokens) en Liberty

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

  1. En el archivo server.xml, añada la característica jwt-1.0.
    <featureManager>
        <feature>jwt-1.0</feature>
        ...
    </featureManager>
  2. 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.
    1. Importe el certificado X.509 del emisor de JWT al almacén de confianza.
    2. 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>
  3. 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.

    1. 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");
    2. 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>");

Icono que indica el tipo de tema Tema de tarea



Icono de indicación de fecha y hora Última actualización: Tuesday, 6 December 2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-libcore-mp&topic=twlp_sec_consume_jwt
Nombre de archivo:twlp_sec_consume_jwt.html