นโยบาย AccessEntity

คุณกำลังดูเอกสารประกอบ Apigee Edge
ไปที่ เอกสารประกอบเกี่ยวกับ Apigee X.
ข้อมูล

อะไร

เรียกข้อมูลโปรไฟล์เอนทิตีที่คุณระบุจากที่เก็บข้อมูล Apigee Edge นโยบายจะวาง ในตัวแปรที่มีชื่อตามรูปแบบ AccessEntity.{policy_name} คุณ สามารถใช้ AccessEntity เพื่อเข้าถึงโปรไฟล์สำหรับเอนทิตีต่อไปนี้

  • แอป
  • ผลิตภัณฑ์ API
  • บริษัท
  • นักพัฒนาซอฟต์แวร์ของบริษัท
  • คีย์ของผู้บริโภค
  • นักพัฒนาซอฟต์แวร์

นโยบาย AccessEntity ทำหน้าที่เป็นการค้นหาฐานข้อมูลรันไทม์ตามนโยบาย คุณ สามารถใช้ข้อมูลโปรไฟล์ที่นโยบายนี้ส่งคืนเพื่อเปิดใช้ลักษณะการทำงานแบบไดนามิก เช่น การกำหนดเส้นทางปลายทางแบบมีเงื่อนไข การดำเนินการของโฟลว์ การบังคับใช้นโยบาย

คุณใช้นโยบาย AccessEntity เพื่อรับข้อมูลโปรไฟล์เอนทิตีเป็น XML แล้วใส่ลงในตัวแปร คุณสามารถระบุเอนทิตีที่จะได้รับโดยการระบุเอนทิตี และตัวระบุอย่างน้อย 1 ตัวซึ่งระบุเอนทิตีของประเภทนั้นๆ ที่คุณต้องการ ภายหลัง ในอีก อีกนโยบายหนึ่ง คุณสามารถเรียกดูข้อมูลโปรไฟล์เอนทิตีด้วยนโยบายอื่น เช่น นโยบาย ExtractVariable หรือนโยบาย AssignMessage

ตัวอย่าง

ตัวอย่างต่อไปนี้แสดง AccessEntity ที่ใช้ร่วมกับ ExtractVariables และ AssignMessage นโยบายที่จะดึงข้อมูลของนักพัฒนาซอฟต์แวร์ อีเมลแล้วเพิ่มลงในส่วนหัวของ HTTP

การรับอีเมลนักพัฒนาแอปเพื่อใช้ในนโยบายอื่นๆ

ตั้งค่านโยบาย AccessEntity เพื่อระบุว่าจะรับโปรไฟล์เอนทิตีใด Edge และตำแหน่งที่จะวางข้อมูลโปรไฟล์

ในตัวอย่างต่อไปนี้ นโยบายจะได้รับโปรไฟล์เอนทิตี developer โดยใช้ มีการส่งคีย์ API เป็นพารามิเตอร์การค้นหาเพื่อระบุนักพัฒนาซอฟต์แวร์ โปรไฟล์ถูกวางไว้ใน ตัวแปรที่มีชื่ออยู่ในรูปแบบ AccessEntity.{policy_name} ดังนั้นตัวแปร ที่นโยบายนี้กำหนดจะเป็น AccessEntity.GetDeveloperProfile

<AccessEntity name="GetDeveloperProfile">
  <!-- This is the type entity whose profile we need to pull from the Edge datastore. -->
  <EntityType  value="developer"/>
  <!-- We tell the policy to use the API key (presented as query parameter) to identify the developer. -->
  <EntityIdentifier ref="request.queryparam.apikey" type="consumerkey"/> 
</AccessEntity>

ใช้นโยบายอื่นเพื่อดึงข้อมูลค่าโปรไฟล์เอนทิตีจากตัวแปรที่กำหนดโดย AccessEntity

