คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X ข้อมูล
SourceNotConfigured
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ API การจัดการ Edge ล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดนี้
Error Deploying Revision revision_number to environment ValidateSAMLAssertion[policy_name]: Source is not correctly configured.
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Deploying Revision 2 to test
ValidateSAMLAssertion[Validate-SAML-Assertion-1]: Source is not correctly configured.
ภาพหน้าจอตัวอย่างข้อผิดพลาด
สาเหตุ
การทำให้พร็อกซี API ใช้งานได้ล้มเหลวโดยมีข้อผิดพลาดนี้ หากองค์ประกอบต่อไปนี้ของนโยบายตรวจสอบการยืนยัน SAML ไม่ได้กำหนดหรือว่างเปล่า: <Source>
, <XPath>
, <Namespaces>
, <Namespace>
เช่น หากไม่มีองค์ประกอบ <XPath>
หรือปล่อยองค์ประกอบ <Source>
หรือเอนทิตีว่างไว้ จะทำให้ใช้งานพร็อกซี API ไม่สำเร็จ
การวินิจฉัย
ระบุชื่อนโยบายการยืนยันสิทธิ์ SAML ที่ล้มเหลวจากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อผิดพลาดต่อไปนี้ ชื่อนโยบายการยืนยัน SAML คือ
Validate-SAML-Assertion-1
ValidateSAMLAssertion[Validate-SAML-Assertion-1]: Source is not correctly configured.
ตรวจสอบ XML ของนโยบายการยืนยัน SAML ที่ล้มเหลว ตรวจสอบว่าองค์ประกอบต่อไปนี้ของนโยบายอย่างน้อย 1 รายการขาดหายไปหรือว่างเปล่าหรือไม่:
<Source>
,<XPath>
,<Namespaces>
,<Namespace>
หากเป็นเช่นนั้น นี่อาจเป็นสาเหตุของข้อผิดพลาดเช่น นโยบายต่อไปนี้มีองค์ประกอบ
<Namespaces>
ที่ว่างเปล่าภายใต้องค์ประกอบ<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>
ในตัวอย่างข้างต้น องค์ประกอบ
<Namespaces>
ว่างเปล่า คุณจึงได้รับข้อผิดพลาดValidateSAMLAssertion[Validate-SAML-Assertion-1]: Source is not correctly configured.
ความละเอียด
ตรวจสอบว่าการกำหนดค่าขององค์ประกอบ <Source>
ได้รับการกำหนดค่าอย่างถูกต้องด้วยองค์ประกอบ <Namespaces>
และองค์ประกอบย่อย <Namespace>
นอกจากนี้คุณต้องตรวจสอบว่าได้กําหนดองค์ประกอบ <XPath>
ไว้และไม่ว่างเปล่า
หากต้องการแก้ไขตัวอย่างนโยบายการยืนยันความถูกต้องของ SAML ที่แสดงด้านบน ให้เพิ่มองค์ประกอบ <Namespace>
รวมถึง <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
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ API การจัดการ Edge ล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดนี้
Error Deploying Revision revision_number to environment ValidateSAMLAssertion[[Ljava.lang.Object;@object]: Trust store is not correctly configured.
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Deploying Revision 2 to test
ValidateSAMLAssertion[[Ljava.lang.Object;@39537262]: Trust store is not correctly configured.
ภาพหน้าจอตัวอย่างข้อผิดพลาด
สาเหตุ
หากองค์ประกอบ <TrustStore>
ว่างเปล่าหรือไม่ได้ระบุในนโยบาย ValidSAMLAssertion จะทำให้การทำให้พร็อกซี API ใช้งานได้ไม่สำเร็จ ต้องระบุ Trust Store ที่ถูกต้อง
การวินิจฉัย
ตรวจสอบนโยบายการตรวจสอบการยืนยัน SAML ทั้งหมดในพร็อกซี API เฉพาะที่เกิดความล้มเหลว หากมีนโยบายการยืนยัน SAML ที่องค์ประกอบ
<TrustStore>
ว่างเปล่าหรือไม่ได้ระบุ นั่นเป็นสาเหตุของข้อผิดพลาด<?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>
ความละเอียด
ตรวจสอบว่าองค์ประกอบ <TrustStore>
ได้รับการระบุไว้เสมอและไม่ว่างเปล่าภายในนโยบายตรวจสอบการยืนยัน SAML ชื่อ <TrustStore>
ควรตรงกับชื่อของ TrustStore ที่ถูกต้องซึ่งมีอยู่ในทุกสภาพแวดล้อมที่คุณพยายามทำให้พร็อกซีใช้งานได้
หากต้องการแก้ไขตัวอย่างข้างต้น ให้ระบุองค์ประกอบ <TrustStore>
ด้วยค่าที่ถูกต้อง
<?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>
โปรดดู Truststores และ Keystores สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้ Truststore
NullKeyStore
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API ล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดนี้
Error Deploying Revision revision_number to environment Assertion KeyStore name cannot be null.
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Deploying Revision 4 to test
Assertion KeyStore name cannot be null.
ภาพหน้าจอตัวอย่างข้อผิดพลาด
สาเหตุ
หากองค์ประกอบย่อย <Name>
ว่างเปล่าหรือไม่ได้ระบุในองค์ประกอบ <Keystore>
ของนโยบาย GenerateSAMLAssertion จะทำให้ใช้งานพร็อกซี API ไม่สำเร็จ ต้องระบุชื่อคีย์สโตร์ที่ถูกต้อง
การวินิจฉัย
ตรวจสอบนโยบาย "สร้างการยืนยัน SAML" ทั้งหมดในพร็อกซี API ที่เกิดข้อผิดพลาด หากมีนโยบายสร้างการยืนยัน SAML ที่องค์ประกอบย่อย
<Name>
ว่างเปล่าหรือไม่ได้ระบุในองค์ประกอบ<Keystore>
นั่นเป็นสาเหตุของข้อผิดพลาดนโยบายสร้างการยืนยัน SAML ต่อไปนี้มีองค์ประกอบย่อย
<Name>
ที่ว่างเปล่าในองค์ประกอบ<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>
ความละเอียด
ตรวจสอบว่าองค์ประกอบย่อย <Name>
ได้รับการระบุไว้เสมอและไม่ว่างเปล่าภายในองค์ประกอบ <Keystore>
ของนโยบายสร้างการยืนยัน SAML
หากต้องการแก้ไขตัวอย่างข้างต้น คุณระบุองค์ประกอบ <Name>
ได้อย่างถูกต้องและตรวจสอบว่าระบุค่าที่ถูกต้องให้กับองค์ประกอบ <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>
ดูตัวอย่างจากตัวอย่างโค้ดในบทความอ้างอิงนโยบาย SAMLAssertion
NullKeyStoreAlias
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ API การจัดการ Edge ล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดนี้
Error Deploying Revision revision_number to environment Assertion KeyStore alias cannot be null.
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Deploying Revision 4 to test
Assertion KeyStore alias cannot be null.
ภาพหน้าจอตัวอย่างข้อผิดพลาด
สาเหตุ
หากองค์ประกอบย่อย <Alias>
ว่างเปล่าหรือไม่ได้ระบุในองค์ประกอบ <Keystore>
ของนโยบายสร้างการยืนยัน SAML การทำให้พร็อกซี API ใช้งานได้จะไม่สำเร็จ ต้องมีชื่อแทนคีย์สโตร์ที่ถูกต้อง
การวินิจฉัย
ตรวจสอบนโยบาย "สร้างการยืนยัน SAML" ทั้งหมดในพร็อกซี API ที่เกิดข้อผิดพลาด หากมีนโยบายสร้างการยืนยัน SAML ที่องค์ประกอบย่อย
<Alias>
ว่างเปล่าหรือไม่ได้ระบุในองค์ประกอบ<Keystore>
นั่นเป็นสาเหตุของข้อผิดพลาดนโยบายสร้างการยืนยัน SAML ต่อไปนี้มีองค์ประกอบย่อย
<Alias>
ที่ว่างเปล่าในองค์ประกอบ<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>
ความละเอียด
ตรวจสอบว่าองค์ประกอบย่อย <Name>
ระบุไว้เสมอและต้องไม่ว่างเปล่าภายในองค์ประกอบ <Keystore>
ของนโยบายสร้างการยืนยัน SAML
หากต้องการแก้ไขตัวอย่างข้างต้น คุณระบุองค์ประกอบ <Alias>
ได้อย่างถูกต้อง และตรวจสอบว่าระบุค่าที่ถูกต้องให้กับองค์ประกอบ <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>
ดูตัวอย่างจากตัวอย่างโค้ดในบทความอ้างอิงนโยบาย SAMLAssertion
NullIssuer
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ API การจัดการ Edge ล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดนี้
Error Deploying Revision revision_number to environment Assertion Issuer cannot be null.
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Deploying Revision 4 to test
Assertion Issuer cannot be null.
ภาพหน้าจอตัวอย่างข้อผิดพลาด
สาเหตุ
หากองค์ประกอบ <Issuer>
ว่างเปล่าหรือไม่ได้ระบุในนโยบายสร้าง SAML
การยืนยัน การทำให้พร็อกซี API ใช้งานได้จะไม่สำเร็จ ต้องระบุค่า <Issuer>
ที่ถูกต้อง
การวินิจฉัย
ตรวจสอบนโยบาย "สร้างการยืนยัน SAML" ทั้งหมดในพร็อกซี API เฉพาะที่เกิดความล้มเหลว หากมีนโยบายสร้างการยืนยัน SAML ที่องค์ประกอบ
<Issuer>
ว่างเปล่าหรือไม่ได้ระบุ นั่นเป็นสาเหตุของข้อผิดพลาดนโยบายสร้างการยืนยัน SAML ต่อไปนี้มีองค์ประกอบ
<Issuer>
ที่ว่างเปล่า<?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>
ความละเอียด
ตรวจสอบว่าได้ระบุเอลิเมนต์ <Issuer>
เสมอและไม่ว่างเปล่าในนโยบายสร้างการยืนยัน SAML
หากต้องการแก้ไขตัวอย่างข้างต้น ให้ระบุองค์ประกอบ <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>
ดูตัวอย่างจากตัวอย่างโค้ดในบทความอ้างอิงนโยบาย SAMLAssertion