Je rencontre un problème intéressant en essayant de signer une assertion SAML2 à l'aide du JRE 6.0 d'IBM. Si je cours le code sous un JDK de Sun, il signe les assertions correctement et la signature vérifie. Si je cours exactement le même code sous IBM JRE, l'assertion est créée correctement, mais la signature ne vérifie pas. Encore une fois, c'est le même code, en effet, car il fonctionne à partir de Jetty, c'est exactement la même configuration de Jetty et le fichier WAR. J'ai deux instances de Jetty fonctionnant sur différents ports avec des JRE différents, mais pointant vers la même maison Jetty. Les signatures générées sous Sun JRE sont validées, mais pas celles générées sous IBM JRE. Je suis franchement perplexe et je manque de choses à essayer, donc toute suggestion serait utile.Génération de signature XML à l'aide d'IBM SDK 6.0
0
A
Répondre
1
Quelques années en retard, mais je vais y répondre moi-même. Le problème était un mélange d'appels DOM1 (non-namespace aware) et DOM2 + (namespace aware). En déplaçant tout vers les appels DOM2 + prenant en charge l'espace de noms, le problème s'est dissipé.
Questions connexes
- 1. Génération de signature numérique
- 2. l'installation de SDK 6.0 pour BlackBerry
- 3. Génération de signature utilisant PKCS # 7 Spécifications
- 4. Génération de SignatureValue à l'aide de HMAC-SHA1 en XML
- 5. Génération XML dynamiquement VS Génération de fichier xml
- 6. Validation de signature numérique XML
- 7. Périphériques cibles Microsoft Windows Mobile SDK 6.0?
- 8. Génération de XMl à partir de DataContext
- 9. Outil de génération XML
- 10. Besoin de plus de simulateurs pour BlackBerry SDK 6.0
- 11. Problème Jgrid Génération XML
- 12. Génération RDoc XML
- 13. structure de données laide à la recherche java
- 14. Génération d'arborescence XML
- 15. iOS4 SDK et iPod touch 1ère génération
- 16. Génération de SQL à l'aide de XML et de XSLT
- 17. iphone SDK: Comment implémenter une capture de signature?
- 18. Génération de fichier XML à partir de WSDL
- 19. Génération de schéma SQL à partir de XML
- 20. Génération XSD pour XML sérialisé
- 21. Génération sécurisée XML dans Lua
- 22. Génération xml avec sql 2000
- 23. Génération de fichiers XML complexes à partir d'asp.net mvc C#
- 24. Génération de classes Java à partir d'un fichier XML
- 25. Simplifier une fonction laide dans Haskell
- 26. Génération de commentaires XML avec l'instruction SQL FOR XML
- 27. Erreurs de génération lors de l'installation d'openfeint 2.4.4 SDK
- 28. Je suis à la recherche d'un tutoriel de signature de code pour le SDK iPhone.
- 29. Open XML SDK 2.0 insertion de PDF à Word
- 30. Bibliothèque de vérification de signature XML dans C?
Ok, compris cela. Il s'avère que l'implémentation de XML Dsig dans Sun est plus tolérante que Xerces/XML Security et l'implémentation d'IBM. Il y avait un mélange d'appels DOM1 et DOM2 qui causaient des problèmes et la façon dont les URI étaient déréférencés a également causé des problèmes. Le remplacement de tous les appels DOM1 (appels DOM sans espace de nom) par des appels DOM2 et la définition des informations d'identification sur DOMSignContext ont résolu le problème et fonctionnent maintenant sous les deux JVM. –
Hey pourriez-vous expliquer plus loin ce que vous avez fait dans votre commentaire? C'est l'Implémentation Xerces qui doit être changé? Quel est le meilleur moyen de le faire? J'ai essayé de changer le Parent_ClassLaoader mais j'ai obtenu des erreurs de chemin de classe Servlet. Donc, je voudrais éviter de faire ça. – MikeDubs307
Fondamentalement, je me suis juste assuré que chaque appel DOM était celui qui utilise une valeur d'espace de noms. Ainsi, au lieu de Document.createElement(), j'ai utilisé Document.createElementNS(). En s'assurant que tout avait un espace de noms défini, il a effacé les erreurs. Il n'y a pas besoin de changer les implémentations de Xerces, ne mélangez pas les appels DOM1 (pas d'espace de noms) et DOM2 + (espace de noms) sur le même document. –