ในตัวอย่างต่อไปนี้ นโยบาย ExtractVariables จะดึงค่าจาก ตัวแปร AccessEntity.GetDeveloperProfile ที่ตั้งค่าไว้ก่อนหน้านี้โดย AccessEntity

โปรดทราบว่าค่าที่ดึงมานั้นระบุเป็นนิพจน์ XPath ในค่า องค์ประกอบ XMLPayload ค่าที่ดึงมาจะวางอยู่ใน ตัวแปร developer.email

<ExtractVariables name="SetDeveloperProfile">
  <!-- The source element points to the variable populated by AccessEntity policy. 
  The format is <policy-type>.<policy-name>.
  In this case, the variable contains the whole developer profile. -->
  <Source>AccessEntity.GetDeveloperProfile</Source> 
  <VariablePrefix>developer</VariablePrefix>
  <XMLPayload>
    <Variable name="email" type="string"> 
        <!-- You parse elements from the developer profile using XPath. -->
      <XPath>/Developer/Email</XPath>
    </Variable>
  </XMLPayload>
</ExtractVariables>

นโยบาย AssignMessage ต่อไปนี้จะเรียกข้อมูลอีเมลของนักพัฒนาซอฟต์แวร์ที่ตั้งค่าโดย นโยบาย ExtractVariable

<!-- We'll use this policy to return the variables set in the developer profile, 
just so that we can easily see them in the response. -->
<AssignMessage name="EchoVariables">
  <AssignTo createNew="false" type="response"></AssignTo>
  <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables>
  <Set>
    <Headers>
      <Header name="X-Developer-email">{developer.email}</Header>
    </Headers>
  </Set>
</AssignMessage>

การอ้างอิงองค์ประกอบ

พื้นฐานของโครงสร้างของนโยบาย AccessEntity คือ

<AccessEntity name="policy_name">
  <EntityType  value="entity_type"/>
  <EntityIdentifier ref="entity_identifier" type="identifier_type"/> 
  <SecondaryIdentifier ref="secondary_identifier" type="identifier_type"/>
</AccessEntity>

คุณสามารถเข้าถึงเอนทิตีที่อยู่ในประเภทเดียวกันหลายรายการได้ โดยจัดกลุ่มเป็น องค์ประกอบ Identifiers:

<AccessEntity name="name_of_the_policy">
  <EntityType  value="type_of_entity"/>
  <Identifiers>
    <Identifier>
      <EntityIdentifier ref="reference_to_entity_identifier" type*="identifier_type"/> 
      <SecondaryIdentifier ref="reference_to_secondary_entity_identifier" type="identifier_type"/><!-- optional -->
    </Identifier >
    <Identifier>
      <EntityIdentifier ref="reference_to_entity_identifier" type*="identifier_type"/> 
      <SecondaryIdentifier ref="reference_to_secondary_entity_identifier" type="identifier_type"/><!-- optional -->
    </Identifier >
  </Identifiers>
</AccessEntity>

&lt;AccessEntity&gt; แอตทริบิวต์

<AccessEntity async="false" continueOnError="false" enabled="true" name="policy_name">

ตารางต่อไปนี้อธิบายแอตทริบิวต์ทั่วไปในองค์ประกอบระดับบนสุดของนโยบายทั้งหมด

แอตทริบิวต์ คำอธิบาย ค่าเริ่มต้น การมีบุคคลอยู่
name

ชื่อภายในของนโยบาย ค่าของแอตทริบิวต์ name สามารถ ประกอบด้วยตัวอักษร ตัวเลข การเว้นวรรค ขีดกลางสั้น ขีดล่าง และจุด ค่านี้ไม่สามารถ เกิน 255 อักขระ

(ไม่บังคับ) ใช้องค์ประกอบ <DisplayName> เพื่อติดป้ายกำกับนโยบายใน เครื่องมือแก้ไขพร็อกซี UI การจัดการด้วยชื่อที่เป็นภาษาธรรมชาติต่างกัน

