Stai visualizzando la documentazione di Apigee e Apigee hybrid.
Visualizza
Documentazione di Apigee Edge.
SourceNotConfigured
Messaggio di errore
Deployment del proxy API tramite l'UI di Apigee o L'API Apigee non funziona con questo messaggio di errore:
Error Deploying Revision revision_number to environment ValidateSAMLAssertion[policy_name]: Source is not correctly configured.
Messaggio di errore di esempio
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 ValidateSAMLAssertion
non sono definiti o vuoti: <Source>
, <XPath>
, <Namespaces>
, <Namespace>
.
Ad esempio, se manchi l'elemento <XPath>
o lasci vuoto l'elemento <Source>
o le relative entità, il deployment del proxy API non va a buon fine.
Diagnosi
Identifica il nome del criterio
ValidateSAMLAssertion
non riuscito dal messaggio di errore. Ad esempio, nel seguente errore Il nome del criterioValidateSAMLAssertion
èValidate-SAML-Assertion-1
.ValidateSAMLAssertion[Validate-SAML-Assertion-1]: Source is not correctly configured.
Esamina il file XML del criterio
ValidateSAMLAssertion
non riuscito. Verifica se uno o più dei seguenti elementi del criterio sono mancanti o 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 viene visualizzato 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 anche assicurarti che l'elemento <XPath>
sia definito e non vuoto.
Per correggere la norma ValidateSAMLAssertion
di esempio mostrata sopra, devi
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
Deployment del proxy API tramite l'interfaccia utente di Apigee o le API Apigee non riesce e restituisce questo messaggio di errore:
Error Deploying Revision revision_number to environment ValidateSAMLAssertion[[Ljava.lang.Object;@object]: Trust store is not correctly configured.
Messaggio di errore di esempio
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 ValidateSAMLAssertion, il deployment del proxy API non va a buon fine. È necessario un elenco attendibile valido.
Diagnosi
Esamina tutti i criteri di convalida dell'asserzione SAML nella specifica Proxy API in cui si è verificato l'errore. Se esiste un pulsante Criterio di asserzione SAML in cui l'elemento
<TrustStore>
è vuoto o se 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 deve essere vuoto all'interno del criterio SAMLAssertion. <TrustStore>
deve corrispondere a quello di un TrustStore valido
esistente in tutti gli ambienti in cui si sta tentando di eseguire il deployment
un proxy.
Per correggere l'esempio precedente, puoi specificare <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>
NullKeyStore
Messaggio di errore
Il deployment del proxy API tramite l'interfaccia utente di Apigee o l'API non riesce con 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 nel
<Keystore>
del criterio GenerateSAMLAssertion
, poi
che il deployment del proxy API non va a buon fine. È necessario un nome del keystore valido.
Diagnosi
Esamina tutti i criteri
GenerateSAMLAssertion
nel proxy API specifico in cui si è verificato l'errore. Se è presente un criterioGenerateSAMLAssertion
in cui l'elemento secondario<Name>
è vuoto o non specificato nell'elemento<Keystore>
, è la causa dell'errore.Il seguente criterio
GenerateSAMLAssertion
ha un elemento figlio vuoto elemento<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>
di GenerateSAMLAssertion
.
Per correggere l'esempio precedente, puoi specificare correttamente l'elemento <Name>
e assicurati 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>
Consulta gli esempi nella sezione Criterio SAMLAssertion.
NullKeyStoreAlias
Messaggio di errore
Deployment del proxy API tramite l'UI di Apigee o L'API Apigee non funziona con questo messaggio di errore:
Error Deploying Revision revision_number to environment Assertion KeyStore alias cannot be null.
Messaggio di errore di esempio
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 nel
<Keystore>
del criterio GenerateSAMLAssertion
, poi
che il deployment del proxy API non va a buon fine. È necessario un alias del Keystore valido.
Diagnosi
Esamina tutti i criteri
GenerateSAMLAssertion
nello specifico Proxy API in cui si è verificato l'errore. Se sono presenti CriterioGenerateSAMLAssertion
in cui l'elemento secondario<Alias>
è vuoto o non specificato nell'elemento<Keystore>
, viene la causa dell'errore.Il seguente
GenerateSAMLAssertion
ha un elemento secondario<Alias>
vuoto 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 GenerateSAMLAssertion
.
Per correggere l'esempio precedente, puoi specificare l'elemento <Alias>
correttamente e verificare che sia stato specificato un valore valido per
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>
Consulta gli esempi nella sezione Criterio SAMLAssertion.
NullIssuer
Messaggio di errore
Il deployment del proxy API tramite l'interfaccia utente di Apigee o l'API Apigee non va a buon fine con 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
GenerateSAMLAssertion
, il deployment del proxy API non va a buon fine. È obbligatorio un valore <Issuer>
valido.
Diagnosi
Esamina tutti i criteri
GenerateSAMLAssertion
nell'API Proxy specifico in cui si è verificato l'errore. Se sono presenti CriterioGenerateSAMLAssertion
in cui l'elemento<Issuer>
è vuoto o meno questa è la causa dell'errore.Il seguente criterio
GenerateSAMLAssertion
ha 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 GenerateSAMLAssertion
.
Per correggere l'esempio riportato sopra, 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 tratti da Criterio dell'asserzione SAML.