AccessEntity की नीति

Apigee Edge दस्तावेज़ देखा जा रहा है.
Apigee X दस्तावेज़ पर जाएं.
जानकारी

यह क्या है

Apigee Edge के डेटा स्टोर से चुनी गई इकाई की प्रोफ़ाइलों को फिर से हासिल करता है. यह नीति, प्रोफ़ाइल को ऐसे वैरिएबल में रखती है जिसका नाम AccessEntity.{policy_name} फ़ॉर्मैट के मुताबिक होता है. AccessEntity का इस्तेमाल करके, इन इकाइयों की प्रोफ़ाइल ऐक्सेस की जा सकती हैं:

  • ऐप्लिकेशन
  • एपीआई प्रॉडक्ट
  • कंपनी
  • कंपनी डेवलपर
  • ग्राहक कुँजी
  • डेवलपर

AccessEntity नीति, नीति के आधार पर रनटाइम डेटाबेस लुकअप के तौर पर काम करती है. इस नीति से मिली प्रोफ़ाइल की जानकारी का इस्तेमाल, डाइनैमिक व्यवहार को चालू करने के लिए किया जा सकता है. उदाहरण के लिए, कंडिशनल एंडपॉइंट रूटिंग, फ़्लो एक्ज़ीक्यूट करना, नीति लागू करना.

इकाई प्रोफ़ाइल के डेटा को एक्सएमएल के तौर पर पाने और उसे वैरिएबल में डालने के लिए, AccessEntity नीति का इस्तेमाल किया जाता है. आपको मिलने वाली इकाई की पहचान करने के लिए, इकाई का टाइप और एक या उससे ज़्यादा आइडेंटिफ़ायर तय किए जाते हैं. इनसे यह पता चलता है कि आपको किस तरह की इकाई चाहिए. बाद में, किसी दूसरी नीति में, इकाई प्रोफ़ाइल के डेटा को किसी दूसरी नीति की मदद से वापस लाया जा सकता है. जैसे कि ExtractVariables की नीति या PermissionsMessage की नीति.

सैंपल

नीचे दिए गए सैंपल, डेवलपर के ईमेल को एक्सट्रैक्ट करने और उसे एचटीटीपी हेडर में जोड़ने के लिए, ExtractVariables और AssignMessage नीतियों के साथ इस्तेमाल किए गए AccessEntity दिखाते हैं.

अन्य नीतियों में इस्तेमाल करने के लिए, डेवलपर का ईमेल पाना

यह बताने के लिए AccessEntity नीति को सेट अप करें कि Edge से कौनसी इकाई प्रोफ़ाइल देखनी है और प्रोफ़ाइल का डेटा कहां रखना है.

नीचे दिए गए उदाहरण में, नीति को developer इकाई प्रोफ़ाइल मिलती है. इसमें, डेवलपर की पहचान करने के लिए, क्वेरी पैरामीटर के तौर पर पास की गई एपीआई कुंजी का इस्तेमाल किया जाता है. प्रोफ़ाइल को ऐसे वैरिएबल में रखा जाता है जिसका नाम 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 ने पहले सेट किया था.

ध्यान दें कि वापस लाई गई वैल्यू को XMLPayload एलिमेंट में XPath एक्सप्रेशन के तौर पर बताया गया है. निकाली गई वैल्यू को 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>

नीचे दी गई AssignmentMessage नीति, डेवलपर के उस ईमेल को इकट्ठा करती है जिसे ExtractVariables नीति ने सेट किया है.

<!-- 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>

<AccessEntity> एट्रिब्यूट

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

इस टेबल में उन एट्रिब्यूट के बारे में बताया गया है जो नीति के सभी पैरंट एलिमेंट के लिए एक जैसे होते हैं:

एट्रिब्यूट ब्यौरा डिफ़ॉल्ट मौजूदगी
name

नीति का अंदरूनी नाम. name एट्रिब्यूट की वैल्यू में अक्षर, संख्याएं, स्पेस, हाइफ़न, अंडरस्कोर, और पीरियड शामिल किए जा सकते हैं. इस वैल्यू में 255 से ज़्यादा वर्ण नहीं हो सकते.

इसके अलावा, मैनेजमेंट यूज़र इंटरफ़ेस (यूआई) प्रॉक्सी एडिटर में नीति को आम भाषा में अलग नाम से लेबल करने के लिए, <DisplayName> एलिमेंट का इस्तेमाल करें.

लागू नहीं ज़रूरी है
continueOnError

इस नीति को false पर सेट करें, ताकि नीति के काम न करने पर गड़बड़ी का मैसेज दिखे. ज़्यादातर नीतियों में, ऐसा आम तौर पर किया जाता है.

किसी नीति के काम न करने पर भी फ़्लो एक्ज़ीक्यूट करने की प्रोसेस को जारी रखने के लिए, true पर सेट करें.

false ज़रूरी नहीं
enabled

नीति लागू करने के लिए, true पर सेट करें.