ไม่มี ต้องระบุ
continueOnError

ตั้งค่าเป็น false เพื่อแสดงผลข้อผิดพลาดเมื่อนโยบายล้มเหลว เป็นเรื่องปกติ พฤติกรรมสำหรับนโยบายส่วนใหญ่

ตั้งค่าเป็น true เพื่อให้ดำเนินการตามขั้นตอนได้อย่างต่อเนื่องแม้จะมีนโยบายแล้วก็ตาม ล้มเหลว

เท็จ ไม่บังคับ
enabled

ตั้งค่าเป็น true เพื่อบังคับใช้นโยบาย

ตั้งค่าเป็น false เพื่อปิดนโยบาย นโยบายจะไม่ บังคับใช้ แม้ว่าจะยังคงแนบกับขั้นตอน

จริง ไม่บังคับ
async

แอตทริบิวต์นี้เลิกใช้งานแล้ว

เท็จ เลิกใช้

&lt;DisplayName&gt; องค์ประกอบ

ใช้เพิ่มเติมจากแอตทริบิวต์ name เพื่อติดป้ายกำกับนโยบายใน เครื่องมือแก้ไขพร็อกซี UI การจัดการด้วยชื่อที่เป็นภาษาธรรมชาติต่างกัน

<DisplayName>Policy Display Name</DisplayName>
ค่าเริ่มต้น

ไม่มี

หากไม่ใส่องค์ประกอบนี้ ค่าของแอตทริบิวต์ name ของนโยบายจะเป็น

การมีบุคคลอยู่ ไม่บังคับ
ประเภท สตริง

&lt;EntityIdentifier&gt; องค์ประกอบ

ระบุเอนทิตีเฉพาะของประเภทที่ระบุใน EntityType เพื่อรับ

<EntityIdentifier ref="value_variable" type="identifier_type"/> 

ค่าเริ่มต้น

ไม่มี

การตรวจหาบุคคล

ต้องระบุ

ประเภท

สตริง

Attributes

แอตทริบิวต์ คำอธิบาย ค่าเริ่มต้น การมีบุคคลอยู่ ประเภท
อ้างอิง

ตัวแปรที่ระบุแหล่งที่มาของตัวระบุ เช่น request.queryparam.apikey

ไม่มี ต้องระบุ สตริง
ประเภท ประเภทที่ตัวแปรป้อนข้อมูลในแอตทริบิวต์ ref เช่น consumerkey ดูประเภทเอนทิตีและตัวระบุสำหรับ รายการค่า ต้องระบุ สตริง

ตัวอย่าง

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AccessEntity async="false" continueOnError="false" enabled="true" name="GetCompany">
    <DisplayName>GetCompanyProfile</DisplayName>
    <EntityType value="company"></EntityType>
    <EntityIdentifier ref="request.queryparam.apikey" type="consumerkey"/>
</AccessEntity>

&lt;EntityType&gt; องค์ประกอบ

ระบุประเภทเอนทิตีที่จะดึงจากพื้นที่เก็บข้อมูล

<EntityType  value="entity_type"/>

ค่าเริ่มต้น

ไม่มี

การตรวจหาบุคคล

ต้องระบุ

ประเภท

สตริง

ใช้องค์ประกอบ EntityIdentifier เพื่อระบุ เกี่ยวกับเอนทิตีของประเภทนั้นๆ ที่คุณต้องการ สําหรับการอ้างอิงประเภทเอนทิตี โปรดดูประเภทเอนทิตีและตัวระบุ

Attributes

แอตทริบิวต์ คำอธิบาย ค่าเริ่มต้น การมีบุคคลอยู่ ประเภท
value ประเภทเอนทิตีที่รองรับประเภทใดประเภทหนึ่ง ดูประเภทเอนทิตีและ ตัวระบุสำหรับรายการ ไม่มี ต้องระบุ สตริง

&lt;SecondaryIdentifier&gt; องค์ประกอบ

