Chiffrer tomcat mot de passe du fichier de clés
Est-il une option à chiffrer keystorePass valeur dans tomcat server.xml?
Je ne veux pas qu'il soit en texte brut
<Connector port="8403" //...
keystorePass="myPassword" />
Où étiez-vous la pensée de stockage de la clé de chiffrement pour déverrouiller le mot de passe pour déverrouiller le keystorePass? Juste par intérêt.
Je suis conscient que ce n'est pas une question simple. Je demande pour savoir si il y a une solution standard.
Non, il n'y a sur la norme de solution autre que peut-être substituant le Connecteur comme je l'ai mentionné ci-dessous, mais c'est en aucune façon une solution standard et plus en bas à droite hack.
Je suis conscient que ce n'est pas une question simple. Je demande pour savoir si il y a une solution standard.
Non, il n'y a sur la norme de solution autre que peut-être substituant le Connecteur comme je l'ai mentionné ci-dessous, mais c'est en aucune façon une solution standard et plus en bas à droite hack.
OriginalL'auteur Adi Baron | 2013-04-24
Vous devez vous connecter pour publier un commentaire.
Si quelqu'un a accès à votre server.xml le texte brut de la valeur de votre keystorePass apparaissant ne sont que l'un de vos soucis.
Si quelqu'un a accès à partir de là, ils pourraient faire beaucoup plus de mal. Le chiffrement du mot de passe ici, c'est vraiment juste déplacer le problème ailleurs que quelqu'un pourrait trouver la clé de chiffrement de la clé de chiffrement (un peu comme une poupée russe).
Si vous souhaitez crypter le mot de passe, vous devez remplacer le Connecteur
la mise en œuvre de décrypter le mot de passe crypté afin que la véritable pwd est
accessibles ou disponibles pour tomcat.
Pourriez-vous me Demandez-vous s'il vous plaît le protocole qui l'on doit remplacer? et comment?
Je suis en désaccord avec ce qui précède. Le point de l'ensemble de la sécurité est une des couches de la défense. Dans le cloud, par exemple, il est possible de chiffrer les données et ensuite de permettre l'accès aux clés de cryptage via IAM (aws). Gardez vos mots de passe sur le disque en texte brut est tout simplement mauvais à la sécurité. Ces secrets ne devrait jamais être dans le processus de la mémoire dans leur forme décryptée.
OriginalL'auteur david99world
Il ya une meilleure façon, qu'à l'aide de XML encoder.
Créer un Cryptage de Classe pour chiffrer et déchiffrer votre mot de passe.
Et remplacer Http11Nio2Protocol classe, quelque chose de semblable pour le code ci-dessous.
}
Remarque: EncryptService est notre propre cryptage de classe.
Et configurer le substituée classe dans le protocole d'attribut dans server.xml comme ci-dessous.
Espère que cette aide.
J'ai essayé cette solution mais j'obtiens l'erreur:
java.lang.ClassNotFoundException: listener.Http11Nio2Protocol
.J'ai mis en œuvre qu'Il n'a pas lu la méthode setKeystorePass!!
OriginalL'auteur user3675974
Face à un même problème. Les demandes des clients pour "masquer" tous les mots de passe.
Donc, de la façon la plus simple de passer à la vérification de Tomcat Wiki.
Aller à la page http://coderstoolbox.net/string/#!encoding=xml&action=encoder&charset=none et encoder vous passez au format XML.
Ainsi -
<Connector>
élément ressemble:OriginalL'auteur setevoy
Nous avons également été confrontés à des problèmes similaires, mais nous avons créé notre propre chiffrement et le déchiffrement logique pour y remédier. Voici le code
Une Autre Classe
Logique qui a généré haché code
C'est là que nous avons étendu la classe org.apache.coyote.http11.Http11Nio2Protocol qui est présent dans tomcat-coyote-8.0.29.jar qui est présent dans le dossier lib de tomcat 8. Ainsi, alors que la compilation de ces classes tomcat-coyote-8.0.29.jar devraient être présents.
C'est là que l'utilisateur doit entrer le mot de passe dans cmd qui doit être haché
C'est l'endroit où vous gardez votre mot de passe de la clé. Vous devriez le changer.
compiler les classes ci-dessus pour générer des fichiers de classe avec la commande ci-dessous dans cmd. Rappelez-vous tomcat-coyote-8.0.29.jar doit être présent dans le même dossier où tous les fichiers java sont présents.
Faire un pot avec le fichier de classe générée à l'aide de cette commande dans cmd
Cela va créer un fichier jar PasswordEncryptor.jar
Collez le générés PasswordEncryptor.jar dans le dossier lib de Tomcat8. c'est à dire à apache-tomcat-8.5.9\lib
Maintenant, allez à cet endroit et le type de commande ci-dessous pour générer le mot de passe haché.
Maintenant, allez à apache-tomcat-8.5.9\conf et modifier server.xml
Utiliser le hachage de mot de passe dans keystorpasss de certificat
Avis le protocole c'est le nom de la classe.
Espère que cela va vous aider.
Grâce
OriginalL'auteur AKumar
Voici une pratique Perl one-liner pour XML coder un mot de passe:
OriginalL'auteur Nicholas Sushkin