Vous pouvez utiliser le plug-in du gestionnaire de jetons de sécurité pour activer
l'authentification serveur à serveur, ce qui signifie d'implémenter l'interface
SecureTokenManager.
La méthode generateToken(Object) prend un objet protect,
puis génère un jeton pouvant être compris par les autres. La méthode
verifyTokens(byte[]) procède en sens contraire : elle reconvertit
le jeton en objet d'origine.
Une implémentation SecureTokenManager simple utilise un
algorithme de codage de base, tel qu'un algorithme XOR, pour coder l'objet
dans un formulaire sérialisé et utiliser l'algorithme de décodage
correspondant pour décoder le jeton. Cette implémentation n'est pas sécurisée et peut être facilement
interrompue.
Implémentation par défaut de WebSphere eXtreme
Scale
WebSphere eXtreme
Scale met immédiatement à disposition une implémentation de cette interface.
Cette implémentation par défaut utilise une paire de clés pour signer et vérifier la
signature et une clé confidentielle pour chiffrer le contenu. Chaque serveur
comporte un fichier de clés de type JCKES contenant la paire de clés, une clé privée
et une clé publique ainsi qu'une clé confidentielle. Pour stocker les clés
confidentielles, le fichier de clés doit être de type JCKES. En effet, ces clés servent à chiffrer et
signer ou vérifier la chaîne secrète côté expéditeur. De plus, le jeton est associé
à un délai d'expiration. Côté récepteur, les données sont vérifiées,
déchiffrées et comparées à la chaîne secrète du récepteur. Des protocoles de communication SSL (Secure Sockets
Layer) ne sont pas requis entre une paire de serveurs pour l'authentification car les clés privées et les
clés publiques ont la même finalité. Toutefois, si la communication du serveur n'est pas chiffrée,
les données peuvent être dérobées à la seule vue de la communication.
Le jeton venant à expiration, la menace d'attaque par relecture est minimisée.
Ce risque est considérablement réduit si tous les serveurs sont déployés derrière un pare-feu.
L'inconvénient de cette approche : les administrateurs de WebSphere eXtreme Scale doivent générer des clés et les transporter vers tous les serveurs, ce qui peut provoquer des failles de sécurité lors du transport.