ระบุค่าเพื่อระบุความต้องการที่จะใช้ร่วมกับ EntityIdentifier อินสแตนซ์ของ EntityType ที่ระบุ

<SecondaryIdentifier ref="value_variable" type="identifier_type"/>

ค่าเริ่มต้น

ไม่มี

การตรวจหาบุคคล

ไม่บังคับ

ประเภท

สตริง

ใช้ SecondaryIdentifier เมื่อระบุเฉพาะ EntityIdentifier ไม่ได้รับประกันว่าคุณจะได้รับรายการใดรายการหนึ่ง ดูการจำกัดขอบเขต ผลลัพธ์ที่มีตัวระบุรองเพื่อดูข้อมูลเพิ่มเติม

ระบบไม่รองรับการใช้องค์ประกอบ SecondaryIdentifier หลายรายการ

Attributes

แอตทริบิวต์ คำอธิบาย ค่าเริ่มต้น การมีบุคคลอยู่ ประเภท
อ้างอิง

ตัวแปรที่ระบุแหล่งที่มาของตัวระบุ เช่น request.queryparam.apikey

ไม่มี ต้องระบุ สตริง
ประเภท ประเภทที่ตัวแปรป้อนข้อมูลในแอตทริบิวต์ ref เช่น consumerkey ดูประเภทเอนทิตีและตัวระบุสำหรับ รายการค่า ต้องระบุ สตริง

ตัวอย่าง

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AccessEntity async="false" continueOnError="false" enabled="true" name="GetAPIProduct">
    <DisplayName>GetAPIProduct</DisplayName>
    <EntityType value="apiproduct"></EntityType>
    <EntityIdentifier ref="developer.app.name" type="appname"/> 
    <SecondaryIdentifier ref="developer.id" type="developerid"/> 
</AccessEntity>

หมายเหตุการใช้งาน

การจำกัดผลลัพธ์ให้แคบลงด้วยตัวระบุรอง

สำหรับบางเอนทิตี การให้ตัวระบุ 1 รายการอาจไม่เจาะจงพอที่จะได้รับเอนทิตีที่คุณ ต้องการ ในกรณีเหล่านั้น คุณสามารถใช้ตัวระบุรองเพื่อจำกัดผลลัพธ์ให้แคบลงได้

การกำหนดค่านโยบายแบบกว้างๆ อย่างแรกอาจเป็นดังนี้

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AccessEntity async="false" continueOnError="false" enabled="true" name="GetApp">
    <DisplayName>GetAppProfile</DisplayName>
    <EntityType value="apiproduct"></EntityType>
    <EntityIdentifier ref="request.queryparam.apikey" type="consumerkey"/>
</AccessEntity>

เนื่องจากแอปเชื่อมโยงกับผลิตภัณฑ์ API ได้หลายรายการ การใช้เฉพาะรหัสแอปอาจไม่ ส่งคืนผลิตภัณฑ์ API ที่คุณต้องการ (คุณอาจได้รับเฉพาะผลิตภัณฑ์แรกที่ตรงกันหลายรายการ)

คุณสามารถใช้ SecondaryIdentifier เพื่อให้ได้ผลลัพธ์ที่ตรงกันมากขึ้น สำหรับ เช่น คุณอาจมีตัวแปร appname และ developerid ในขั้นตอนนี้ เพราะระบบจะป้อนข้อมูลเหล่านี้โดยค่าเริ่มต้นในระหว่างการแลกเปลี่ยน OAuth 2.0 คุณสามารถใช้ค่า ตัวแปรเหล่านั้นในนโยบาย AccessEntity เพื่อรับรายละเอียดโปรไฟล์เกี่ยวกับคำขอ แอป

การกำหนดค่านโยบายที่เจาะจงมากขึ้นอาจมีลักษณะดังนี้

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AccessEntity async="false" continueOnError="false" enabled="true" name="GetApp">
    <DisplayName>GetAppProfile</DisplayName>
    <EntityType value="apiproduct"></EntityType>
    <EntityIdentifier ref="developer.app.name" type="appname"/> 
    <SecondaryIdentifier ref="developer.id" type="developerid"/> 
