Canigó. Actualització mòdul Seguretat


11-06-2020
Darrera actualització: 11-06-2020

Introducció

Dins de l’abast de la versió 3.4.4 del Framework Canigó s’ha alliberat una nova versió del mòdul de Seguretat, la qual té com a propòsit oferir la funcionalitat de compressió de token JWT. Podeu consultar l’abast complet de la versió 3.4.4 a les Release Notes, apartat Canigó 3.4.4.

Novetats

A partir de la versió 2.4.0 del mòdul, es proporciona la funcionalitat de compressió del token JWT. Per defecte, si no especifiquem que volem utilitzar compressió, el mòdul genera el token JWT sense aplicar la compressió. Per a activar la funcionalitat de compressió s’ha afegit el següent mètode a cat.gencat.ctti.canigo.arch.security.rest.authentication.jwt.JwtTokenHandler:

public void setTokenWithCompress(boolean tokenWithCompress)


En cas d’activar la compressió, per defecte s’utilitzarà la compressió DEFLATE i, si volem utilitzar un altre algoritme de compressió, disposem del següent mètode:

public void setTokenCompressionCodec(CompressionCodec tokenCompressionCodec)


Tenim disponibles els següents algoritmes de compressió a io.jsonwebtoken.CompressionCodecs:

  • DEFLATE: algoritme per defecte que acompleix l’estàndard JWA.
  • GZIP: algoritme que no acompleix l’estàndard JWA. Si voleu utilitzar aquest sistema de compressió comproveu que tots els sistemes ho suportin.

Per tant, si volem comprimir el token JWT amb DEFLATE serà necessari:

  1. Definir al fitxer security.properties la següent propietat:

    *.jwt.tokenWithCompress = true
    
  2. Carregar la nova propietat a WebSecurityConfig.java:

    @Value("${jwt.tokenWithCompress}")
    private boolean tokenWithCompress;
    
  3. A la definició del JwtTokenHandler en el fitxer WebSecurityConfig.java, indicar que volem utilitzar la compressió:

    jwtTokenHandler.setTokenWithCompress(tokenWithCompress);
    

Documentació del mòdul

Per a obtenir més informació del Mòdul de Seguretat podeu consultar la documentació del Mòdul de Seguretat al Portal de Frameworks i Solucions d’Arquitectura.