नीति को बंद करने के लिए, false पर सेट करें. अगर यह नीति किसी फ़्लो से जुड़ी हुई है, तब भी उसे लागू नहीं किया जाएगा.

सही ज़रूरी नहीं
async

यह एट्रिब्यूट अब काम नहीं करता.

false बहिष्कृत

<DisplayName> एलिमेंट

मैनेजमेंट यूज़र इंटरफ़ेस (यूआई) प्रॉक्सी एडिटर में, आम भाषा के अलग नाम से नीति को लेबल करने के लिए, name एट्रिब्यूट का इस्तेमाल करें.

<DisplayName>Policy Display Name</DisplayName>
डिफ़ॉल्ट

लागू नहीं

अगर इस एलिमेंट को छोड़ दिया जाता है, तो नीति के name एट्रिब्यूट की वैल्यू का इस्तेमाल किया जाता है.

मौजूदगी ज़रूरी नहीं
Type String

<EntityIdentifier> एलिमेंट

खास इकाई के बारे में बताता है -- एंटिटीटाइप में दिए गए टाइप की -- इस इकाई को पाने के लिए.

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

डिफ़ॉल्ट

लागू नहीं

मौजूदगी

ज़रूरी है

स्ट्रीम किस तरह की है

String

एट्रिब्यूट

एट्रिब्यूट ब्यौरा डिफ़ॉल्ट मौजूदगी Type
संदर्भ

वह वैरिएबल जो आइडेंटिफ़ायर का सोर्स बताता है, जैसे कि request.queryparam.apikey.

लागू नहीं ज़रूरी है. String
टाइप करें ref एट्रिब्यूट में वैरिएबल से पॉप्युलेट किया गया टाइप. जैसे, consumerkey. वैल्यू की सूची के लिए, इकाई के टाइप और आइडेंटिफ़ायर देखें. ज़रूरी है. String

उदाहरण

<?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>

<EntityType> एलिमेंट

इससे पता चलता है कि डेटा स्टोर से किस तरह की इकाई हासिल करनी है.

<EntityType  value="entity_type"/>

डिफ़ॉल्ट

लागू नहीं

मौजूदगी

ज़रूरी है

स्ट्रीम किस तरह की है

String

आपको जिस तरह की इकाई चाहिए, उसके बारे में बताने के लिए EntityIdentifier एलिमेंट का इस्तेमाल करें. इकाई के टाइप के बारे में जानने के लिए, इकाई के टाइप और आइडेंटिफ़ायर देखें.

एट्रिब्यूट

एट्रिब्यूट ब्यौरा डिफ़ॉल्ट मौजूदगी Type
value इस्तेमाल की जा सकने वाली इकाइयों में से कोई एक. सूची के लिए, इकाई के टाइप और आइडेंटिफ़ायर देखें. कोई नहीं. ज़रूरी है. String

<secondaryIdentifier> एलिमेंट

EntityIdentifier के साथ, दिए गए EntityType के मनचाहे इंस्टेंस की पहचान करने वाली वैल्यू तय करता है.

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

डिफ़ॉल्ट

लागू नहीं

मौजूदगी

ज़रूरी नहीं

स्ट्रीम किस तरह की है

String

सिर्फ़ EntityIdentifier बताने पर SecondaryIdentifier का इस्तेमाल करें. इससे यह गारंटी नहीं मिलती कि आपको एक ही इकाई मिलेगी. ज़्यादा जानकारी के लिए, सेकंडरी आइडेंटिफ़ायर की मदद से नतीजों को सटीक बनाना देखें.

एक से ज़्यादा SecondaryIdentifier एलिमेंट का इस्तेमाल नहीं किया जा सकता.

एट्रिब्यूट

एट्रिब्यूट ब्यौरा डिफ़ॉल्ट मौजूदगी Type
संदर्भ

वह वैरिएबल जो आइडेंटिफ़ायर का सोर्स बताता है, जैसे कि request.queryparam.apikey.

लागू नहीं ज़रूरी है. String
टाइप करें ref एट्रिब्यूट में वैरिएबल से पॉप्युलेट किया गया टाइप. जैसे, consumerkey. वैल्यू की सूची के लिए, इकाई के टाइप और आइडेंटिफ़ायर देखें. ज़रूरी है. String

उदाहरण

<?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>

इस्तेमाल की जानकारी

सेकंडरी आइडेंटिफ़ायर की मदद से नतीजों को सटीक बनाना

कुछ इकाइयों के लिए, हो सकता है कि एक आइडेंटिफ़ायर देना, आपकी पसंद की इकाई को पाने के लिए काफ़ी न हो. ऐसे मामलों में, नतीजों को सटीक बनाने के लिए एक सेकंडरी आइडेंटिफ़ायर का इस्तेमाल किया जा सकता है.

आपका पहला, संभावित रूप से व्यापक नीति कॉन्फ़िगरेशन ऐसा दिखाई दे सकता है:

<?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>