</AccessEntity>

ประเภทเอนทิตีและตัวระบุที่รองรับ

AccessEntity รองรับประเภทเอนทิตีและตัวระบุต่อไปนี้

ค่า EntityType ประเภท EntityIdentifier รองตัวระบุ
apiproduct appid apiresource
apiproductname
appname apiresource
developeremail
developerid
companyname
consumerkey apiresource
app appid
appname developeremail
developerid
companyname
consumerkey
authorizationcode authorizationcode
company appid
company
consumerkey
companydeveloper companyname
consumerkey consumerkey
consumerkey_scope consumerkey
developer appid
consumerkey
developeremail
developerid
requesttoken requesttoken consumerkey
verifier verifier

ตัวอย่าง XML ของโปรไฟล์เอนทิตี

หากต้องการดึงค่าโปรไฟล์เอนทิตีที่คุณต้องการด้วย XPath คุณจะต้องรู้บางอย่างเกี่ยวกับ โครงสร้างของ XML ของโปรไฟล์ สำหรับตัวอย่างของโครงสร้าง ให้ใช้การเรียก API การจัดการเพื่อรับ XML สำหรับเอนทิตีที่คุณต้องการ โปรดดูรายละเอียดที่ API การจัดการ ข้อมูลอ้างอิง

ส่วนต่อไปนี้จะมีโค้ดสำหรับการเรียก API พร้อมด้วยตัวอย่าง XML จากการเรียก

แอป

$ curl -H "Accept:text/xml" -X GET \
https://api.enterprise.apigee.com/v1/o/{org_name}/apps/{app_id} \
-u email:password

ดูเพิ่มเติมที่ดาวน์โหลดแอปใน การจัดระเบียบตามรหัสแอปในการอ้างอิง Edge Management API

หรือ

$ curl -H "Accept:text/xml" -X GET \
https://api.enterprise.apigee.com/v1/o/{org_name}/developers/{developer_email}/apps/{app_name} \
-u email:password

ดูเพิ่มเติมที่รับ รายละเอียดแอปนักพัฒนาซอฟต์แวร์ในข้อมูลอ้างอิง Edge Management API

ตัวอย่างโปรไฟล์

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<App name="thomas-app">
    <AccessType>read</AccessType>
    <ApiProducts/>
    <Credentials>
        <Credential>
            <Attributes/>
            <ConsumerKey>wrqOOOiPArFI0WRoB1gAJMRbOguekJ5w</ConsumerKey>
            <ConsumerSecret>WvOhDrJ8m6kzz7Ni</ConsumerSecret>
            <ApiProducts>
                <ApiProduct>
                    <Name>FreeProduct</Name>
                    <Status>approved</Status>
                </ApiProduct>
            </ApiProducts>
            <Scopes/>
            <Status>approved</Status>
        </Credential>
    </Credentials>
    <AppFamily>default</AppFamily>
    <AppId>ab308c13-bc99-4c50-8434-0e0ed1b86075</AppId>
    <Attributes>
        <Attribute>
            <Name>DisplayName</Name>
            <Value>Tom's Weather App</Value>
        </Attribute>
    </Attributes>
    <CallbackUrl>http://tom.app/login</CallbackUrl>
    <CreatedAt>1362502872727</CreatedAt>
    <CreatedBy>admin@apigee.com</CreatedBy>
    <DeveloperId>PFK8IwOeAOW01JKA</DeveloperId>
    <LastModifiedAt>1362502872727</LastModifiedAt>
    <LastModifiedBy>admin@apigee.com</LastModifiedBy>
    <Scopes/>
    <Status>approved</Status>
</App>

ผลิตภัณฑ์ API

