Estás consultando la documentación de Apigee y Apigee Hybrid.
Consulta la documentación de
Apigee Edge.
SourceNotConfigured
Mensaje de error
La implementación del proxy de API a través de la interfaz de usuario de Apigee o de la API de Apigee falla y se muestra este mensaje de error:
Error Deploying Revision revision_number to environment ValidateSAMLAssertion[policy_name]: Source is not correctly configured.
Ejemplo de mensaje de error
Error Deploying Revision 2 to test
ValidateSAMLAssertion[Validate-SAML-Assertion-1]: Source is not correctly configured.
Captura de pantalla de ejemplo de error
Causa
La implementación del proxy de API falla con este error si no se define o está vacío uno o varios de los siguientes elementos de la política ValidateSAMLAssertion
: <Source>
, <XPath>
, <Namespaces>
y <Namespace>
.
Por ejemplo, si falta el elemento <XPath>
o el elemento <Source>
o sus entidades están vacíos, se producirá un error en la implementación del proxy de la API.
Diagnóstico
Identifica el nombre de la política
ValidateSAMLAssertion
que ha fallado en el mensaje de error. Por ejemplo, en el siguiente error, el nombre de la políticaValidateSAMLAssertion
esValidate-SAML-Assertion-1
.ValidateSAMLAssertion[Validate-SAML-Assertion-1]: Source is not correctly configured.
Examina el archivo XML de la política
ValidateSAMLAssertion
que ha fallado. Comprueba si falta o está vacío alguno de los siguientes elementos de la política:<Source>
,<XPath>
,<Namespaces>
y<Namespace>
. Si es así, podría ser la causa del error.Por ejemplo, la siguiente política tiene un elemento
<Namespaces>
vacío en el 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>
En el ejemplo anterior, el elemento
<Namespaces>
está vacío, por lo que se produce el siguiente error:ValidateSAMLAssertion[Validate-SAML-Assertion-1]: Source is not correctly configured.
Resolución
Asegúrate de que los valores del elemento <Source>
estén configurados correctamente con el elemento <Namespaces>
y su elemento secundario <Namespace>
.
También debe asegurarse de que el elemento <XPath>
esté definido y no esté vacío.
Para corregir la política de ejemplo ValidateSAMLAssertion
que se muestra arriba, puede añadir los elementos <Namespace>
y <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
Mensaje de error
La implementación del proxy de API a través de la interfaz de usuario de Apigee o de la API de Apigee falla y se muestra este mensaje de error:
Error Deploying Revision revision_number to environment ValidateSAMLAssertion[[Ljava.lang.Object;@object]: Trust store is not correctly configured.
Ejemplo de mensaje de error
Error Deploying Revision 2 to test
ValidateSAMLAssertion[[Ljava.lang.Object;@39537262]: Trust store is not correctly configured.
Captura de pantalla de ejemplo de error
Causa
Si el elemento <TrustStore>
está vacío o no se especifica en la política ValidateSAMLAssertion, se producirá un error al implementar el proxy de API. Es obligatorio indicar un almacén de confianza válido.
Diagnóstico
Examina todas las políticas de Validate SAML Assertion del proxy de API específico en el que se ha producido el error. Si hay alguna política Validate SAML Assertion en la que el elemento
<TrustStore>
esté vacío o no se haya especificado, ese será el motivo del error.<?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>
Resolución
Asegúrese de que el elemento <TrustStore>
siempre se especifique y no esté vacío en la política SAMLAssertion. El nombre <TrustStore>
debe coincidir con el de un TrustStore válido
que exista en todos los entornos en los que intentes implementar
un proxy.
Para corregir el ejemplo anterior, puede especificar el elemento <TrustStore>
con un valor válido.
<?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
Mensaje de error
La implementación del proxy de API a través de la interfaz de usuario de Apigee o de la API falla y se muestra este mensaje de error:
Error Deploying Revision revision_number to environment Assertion KeyStore name cannot be null.
Ejemplo de mensaje de error
Error Deploying Revision 4 to test
Assertion KeyStore name cannot be null.
Captura de pantalla de ejemplo de error
Causa
Si el elemento secundario <Name>
está vacío o no se especifica en el elemento <Keystore>
de la política GenerateSAMLAssertion
, se producirá un error en la implementación del proxy de API. Es obligatorio indicar un nombre de almacén de claves válido.
Diagnóstico
Examina todas las políticas de
GenerateSAMLAssertion
en el proxy de API específico en el que se ha producido el fallo. Si hay alguna políticaGenerateSAMLAssertion
en la que el elemento secundario<Name>
esté vacío o no se haya especificado en el elemento<Keystore>
, ese será el motivo del error.La siguiente política
GenerateSAMLAssertion
tiene un elemento secundario<Name>
vacío en el 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>
Resolución
Asegúrate de que el elemento secundario <Name>
siempre se especifique y no esté vacío en el elemento <Keystore>
de la política GenerateSAMLAssertion
.
Para corregir el ejemplo anterior, puede especificar el elemento <Name>
correctamente y asegurarse de que se ha especificado un valor válido para el 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 los ejemplos de la política SAMLAssertion.
NullKeyStoreAlias
Mensaje de error
La implementación del proxy de API a través de la interfaz de usuario de Apigee o de la API de Apigee falla y se muestra este mensaje de error:
Error Deploying Revision revision_number to environment Assertion KeyStore alias cannot be null.
Ejemplo de mensaje de error
Error Deploying Revision 4 to test
Assertion KeyStore alias cannot be null.
Captura de pantalla de ejemplo de error
Causa
Si el elemento secundario <Alias>
está vacío o no se especifica en el elemento <Keystore>
de la política GenerateSAMLAssertion
, se producirá un error en la implementación del proxy de API. Es obligatorio indicar un alias de almacén de claves válido.
Diagnóstico
Examina todas las políticas de
GenerateSAMLAssertion
en el proxy de API específico en el que se ha producido el fallo. Si hay alguna políticaGenerateSAMLAssertion
en la que el elemento secundario<Alias>
esté vacío o no se haya especificado en el elemento<Keystore>
, ese será el motivo del error.El siguiente elemento
GenerateSAMLAssertion
tiene un elemento secundario<Alias>
vacío en el 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>
Resolución
Asegúrate de que el elemento secundario <Name>
siempre se especifique y no esté vacío en el elemento <Keystore>
de la política GenerateSAMLAssertion
.
Para corregir el ejemplo anterior, puede especificar el elemento <Alias>
correctamente y asegurarse de que se ha especificado un valor válido para el 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 los ejemplos de la política SAMLAssertion.
NullIssuer
Mensaje de error
La implementación del proxy de API a través de la interfaz de usuario de Apigee o de la API de Apigee falla y se muestra este mensaje de error:
Error Deploying Revision revision_number to environment Assertion Issuer cannot be null.
Ejemplo de mensaje de error
Error Deploying Revision 4 to test
Assertion Issuer cannot be null.
Captura de pantalla de ejemplo de error
Causa
Si el elemento <Issuer>
está vacío o no se especifica en la política GenerateSAMLAssertion
, se produce un error en la implementación del proxy de API. Se requiere un valor de <Issuer>
válido.
Diagnóstico
Examina todas las políticas
GenerateSAMLAssertion
de la API Proxy específica en la que se ha producido el error. Si hay alguna políticaGenerateSAMLAssertion
en la que el elemento<Issuer>
esté vacío o no se haya especificado, ese será el motivo del error.La siguiente política
GenerateSAMLAssertion
tiene un elemento<Issuer>
vacío:<?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>
Resolución
Asegúrate de que el elemento <Issuer>
siempre se especifique y no esté vacío en la política GenerateSAMLAssertion
.
Para corregir el ejemplo anterior, especifica el elemento <Issuer>
correctamente:
<?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 los ejemplos de la política SAMLAssertion.