Vous consultez la documentation d'Apigee Edge.
Accédez à la documentation sur Apigee X. info
SourceNotConfigured
Message d'erreur
Le déploiement du proxy d'API par le biais de l'UI Edge ou de l'API de gestion Edge échoue avec le message d'erreur suivant:
Error Deploying Revision revision_number to environment ValidateSAMLAssertion[policy_name]: Source is not correctly configured.
Exemple de message d'erreur
Error Deploying Revision 2 to test
ValidateSAMLAssertion[Validate-SAML-Assertion-1]: Source is not correctly configured.
Exemple de capture d'écran d'erreur
Cause
Le déploiement du proxy d'API échoue avec cette erreur si un ou plusieurs des éléments suivants de la règle ValidateSAMLAssertion sont vides ou non définis : <Source>
, <XPath>
, <Namespaces>
et <Namespace>
.
Par exemple, si vous oubliez l'élément <XPath>
, ou laissez l'élément <Source>
ou ses entités vides, le déploiement du proxy d'API échoue.
Diagnostic
Identifiez le nom de la règle ValidateSAMLAssertion en échec dans le message d'erreur. Par exemple, dans l'erreur suivante, le nom de la règle ValidateSAMLAssertion est
Validate-SAML-Assertion-1
.ValidateSAMLAssertion[Validate-SAML-Assertion-1]: Source is not correctly configured.
Examinez le fichier XML de la règle ValidateSAMLAssertion ayant échoué. Vérifiez si un ou plusieurs des éléments suivants de la règle sont manquants ou vides :
<Source>
,<XPath>
,<Namespaces>
,<Namespace>
. Si tel est le cas, il peut s'agir de la cause de l'erreur.Par exemple, la règle suivante comporte un élément
<Namespaces>
vide sous l'élément<Source>
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ValidateSAMLAssertion name="SAML" ignoreContentType="false"> <Source name="request"> <Namespaces></Namespaces> </Source> <Description/> <TrustStore>ref://TrustStoreName</Truststore> <RemoveAssertion>false</RemoveAssertion> </ValidateSAMLAssertion>
Dans l'exemple ci-dessus, l'élément
<Namespaces>
est vide. Par conséquent, vous obtenez l'erreur suivante :ValidateSAMLAssertion[Validate-SAML-Assertion-1]: Source is not correctly configured.
Solution
Assurez-vous que les valeurs de l'élément <Source>
sont correctement configurées avec l'élément <Namespaces>
et l'élément enfant <Namespace>
.
Vous devez également vous assurer que l'élément <XPath>
est défini et qu'il n'est pas vide.
Pour corriger l'exemple de règle ValidateSAMLAssertion ci-dessus, vous pouvez ajouter les éléments <Namespace>
et <XPath>
:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ValidateSAMLAssertion name="SAML" ignoreContentType="false">
<Source name="request">
<Namespaces>
<Namespace prefix='soap'>http://schemas.xmlsoap.org/soap/envelope/</Namespace>
<Namespace prefix='wsse'>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd</Namespace>
<Namespace prefix='saml'>urn:oasis:names:tc:SAML:2.0:assertion</Namespace>
</Namespaces>
<XPath>/soap:Envelope/soap:Header/wsse:Security/saml:Assertion</XPath>
</Source>
<Description/>
<TrustStore>ref://TrustStoreName</Truststore>
<RemoveAssertion>false</RemoveAssertion>
</ValidateSAMLAssertion>
TrustStoreNotConfigured
Message d'erreur
Le déploiement du proxy d'API par le biais de l'UI Edge ou de l'API de gestion Edge échoue avec le message d'erreur suivant:
Error Deploying Revision revision_number to environment ValidateSAMLAssertion[[Ljava.lang.Object;@object]: Trust store is not correctly configured.
Exemple de message d'erreur
Error Deploying Revision 2 to test
ValidateSAMLAssertion[[Ljava.lang.Object;@39537262]: Trust store is not correctly configured.
Exemple de capture d'écran d'erreur
Cause
Si l'élément <TrustStore>
est vide ou non spécifié dans la règle ValidateSAMLAssertion, le déploiement du proxy d'API échoue. Vous devez indiquer un fichier Trust Store valide.
Diagnostic
Examinez toutes les règles ValidateSAMLAssertion dans le proxy d'API spécifique où l'échec a eu lieu. S'il existe une règle ValidateSAMLAssertion dans laquelle l'élément
<TrustStore>
est vide ou non spécifié, il s'agit de la cause de l'erreur.<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ValidateSAMLAssertion name="SAML" ignoreContentType="false"> <Source name="request"> <Namespaces> <Namespace prefix='soap'>http://schemas.xmlsoap.org/soap/envelope/</Namespace> <Namespace prefix='wsse'>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd</Namespace> <Namespace prefix='saml'>urn:oasis:names:tc:SAML:2.0:assertion</Namespace> </Namespaces> <XPath>/soap:Envelope/soap:Header/wsse:Security/saml:Assertion</XPath> </Source> <Description/> <TrustStore/> <RemoveAssertion>false</RemoveAssertion> </ValidateSAMLAssertion>
Solution
Assurez-vous que l'élément <TrustStore>
est toujours spécifié et non vide dans la règle ValidateSAMLAssertion. Le nom <TrustStore>
doit correspondre au nom d'un truststore valide qui existe dans tous les environnements dans lesquels vous essayez de déployer un proxy.
Pour corriger l'exemple ci-dessus, vous pouvez spécifier l'élément <TrustStore>
avec une valeur valide.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ValidateSAMLAssertion name="SAML" ignoreContentType="false">
<Source name="request">
<Namespaces>
<Namespace prefix='soap'>http://schemas.xmlsoap.org/soap/envelope/</Namespace>
<Namespace prefix='wsse'>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd</Namespace>
<Namespace prefix='saml'>urn:oasis:names:tc:SAML:2.0:assertion</Namespace>
</Namespaces>
<XPath>/soap:Envelope/soap:Header/wsse:Security/saml:Assertion</XPath>
</Source>
<TrustStore>TrustStoreName</TrustStore>
<RemoveAssertion>false</RemoveAssertion>
</ValidateSAMLAssertion>
Pour plus d'informations sur l'utilisation des truststores, consultez la page Truststores et keystores.
NullKeyStore
Message d'erreur
Le déploiement du proxy d'API par le biais de l'UI Edge ou de l'API de gestion Edge échoue avec le message d'erreur suivant:
Error Deploying Revision revision_number to environment Assertion KeyStore name cannot be null.
Exemple de message d'erreur
Error Deploying Revision 4 to test
Assertion KeyStore name cannot be null.
Exemple de capture d'écran d'erreur
Cause
Si l'élément enfant <Name>
est vide ou non spécifié dans l'élément <Keystore>
de la règle GenerateSAMLAssertion, le déploiement du proxy d'API échoue. Veuillez indiquer un nom de keystore valide.
Diagnostic
Examinez toutes les règles GenerateSAMLAssertion dans le proxy d'API spécifique où l'échec a eu lieu. S'il existe une règle GenerateSAMLAssertion dans laquelle l'élément enfant
<Name>
est vide ou n'est pas spécifié dans l'élément<Keystore>
, il s'agit de la cause de l'erreur.La règle GenerateSAMLAssertion suivante contient un élément enfant
<Name>
vide dans l'élément<Keystore>
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <GenerateSAMLAssertion name="SAML" ignoreContentType="false">` <CanonicalizationAlgorithm /> <Issuer ref="reference">Issuer name</Issuer> <KeyStore> <Name></Name> <Alias ref="reference">alias</Alias> </KeyStore> <OutputVariable> <FlowVariable>assertion.content</FlowVariable> <Message name="request"> <Namespaces> <Namespace prefix="test">http://www.example.com/test</Namespace> </Namespaces> <XPath>/envelope/header</XPath> </Message> </OutputVariable> <SignatureAlgorithm /> <Subject ref="reference">Subject name</Subject> <Template ignoreUnresolvedVariables="false"> <!-- A lot of XML goes here, in CDATA, with {} around each variable --> </Template> </GenerateSAMLAssertion>
Solution
Assurez-vous que l'élément enfant <Name>
est toujours spécifié et non vide dans l'élément <Keystore>
de la règle GenerateSAMLAssertion.
Pour corriger l'exemple ci-dessus, vous pouvez spécifier correctement l'élément <Name>
et vous assurer qu'une valeur valide est spécifiée pour l'élément <Alias>
.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<GenerateSAMLAssertion name="SAML" ignoreContentType="false">
<CanonicalizationAlgorithm />
<Issuer ref="reference">Issuer name</Issuer>
<KeyStore>
<Name ref="reference">keystorename</Name>
<Alias ref="reference">alias</Alias>
</KeyStore>
<OutputVariable>
<FlowVariable>assertion.content</FlowVariable>
<Message name="request">
<Namespaces>
<Namespace prefix="test">http://www.example.com/test</Namespace>
</Namespaces>
<XPath>/envelope/header</XPath>
</Message>
</OutputVariable>
<SignatureAlgorithm />
<Subject ref="reference">Subject name</Subject>
<Template ignoreUnresolvedVariables="false">
<!-- A lot of XML goes here, in CDATA, with {} around
each variable -->
</Template>
</GenerateSAMLAssertion>
Reportez-vous aux exemples de code tirés de l'article "Règles SAMLAssertion".
NullKeyStoreAlias
Message d'erreur
Le déploiement du proxy d'API par le biais de l'UI Edge ou de l'API de gestion Edge échoue avec le message d'erreur suivant:
Error Deploying Revision revision_number to environment Assertion KeyStore alias cannot be null.
Exemple de message d'erreur
Error Deploying Revision 4 to test
Assertion KeyStore alias cannot be null.
Exemple de capture d'écran d'erreur
Cause
Si l'élément enfant <Alias>
est vide ou non spécifié dans l'élément <Keystore>
de la règle GenerateSAMLAssertion, le déploiement du proxy d'API échoue. Vous devez saisir un alias de keystore valide.
Diagnostic
Examinez toutes les règles GenerateSAMLAssertion dans le proxy d'API spécifique où l'échec a eu lieu. S'il existe une règle GenerateSAMLAssertion dans laquelle l'élément enfant
<Alias>
est vide ou n'est pas spécifié dans l'élément<Keystore>
, il s'agit de la cause de l'erreur.La règle GenerateSAMLAssertion suivante contient un élément enfant
<Alias>
vide dans l'élément<Keystore>
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <GenerateSAMLAssertion name="SAML" ignoreContentType="false">` <CanonicalizationAlgorithm /> <Issuer ref="reference">Issuer name</Issuer> <KeyStore> <Name ref="reference">keystorename</Name> <Alias></Alias> </KeyStore> <OutputVariable> <FlowVariable>assertion.content</FlowVariable> <Message name="request"> <Namespaces> <Namespace prefix="test">http://www.example.com/test</Namespace> </Namespaces> <XPath>/envelope/header</XPath> </Message> </OutputVariable> <SignatureAlgorithm /> <Subject ref="reference">Subject name</Subject> <Template ignoreUnresolvedVariables="false"> <!-- A lot of XML goes here, in CDATA, with {} around each variable --> </Template> </GenerateSAMLAssertion>
Solution
Assurez-vous que l'élément enfant <Name>
est toujours spécifié et non vide dans l'élément <Keystore>
de la règle GenerateSAMLAssertion.
Pour corriger l'exemple ci-dessus, vous pouvez spécifier correctement l'élément <Alias>
et vous assurer qu'une valeur valide est spécifiée pour l'élément <Name>
.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<GenerateSAMLAssertion name="SAML" ignoreContentType="false">
<CanonicalizationAlgorithm />
<Issuer ref="reference">Issuer name</Issuer>
<KeyStore>
<Name ref="reference">keystorename</Name>
<Alias ref="reference">alias</Alias>
</KeyStore>
<OutputVariable>
<FlowVariable>assertion.content</FlowVariable>
<Message name="request">
<Namespaces>
<Namespace prefix="test">http://www.example.com/test</Namespace>
</Namespaces>
<XPath>/envelope/header</XPath>
</Message>
</OutputVariable>
<SignatureAlgorithm />
<Subject ref="reference">Subject name</Subject>
<Template ignoreUnresolvedVariables="false">
<!-- A lot of XML goes here, in CDATA, with {} around
each variable -->
</Template>
</GenerateSAMLAssertion>
Reportez-vous aux exemples de code tirés de l'article "Règles SAMLAssertion".
NullIssuer
Message d'erreur
Le déploiement du proxy d'API par le biais de l'UI Edge ou de l'API de gestion Edge échoue avec le message d'erreur suivant:
Error Deploying Revision revision_number to environment Assertion Issuer cannot be null.
Exemple de message d'erreur
Error Deploying Revision 4 to test
Assertion Issuer cannot be null.
Exemple de capture d'écran d'erreur
Cause
Si l'élément <Issuer>
est vide ou n'est pas spécifié dans la règle GenerateSAMLAssertion, le déploiement du proxy d'API échoue. Vous devez saisir une valeur <Issuer>
valide.
Diagnostic
Examinez toutes les règles GenerateSAMLAssertion dans le proxy d'API spécifique où l'échec a eu lieu. S'il existe une règle GenerateSAMLAssertion dans laquelle l'élément
<Issuer>
est vide ou non spécifié, il s'agit de la cause de l'erreur.La règle GenerateSAMLAssertion suivante contient un élément
<Issuer>
vide :<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <GenerateSAMLAssertion name="SAML" ignoreContentType="false">` <CanonicalizationAlgorithm /> <Issuer></Issuer> <KeyStore> <Name ref="reference">keystorename</Name> <Alias ref="reference">alias</Alias> </KeyStore> <OutputVariable> <FlowVariable>assertion.content</FlowVariable> <Message name="request"> <Namespaces> <Namespace prefix="test">http://www.example.com/test</Namespace> </Namespaces> <XPath>/envelope/header</XPath> </Message> </OutputVariable> <SignatureAlgorithm /> <Subject ref="reference">Subject name</Subject> <Template ignoreUnresolvedVariables="false"> <!-- A lot of XML goes here, in CDATA, with {} around each variable --> </Template> </GenerateSAMLAssertion>
Solution
Assurez-vous que l'élément <Issuer>
est toujours spécifié et non vide dans la règle GenerateSAMLAssertion.
Pour corriger l'exemple ci-dessus, spécifiez correctement l'élément <Issuer>
:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<GenerateSAMLAssertion name="SAML" ignoreContentType="false">
<CanonicalizationAlgorithm />
<Issuer ref="reference">Issuer name</Issuer>
<KeyStore>
<Name ref="reference">keystorename</Name>
<Alias ref="reference">alias</Alias>
</KeyStore>
<OutputVariable>
<FlowVariable>assertion.content</FlowVariable>
<Message name="request">
<Namespaces>
<Namespace prefix="test">http://www.example.com/test</Namespace>
</Namespaces>
<XPath>/envelope/header</XPath>
</Message>
</OutputVariable>
<SignatureAlgorithm />
<Subject ref="reference">Subject name</Subject>
<Template ignoreUnresolvedVariables="false">
<!-- A lot of XML goes here, in CDATA, with {} around
each variable -->
</Template>
</GenerateSAMLAssertion>
Reportez-vous aux exemples de code tirés de l'article "Règles SAMLAssertion".