$ curl  -H "Accept:text/xml" -X GET \
https://api.enterprise.apigee.com/v1/o/{org_name}/apiproducts/{apiproduct_name} \
-u email:password

โปรดดูเพิ่มเติมที่รับ API ผลิตภัณฑ์ในการอ้างอิง API การจัดการ Edge

ตัวอย่าง XPath จะเรียกทรัพยากร API ที่สอง (URI) จากผลิตภัณฑ์ API ที่ชื่อ weather_free:

/ApiProduct['@name=weather_free']/ApiResources/ApiResource[1]/text()

ตัวอย่างโปรไฟล์ที่แสดงผลเป็น XML

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ApiProduct name="weather_free">
    <ApiResources>
        <ApiResource>/forecastrss, /reports</ApiResource>
    </ApiResources>
    <ApprovalType>auto</ApprovalType>
    <Attributes>
        <Attribute>
            <Name>description</Name>
            <Value>Introductory API Product</Value>
        </Attribute>
        <Attribute>
            <Name>developer.quota.interval</Name>
            <Value>1</Value>
        </Attribute>
        <Attribute>
            <Name>developer.quota.limit</Name>
            <Value>1</Value>
        </Attribute>
        <Attribute>
            <Name>developer.quota.timeunit</Name>
            <Value>minute</Value>
        </Attribute>
        <Attribute>
            <Name>servicePlan</Name>
            <Value>Introductory</Value>
        </Attribute>
    </Attributes>
    <CreatedAt>1355847839224</CreatedAt>
    <CreatedBy>andrew@apigee.com</CreatedBy>
    <Description>Free API Product</Description>
    <DisplayName>Free API Product</DisplayName>
    <Environments/>
    <LastModifiedAt>1355847839224</LastModifiedAt>
    <LastModifiedBy>andrew@apigee.com</LastModifiedBy>
    <Proxies/>
    <Scopes/>
</ApiProduct>

บริษัท

$ curl   -H "Accept:text/xml" -X GET \
https://api.enterprise.apigee.com/v1/o/{org_name}/companies/{company_name} \
-u email:password

ดูเพิ่มเติมที่รับ รายละเอียดบริษัทในข้อมูลอ้างอิงของ Edge Management API

ตัวอย่างโปรไฟล์

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Company name="theramin">
    <Apps/>
    <DisplayName>Theramin Corporation</DisplayName>
    <Organization>apigee-pm</Organization>
    <Status>active</Status>
    <Attributes>
        <Attribute>
            <Name>billing_code</Name>
            <Value>13648765</Value>
        </Attribute>
    </Attributes>
    <CreatedAt>1349208631291</CreatedAt>
    <CreatedBy>andrew@apigee.com</CreatedBy>
    <LastModifiedAt>1349208631291</LastModifiedAt>
    <LastModifiedBy>andrew@apigee.com</LastModifiedBy>
</Company>

นักพัฒนาซอฟต์แวร์ของบริษัท

$ curl -H "Accept:text/xml" -X GET \
https://api.enterprise.apigee.com/v1/o/{org_name}/companies/{company_name}/developers/{developer_name} \
-u email:password

ตัวอย่างโปรไฟล์

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Developers>
    <Developer>
        <Email>ntesla@theramin.com</Email>
        <Role>developer</Role>
    </Developer>
</Developers>

คีย์ของผู้บริโภค

$ curl -H "Accept:text/xml" -X GET \
https://api.enterprise.apigee.com/v1/o/{org_name}/developers/{developer_email}/apps/{app_name}/keys/{consumer_key} \
-u email:password

ดูเพิ่มเติมที่ รับรายละเอียดที่สำคัญของแอปนักพัฒนาซอฟต์แวร์ในข้อมูลอ้างอิง Edge Management API

XPath ตัวอย่าง:

/Credential/ApiProducts/ApiProduct[Name='weather_free']/Status/text()

