PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

  • Exemple d'utilisation de la fonction SOAPAjouteAssertionSAML
SOAPAjouteAssertionSAML (Exemple)
Exemple d'utilisation de la fonction SOAPAjouteAssertionSAML
Cet exemple permet de créer une signature XML et d'ajouter une assertion SAML à une requête d'un Webservice.
MaRequête est un wsRequête
MaSecu est un Security
// Construit un identifiant
id est une chaîne = DonneGUID(guidFormaté)
id = "_" + Milieu(id, 2, Taille(id) - 2)
 
// Initialise la signature
cMaSignature est une xmlSignature
cMaSignature.AlgorithmeNormalisation = atC14NExclu
cMaSignature.AlgorithmeSignature = asRSA_SHA_256
 
// Fichier de clé OU certificat
// récupéré par les fonctions certificats
cMaSignature.Clé = fRepExe + fSep + "macle.p12"
cMaSignature.MotDePasseClé = "password"
cMaSignature.TypeFichierClé = tfcPKCS12
cMaSignature.Référence[1].AlgorithmeHash = HA_SHA_256
cMaSignature.Référence[1].URI = "#" + id
cMaSignature.Référence[1].Transformation[1] = atEnveloppée
cMaSignature.Référence[1].Transformation[2] = atC14NExclu
x509 est un xmlSignatureInformationCléX509
x509.AvecCertificat = Vrai
cMaSignature.InformationClé[1] = x509
 
// Fin initialisation de la signature
dhDateHeureCourante est un DateHeure
 
// Ajoute l'assertion SAML
nIndAssertion est un entier
nIndAssertion = SOAPAjouteAssertionSAML(MaRequête, ...
MaSecu.Assertion, cMaSignature)
 
MaSecu.Assertion[nIndAssertion].Issuer = "Test"
MaSecu.Assertion[nIndAssertion].Issuer:Format = ...
"urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName"
 
MaSecu.Assertion[nIndAssertion].Subject.NameID = "01254155"
MaSecu.Assertion[nIndAssertion].Subject.NameID:NameQualifier = "Test"
MaSecu.Assertion[nIndAssertion].AttributeStatement.Attribute:Name = "ID"
MaSecu.Assertion[nIndAssertion].AttributeStatement.Attribute.AttributeValue = ""
Version minimum requise
  • Version 18
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire