Signatures numériques et registre UDDI
Dans UDDI Version 3, les diffuseurs peuvent signer numériquement les éléments UDDI pendant la publication. Le schéma UDDI Version 3 prévoit la signature des éléments businessEntity, businessServices, bindingTemplate, tModel et publisherAssertion.
Vous pouvez valider des éléments UDDI signés numériquement afin de prouver qu'ils n'ont pas été modifiés ni falsifiés et que leur intégrité est intacte.
Pour plus de détails sur la signature des entités UDDI et la vérification des signatures, voir Appendix I: Support for XML Digital Signatures dans la spécification UDDI Version 3.0.2.
Le registre UDDI ne valide pas les signatures au moment où les éléments signés sont publiés. Lorsque ces éléments signés sont récupérés par un client, il revient à ce dernier de valider la signature et de mettre à disposition un mécanisme permettant de s'assurer que le certificat du signataire est signé par une autorité de certification (CA) qu'il approuve et en laquelle il a confiance. Si une signature est déchiffrée correctement à l'aide de la clé publique du signataire, cela prouve que seul le détenteur de la clé privée correspondante a pu signer et publier cet élément.
Génération des signatures
Les attributs d'un élément sont inclus dans la génération d'une signature d'élément. Donc, toutes les clés d'entité doivent être disponible lorsque la signature est générée. Les diffuseurs peuvent générer des clés attribuées par le diffuseur pour toutes les clés d'un élément avant de signer. Alternativement, si les diffuseurs publient l'élément sans clés, le noeud du registre génère alors les clés d'entité requises puis extrait, signe et republie l'élément signé.
Validation des signatures
L'élément de signature à valider se trouve dans l'élément de niveau supérieur qui est renvoyé par un appel de la méthode getXXDetails. Le client est responsable de la validation. Au préalable, celui-ci doit avoir importé le certificat X509.3 du diffuseur et l'avoir validé au regard de l'autorité de certification à laquelle il fait confiance. Ainsi, le client a accès à la clé de validation publique du diffuseur qui correspond à la clé de signature privée que le le diffuseur a utilisée pour signer l'entité avant de la publier.
Vous pouvez utiliser le client UDDI Version 3 Client pour construire des objets JAX-RPC (Java™ API for XML-based RPC) et pour appeler le service Web UDDI Version 3. En tant que partie intégrante de ce client, vous pouvez utiliser une classe auxiliaire, com.ibm.uddi.v3.client.apilayer.xmldig.SignatureUtilities, pour créer et valider des signatures numériques pour les entités UDDI Version 3 qui les prennent en charge. Pour plus de détails sur les interfaces de programme d'application (API) de cette classe d'assistance et sur l'exception SignatureUtilitiesException, reportez-vous aux informations associées.
Dans le contexte UDDI, les signatures numériques permettent de signer les données. Elles ne sont pas utilisées pour authentifier les messages SOAP.