ตัวอย่างโปรไฟล์

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Credential>
    <Attributes/>
    <ConsumerKey>XLotL3PRxNkUGXhGAFDPOr6fqtvAhuZe</ConsumerKey>
    <ConsumerSecret>iNUyEaOOh96KR3YL</ConsumerSecret>
    <ApiProducts>
        <ApiProduct>
            <Name>weather_free</Name>
            <Status>approved</Status>
        </ApiProduct>
    </ApiProducts>
    <Scopes/>
    <Status>approved</Status>
</Credential>

นักพัฒนาซอฟต์แวร์

$ curl -H "Accept:text/xml" -X GET \
https://api.enterprise.apigee.com/v1/o/{org_name}/developers/{developer_email} \
-u email:password

โปรดดูรับนักพัฒนาซอฟต์แวร์ใน การอ้างอิง API การจัดการ Edge

XPath ตัวอย่าง:

/Developer/Attributes/Attribute[Name='my_custom_attribute']/Value/text()
/Developer/Email/text()

ตัวอย่างโปรไฟล์

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Developer>
    <Apps>
        <App>weatherappx</App>
        <App>weatherapp</App>
    </Apps>
    <Email>ntesla@theramin.com</Email>
    <DeveloperId>4Y4xd0KRZ1wmHJqu</DeveloperId>
    <FirstName>Nikola</FirstName>
    <LastName>Tesla</LastName>
    <UserName>theramin</UserName>
    <OrganizationName>apigee-pm</OrganizationName>
    <Status>active</Status>
    <Attributes>
        <Attribute>
            <Name>project_type</Name>
            <Value>public</Value>
        </Attribute>
    </Attributes>
    <CreatedAt>1349797040634</CreatedAt>
    <CreatedBy>rsaha@apigee.com</CreatedBy>
    <LastModifiedAt>1349797040634</LastModifiedAt>
    <LastModifiedBy>rsaha@apigee.com</LastModifiedBy>
</Developer>

ตัวแปรโฟลว์

เมื่อดึงข้อมูลโปรไฟล์เอนทิตีที่ระบุในนโยบาย AccessEntity แล้ว รูปแบบ XML ระบบจะเพิ่มออบเจ็กต์โปรไฟล์เป็นตัวแปรลงในบริบทข้อความ สามารถเข้าถึงได้เหมือนกับที่อื่นๆ ด้วยการอ้างอิงชื่อตัวแปร ชื่อที่ผู้ใช้ระบุของนโยบาย AccessEntity ถูกตั้งค่าเป็นคำนำหน้าตัวแปรของชื่อตัวแปร

ตัวอย่างเช่น หากมีการดำเนินการนโยบาย AccessEntity ที่มีชื่อ GetDeveloper โปรไฟล์รูปแบบ XML จะถูกเก็บไว้ในตัวแปรที่ชื่อ AccessEntity.GetDeveloper โปรไฟล์รูปแบบ XML สามารถแยกวิเคราะห์ได้โดยใช้ XPath ที่กำหนดไว้ในนโยบาย ExtractVariable ที่ระบุ AccessEntity.GetDeveloper เป็นแหล่งที่มา

ข้อมูลอ้างอิงข้อผิดพลาด

ดูข้อมูลที่เกี่ยวข้องได้ที่สิ่งที่คุณต้องทราบเกี่ยวกับข้อผิดพลาดของนโยบายและการจัดการข้อผิดพลาด

ข้อผิดพลาดเกี่ยวกับรันไทม์

ไม่มี

ข้อผิดพลาดในการทำให้ใช้งานได้

ชื่อข้อผิดพลาด สตริงข้อผิดพลาด สถานะ HTTP เกิดขึ้นเมื่อ
InvalidEntityType Invalid type [entity_type] in ACCESSENTITYStepDefinition [policy_name] ไม่มีข้อมูล ประเภทเอนทิตีที่ใช้ต้องเป็นประเภทที่รองรับ

หัวข้อที่เกี่ยวข้อง