Stai visualizzando la documentazione di Apigee Edge.
Vai alla
documentazione di Apigee X. informazioni
SourceNotConfigured
Messaggio di errore
Il deployment del proxy API tramite l'UI o l'API di gestione perimetrale non riesce e genera questo messaggio di errore:
Error Deploying Revision revision_number to environment ValidateSAMLAssertion[policy_name]: Source is not correctly configured.
Esempio di messaggio di errore
Error Deploying Revision 2 to test
ValidateSAMLAssertion[Validate-SAML-Assertion-1]: Source is not correctly configured.
Screenshot di errore di esempio
Causa
Il deployment del proxy API non va a buon fine con questo errore se uno o più dei seguenti elementi del criterio Convalida asserzione SAML non sono definiti o vuoti: <Source>
, <XPath>
, <Namespaces>
, <Namespace>
.
Ad esempio, se perdi l'elemento <XPath>
o lasci vuoto l'elemento <Source>
o le sue entità, il deployment del proxy API non andrà a buon fine.
Diagnostica
Identifica il nome del criterio Convalida asserzione SAML non riuscito dal messaggio di errore. Ad esempio, nel seguente errore il nome del criterio Convalida asserzione SAML è
Validate-SAML-Assertion-1
.ValidateSAMLAssertion[Validate-SAML-Assertion-1]: Source is not correctly configured.
Esamina il file XML del criterio Convalida asserzione SAML che non è riuscito. Verifica se uno o più dei seguenti elementi del criterio mancano o sono vuoti:
<Source>
,<XPath>
,<Namespaces>
,<Namespace>
. Se sì, potrebbe essere la causa dell'errore.Ad esempio, il seguente criterio ha un elemento
<Namespaces>
vuoto sotto l'elemento<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>
Nell'esempio precedente, l'elemento
<Namespaces>
è vuoto, pertanto ricevi l'errore:ValidateSAMLAssertion[Validate-SAML-Assertion-1]: Source is not correctly configured.
Risoluzione
Assicurati che i valori dell'elemento <Source>
siano configurati correttamente
con l'elemento <Namespaces>
e il relativo elemento secondario <Namespace>
.
Devi inoltre assicurarti che l'elemento <XPath>
sia definito e non vuoto.
Per correggere il criterio di esempio Convalida asserzione SAML mostrato sopra, potresti aggiungere gli elementi <Namespace>
e <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
Messaggio di errore
Il deployment del proxy API tramite l'UI o l'API di gestione perimetrale non riesce e genera questo messaggio di errore:
Error Deploying Revision revision_number to environment ValidateSAMLAssertion[[Ljava.lang.Object;@object]: Trust store is not correctly configured.
Esempio di messaggio di errore
Error Deploying Revision 2 to test
ValidateSAMLAssertion[[Ljava.lang.Object;@39537262]: Trust store is not correctly configured.
Screenshot di errore di esempio
Causa
Se l'elemento <TrustStore>
è vuoto o non specificato nel criterio Convalida SAMLAssertion, il deployment del proxy API non va a buon fine. È richiesto un archivio di attendibilità valido.
Diagnostica
Esamina tutti i criteri di convalida dell'asserzione SAML nello specifico proxy API in cui si è verificato l'errore. Se esiste un criterio di convalida dell'asserzione SAML in cui l'elemento
<TrustStore>
è vuoto o non specificato, è questa la causa dell'errore.<?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>
Risoluzione
Assicurati che l'elemento <TrustStore>
sia sempre specificato e non vuoto nel criterio Convalida asserzione SAML. Il nome <TrustStore>
deve corrispondere al nome di un TrustStore valido
esistente in tutti gli ambienti in cui stai tentando di eseguire il deployment
di un proxy.
Per correggere l'esempio precedente, puoi specificare l'elemento <TrustStore>
con un valore valido.
<?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>
Per ulteriori informazioni su come utilizzare l'archivio attendibilità, consulta Truststore e keystore.
NullKeyStore
Messaggio di errore
Il deployment del proxy API tramite la UI o l'API Edge Management non riesce e genera questo messaggio di errore:
Error Deploying Revision revision_number to environment Assertion KeyStore name cannot be null.
Esempio di messaggio di errore
Error Deploying Revision 4 to test
Assertion KeyStore name cannot be null.
Screenshot di errore di esempio
Causa
Se l'elemento secondario <Name>
è vuoto o non è specificato nell'elemento <Keystore>
del criterio Genera SAMLAssertion, il deployment del proxy API non va a buon fine. È necessario un nome di archivio chiavi valido.
Diagnostica
Esamina tutti i criteri per la generazione di asserzioni SAML nel proxy API specifico in cui si è verificato l'errore. Se esiste un criterio di generazione dell'asserzione SAML in cui l'elemento secondario
<Name>
è vuoto o non specificato nell'elemento<Keystore>
, è questa la causa dell'errore.Il seguente criterio per la generazione di asserzioni SAML contiene un elemento secondario vuoto
<Name>
nell'elemento<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>
Risoluzione
Assicurati che l'elemento secondario <Name>
sia sempre specificato e non vuoto all'interno dell'elemento <Keystore>
del criterio Genera asserzione SAML.
Per correggere l'esempio precedente, puoi specificare correttamente l'elemento <Name>
e assicurarti che venga specificato un valore valido per l'elemento <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>
Fai riferimento agli esempi dell'articolo di esempio di codice nell'articolo di riferimento per le norme SAMLAssertion.
NullKeyStoreAlias
Messaggio di errore
Il deployment del proxy API tramite l'UI o l'API di gestione perimetrale non riesce e genera questo messaggio di errore:
Error Deploying Revision revision_number to environment Assertion KeyStore alias cannot be null.
Esempio di messaggio di errore
Error Deploying Revision 4 to test
Assertion KeyStore alias cannot be null.
Screenshot di errore di esempio
Causa
Se l'elemento secondario <Alias>
è vuoto o non specificato nell'elemento <Keystore>
del criterio Genera asserzione SAML, il deployment del proxy API non va a buon fine. È richiesto un alias dell'archivio chiavi valido.
Diagnostica
Esamina tutti i criteri per la generazione di asserzioni SAML nel proxy API specifico in cui si è verificato l'errore. Se esiste un criterio di generazione dell'asserzione SAML in cui l'elemento secondario
<Alias>
è vuoto o non specificato nell'elemento<Keystore>
, è questa la causa dell'errore.Il seguente criterio per la generazione di asserzioni SAML contiene un elemento secondario vuoto
<Alias>
nell'elemento<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>
Risoluzione
Assicurati che l'elemento secondario <Name>
sia sempre specificato e non vuoto all'interno dell'elemento <Keystore>
del criterio Genera asserzione SAML.
Per correggere l'esempio precedente, puoi specificare correttamente l'elemento <Alias>
e assicurarti che venga specificato un valore valido per l'elemento <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>
Fai riferimento agli esempi dell'articolo di esempio di codice nell'articolo di riferimento per le norme SAMLAssertion.
NullIssuer
Messaggio di errore
Il deployment del proxy API tramite l'UI o l'API di gestione perimetrale non riesce e genera questo messaggio di errore:
Error Deploying Revision revision_number to environment Assertion Issuer cannot be null.
Esempio di messaggio di errore
Error Deploying Revision 4 to test
Assertion Issuer cannot be null.
Screenshot di errore di esempio
Causa
Se l'elemento <Issuer>
è vuoto o non specificato nel criterio Genera asserzione SAML, il deployment del proxy API non va a buon fine. È richiesto un valore <Issuer>
valido.
Diagnostica
Esamina tutti i criteri per la generazione di asserzioni SAML nello specifico proxy API in cui si è verificato l'errore. Se esiste un criterio di generazione dell'asserzione SAML in cui l'elemento
<Issuer>
è vuoto o non specificato, è questa la causa dell'errore.Il seguente criterio per la generazione di asserzioni SAML contiene un elemento
<Issuer>
vuoto:<?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>
Risoluzione
Assicurati che l'elemento <Issuer>
sia sempre specificato e non vuoto nel criterio Genera asserzione SAML.
Per correggere l'esempio precedente, specifica correttamente l'elemento <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>
Fai riferimento agli esempi dell'articolo di esempio di codice nell'articolo di riferimento per le norme SAMLAssertion.