किसी ऐप्लिकेशन को कई एपीआई प्रॉडक्ट से जोड़ा जा सकता है. इसलिए, हो सकता है कि सिर्फ़ ऐप्लिकेशन आईडी का इस्तेमाल करने से वह एपीआई प्रॉडक्ट न दिखे जो आपको चाहिए. साथ ही, हो सकता है कि आपको मेल खाने वाले एक से ज़्यादा प्रॉडक्ट में से, सिर्फ़ पहला प्रॉडक्ट मिल सकता है.

इसके बजाय, सटीक नतीजा पाने के लिए 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 की वैल्यू एंटिटी आइडेंटिफ़ायर के टाइप सेकंडरी आइडेंटिफ़ायर टाइप
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

इकाई प्रोफ़ाइल एक्सएमएल का उदाहरण

XPath के साथ आपको जो इकाई प्रोफ़ाइल वैल्यू चाहिए उसे फिर से पाने के लिए, आपको प्रोफ़ाइल एक्सएमएल के स्ट्रक्चर के बारे में कुछ जानना होगा. स्ट्रक्चर के उदाहरण के लिए, मैनेजमेंट एपीआई कॉल का इस्तेमाल करके अपनी मनचाही इकाई के लिए एक्सएमएल पाएं. ज़्यादा जानकारी के लिए, management API का रेफ़रंस देखें.

इन सेक्शन में एपीआई कॉल के लिए कोड के साथ-साथ, कॉल से एक्सएमएल के उदाहरण भी शामिल होते हैं.

ऐप्लिकेशन कैंपेन

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

Edge मैनेजमेंट एपीआई के रेफ़रंस में, ऐप्लिकेशन आईडी से संगठन में ऐप्लिकेशन डाउनलोड करना भी देखें.

या:

$ 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 मैनेजमेंट एपीआई के रेफ़रंस में, डेवलपर ऐप्लिकेशन की जानकारी पाएं भी देखें.

सैंपल प्रोफ़ाइल:

<?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>

एपीआई प्रॉडक्ट

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

Edge मैनेजमेंट एपीआई के रेफ़रंस में, एपीआई प्रॉडक्ट पाएं भी देखें.

एक्सएमएल का नमूना, weather_free नाम के एपीआई प्रॉडक्ट से दूसरे एपीआई संसाधन (यूआरआई) को फिर से हासिल करता है:

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

एक्सएमएल के तौर पर मिली सैंपल प्रोफ़ाइल:

<?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 मैनेजमेंट एपीआई के रेफ़रंस में, कंपनी की जानकारी पाएं भी देखें.

सैंपल प्रोफ़ाइल:

<?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 के रेफ़रंस में डेवलपर ऐप्लिकेशन के लिए मुख्य जानकारी पाएं भी देखें.

समस्या का नमूना:

/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

Edge मैनेजमेंट एपीआई के रेफ़रंस में, डेवलपर पाएं भी देखें.

समस्या का नमूना:

/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 नीति में बताई गई इकाई प्रोफ़ाइल को वापस लाया जाता है, तब एक्सएमएल के फ़ॉर्मैट वाले प्रोफ़ाइल ऑब्जेक्ट को मैसेज के कॉन्टेक्स्ट में, एक वैरिएबल के तौर पर जोड़ दिया जाता है. इसे किसी भी दूसरे वैरिएबल की तरह, वैरिएबल के नाम के रेफ़रंस के साथ ऐक्सेस किया जा सकता है. AccessEntity नीति के लिए उपयोगकर्ता से मिला नाम, वैरिएबल के नाम के वैरिएबल प्रीफ़िक्स के तौर पर सेट है.

उदाहरण के लिए, अगर GetDeveloper नाम वाली AccessEntity नीति लागू की जाती है, तो एक्सएमएल फ़ॉर्मैट वाली प्रोफ़ाइल को AccessEntity.GetDeveloper नाम वाले वैरिएबल में सेव किया जाता है. इसके बाद, एक्सएमएल फ़ॉर्मैट वाली प्रोफ़ाइल को ExtractVariables नीति में बताए गए ऐसे XPath का इस्तेमाल करके पार्स किया जा सकता है जो AccessEntity.GetDeveloper को अपने सोर्स के तौर पर बताता है.

गड़बड़ी का रेफ़रंस

इसी विषय से जुड़ी जानकारी के लिए, नीति से जुड़ी गड़बड़ियों के बारे में आपके लिए ज़रूरी जानकारी और गड़बड़ियों को ठीक करने के तरीके देखें.

रनटाइम से जुड़ी गड़बड़ियां

कोई नहीं.

डिप्लॉयमेंट से जुड़ी गड़बड़ियां

गड़बड़ी का नाम गड़बड़ी वाली स्ट्रिंग एचटीटीपी कोड स्थिति कब होता है
InvalidEntityType Invalid type [entity_type] in ACCESSENTITYStepDefinition [policy_name] लागू नहीं इस्तेमाल की गई इकाई का टाइप, इस्तेमाल किए जा सकने वाले टाइप में से एक होना चाहिए.

मिलते-जुलते विषय