एपीआई की मदद से भूमिकाएं तय करना

आपको Apigee Edge दस्तावेज़ दिख रहा है.
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है इस पेज पर जाएं Apigee X दस्तावेज़.
जानकारी

इस विषय में, कस्टम रोल बनाने और उपयोगकर्ताओं को भूमिकाएं असाइन करने के तरीके के बारे में बताया गया है. मैनेजमेंट एपीआई. हम यह भी दिखाते हैं कि एपीआई की मदद से, भूमिकाएं असाइन किए जाने की जांच कैसे की जाती है. ( कस्टम रोल बनाने के लिए, यूज़र इंटरफ़ेस (यूआई).)

अनुमति की सेटिंग के बारे में जानकारी

भूमिका की अनुमतियां, मैनेजमेंट एपीआई यूआरआई पर सेट की जाती हैं, न कि मैनेजमेंट यूज़र इंटरफ़ेस (यूआई) के यूआरआई पर. उदाहरण के लिए, अगर अपने Edge में ऐप्लिकेशन डेवलपर इकाइयों के लिए, PUT, GET, और/या DELETE अनुमतियां सेट करना चाहते हैं संगठन है, तो आप /developers संसाधन पर अनुमतियां सेट करेंगे, क्योंकि डेवलपर के लिए प्रबंधन API पाथ है https://api.enterprise.apigee.com/v1/organizations/{org_name}/developers. (अनुमतियां तय करते समय, आपको पाथ के संगठन वाले हिस्से को शामिल करने की ज़रूरत नहीं है, क्योंकि अनुमतियां किसी खास संगठन के दायरे में आती हैं, क्योंकि इस विषय में मैनेजमेंट एपीआई कॉल illustrate.)

खास इकाइयों के लिए भी अनुमतियां सेट की जा सकती हैं. उदाहरण के लिए:

  • अगर आपको किसी एक डेवलपर के लिए अनुमतियां सेट करनी हैं, तो उन्हें /developers/steve@example.com अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
  • मुफ़्त-एपीआई-प्रॉडक्ट जैसे किसी खास एपीआई प्रॉडक्ट के लिए, उन्हें सेट करें /apiproducts/free-api-product को
  • किसी खास एनवायरमेंट में 'की वैल्यू मैप' के लिए, आप कुछ इस तरह की अनुमति सेट करेंगे /environments/test/keyvaluemaps/fooMap या टेस्ट में सभी की-वैल्यू मैप के लिए /environments/test/keyvaluemaps/* पर्यावरण को ध्यान में रखकर काम करना.

एपीआई का इस्तेमाल करके सेट की गई अनुमतियां:

  • कस्टम भूमिका वाले उपयोगकर्ताओं को मैनेजमेंट एपीआई बनाने की अनुमति दें कॉल करते हैं. उदाहरण के लिए, अगर कोई भूमिका रीड ओनली ऐक्सेस की अनुमति देती है सभी API प्रॉक्सी के लिए, उस भूमिका में मौजूद उपयोगकर्ता List API Proxies API का इस्तेमाल कर सकता है, लेकिन एपीआई प्रॉक्सी एपीआई बनाएं.
  • यह तय करें कि पसंद के मुताबिक भूमिका में शामिल उपयोगकर्ता, मैनेजमेंट यूज़र इंटरफ़ेस (यूआई) में क्या देख और कर सकते हैं. उदाहरण के लिए, एपीआई प्रॉक्सी का रीड-ओनली ऐक्सेस, एपीआई पर +एपीआई प्रॉक्सी और मिटाएं बटन का ऐक्सेस बंद कर देता है प्रॉक्सी पेज.

जिन संसाधनों और पाथ के लिए अनुमतियां सेट की जा सकती हैं उन्हें देखने के लिए, अलग-अलग संसाधन के यूआरएल मैनेजमेंट एपीआई का संदर्भ देखें.

इनके बारे में पूरी जानकारी पाने के लिए, उपयोगकर्ता की भूमिकाएं एपीआई पर जाएं रोल मैनेजमेंट.

सिंटैक्स और प्राथमिकता

"इसके बाद सब कुछ" दिखाने के लिए, तारे के निशान वाले वाइल्ड कार्ड (*) का इस्तेमाल किया जा सकता है . हालांकि, अगर उपयोगकर्ता सिर्फ़ पैरंट रिसॉर्स (जैसे कि /developers पर) पर अनुमतियां सेट करते हैं, तो कोई और खास अनुमति सेट करने पर (जैसे कि /developers/*), अनुमति इन पर लागू होती है /developers और उसके बाद का सब कुछ.

PUT, अनुमतियों में POST के रूप में भी काम करता है.

आपके पास संसाधनों के लिए सामान्य अनुमतियां और ज़्यादा जानकारी वाली अनुमतियां एक साथ इस्तेमाल की जा सकती हैं. ज़्यादा विस्तृत सेटिंग जहां अनुमतियां ओवरलैप होती हैं वहां को प्राथमिकता दी जाती है. उदाहरण के लिए, मान लें कि अनुमतियां "developeradmin" पर सेट होती हैं भूमिका:

  • /developers पर PUT
  • /developers/* पर पाएं

इसका मतलब है कि डेवलपर एडमिन ये काम कर सकता है:

  • डेवलपर बनाएं, लेकिन किसी भी डेवलपर या सब-इकाइयों को अपडेट न करें. ऐसा तो उस पाथ पर जीईटी अनुमति ज़्यादा सटीक होगी).
  • कोई डेवलपर या सब-इकाई पाएं, लेकिन सभी डेवलपर की सूची न देखें.

एपीआई की मदद से सेट की जा सकने वाली अनुमतियों की पूरी सूची देखने के लिए, अनुमतियों के बारे में जानकारी देखें.

"डेवलपमेंट" नाम की नई कस्टम भूमिका बनाएं

'डेवलपमेंट' बनाएँ भूमिका को असाइन किया जा सकता है. इसकी मदद से डेवलपर, एपीआई प्रॉक्सी देख सकते हैं, बना सकते हैं, और उन्हें अपडेट कर सकते हैं.

$ curl -u email:password https://api.enterprise.apigee.com/v1/o/{org_name}/userroles -H "Content-type:application/json" -X POST -d'{ "role" : [ { "name" : "development" } ] }'

डेवलपमेंट रोल के लिए अनुमतियां जोड़ना

वे अनुमतियां जिन्हें Edge से जुड़े आर्टफ़ैक्ट के पूरे ग्रुप पर सेट किया जा सकता है. जैसे: सभी /apps, /apis, /apiproducts वगैरह के साथ-साथ, अलग-अलग आर्टफ़ैक्ट (जैसे, कोई खास ऐप्लिकेशन, एपीआई) पर प्रॉक्सी या एपीआई प्रॉडक्ट) GET, PUT, और DELETE हैं.

जीईटी, उपयोगकर्ताओं को एपीआई प्रॉक्सी कॉन्फ़िगरेशन फ़ाइलों सहित किसी भी एपीआई को देखने की सुविधा देता है नीतियां, JavaScript, XSLT फ़ाइलें वगैरह. एपीआई पर PUT अनुमति से डेवलपर को ये काम करने में मदद मिलती है एपीआई प्रॉक्सी बनाना, उनमें बदलाव करना, इंपोर्ट करना, एक्सपोर्ट करना, डिप्लॉय करना, और डिप्लॉय करना.

पाथ एट्रिब्यूट उस आर्टफ़ैक्ट के बारे में बताता है जिस पर आपने अनुमतियां सेट की हैं. उदाहरण के लिए, /applications, /apps, /apiproducts, /developers या /reports.

curl -u email:password https://api.enterprise.apigee.com/v1/o/{org_name}/userroles/development/permissions -H "Content-type:application/json" -X POST -d'{"path" : "/applications","permissions" : [ "put", "get" ]}'
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है

भूमिका बनाएं: परीक्षण

'टेस्टिंग' बनाना भूमिका इंजीनियर को API प्रॉक्सी और उनकी सामग्री देखने में सक्षम करने के लिए (उदाहरण के लिए, नीतियां शामिल हैं).

$ curl -u email:password https://api.enterprise.apigee.com/v1/o/{org_name}/userroles -H "Content-type:application/json" -X POST -d'{ "role" : [ { "name" : "testing" } ] }'

जांच करने के लिए अनुमतियां जोड़ें

जीईटी से उपयोगकर्ता किसी भी एपीआई को देख सकते हैं. इसमें उनकी कॉन्फ़िगरेशन फ़ाइलें और संबंधित नीतियां, JavaScript, XSLT फ़ाइलें वगैरह. इस अनुमति को 'टेस्टिंग' भूमिका के आधार पर, हम क्वालिटी इंजीनियर को एपीआई का कॉन्टेंट देखने की सुविधा देते हैं टेस्टिंग हो रही है. हालांकि, इस भूमिका वाले उपयोगकर्ता इन कामों को नहीं कर पाएंगे: बनाने, बदलाव करने, इंपोर्ट करने, एक्सपोर्ट करने, और डिप्लॉय करने की सुविधा और एपीआई प्रॉक्सी को डिप्लॉय न करना.

$ curl -u email:password https://api.enterprise.apigee.com/v1/o/{org_name}/userroles/testing/permissions -H "Content-type:application/json" -X POST -d'{"path" : "/applications","permissions" : [ "get" ]}'

कंपनी की इमारत में Edge इंस्टॉल करने के लिए, अनुमतियों का कम से कम सेट उपयोगकर्ता को Edge यूज़र इंटरफ़ेस (यूआई) में लॉग इन करने की अनुमति देते हैं:

{"path" : "/","permissions" : [ "get" ]}
{"path" : "/*","permissions" : [ ]}
{"path" : "/environments","permissions" : [ "get" ]}
{"path" : "/userroles","permissions" : [ "get" ]}

इन अनुमतियों को सेट करने के लिए, नीचे दिए गए cURL निर्देश का इस्तेमाल करें:

curl -H "Content-Type:application/json" -u email:password \
-X POST \
http://<ms-IP>:8080/v1/organizations/{org_name}/userroles/testing/resourcepermissions  \
-d '{
 "resourcePermission" : [ 
   {
    "path" : "/",
    "permissions" : [ "get" ]
   }, 
{
    "path" : "/*",
    "permissions" : []
   },
{
    "path" : "/environments",
    "permissions" : [ "get" ]
   },
   {
    "path" : "/userroles",
    "permissions" : [ "get"]
   }
  ]
}'

जहां &lt;ms-IP&gt; एज मैनेजमेंट सर्वर का आईपी पता या डीएनएस नाम है.

उपयोगकर्ता को जांच के लिए इस्तेमाल करें

उपयोगकर्ता की भूमिका वाले उपयोगकर्ता का प्रावधान करने के लिए:

$ curl -u email:password https://api.enterprise.apigee.com/v1/o/{org_name}/users/justauser@apigee.com/userroles -H "Content-type:application/json" -X POST -d'{"role" : [ {"name" : "testing"} ] }'

एपीआई को उपयोगकर्ता के तौर पर देखें

उपयोगकर्ता के नाम पर काम करना और एपीआई से अनुरोध करना एपीआई प्रॉक्सी देखने के लिए सेवाएं. उपयोगकर्ता को एपीआई और उसका कॉन्टेंट देखने की सुविधा मिलनी चाहिए.
$ curl -u justauser@apigee.com:secret https://api.enterprise.apigee.com/v1/o/{org_name}/apis
$ curl -u justauser@apigee.com:secret https://api.enterprise.apigee.com/v1/o/{org_name}/apis/{api_name}/policies

टेस्ट करने के लिए, उपयोगकर्ता के तौर पर एपीआई बनाएं

उपयोगकर्ता के नाम पर काम करें और एपीआई प्रॉक्सी बनाने के लिए, एपीआई सेवाओं को अनुरोध करें. अनुरोध को 'जांच' भूमिका के तौर पर एपीआई सेवाओं से अस्वीकार कर दिया जाएगा उपयोगकर्ता को इसे बनाने की अनुमति नहीं देता है एपीआई.

$ curl -u justauser@apigee.com:secret -H "Content-Type: application/json" https://api.enterprise.apigee.com/v1/o/{org_name}/apis -X POST -d'{"name" : "rbacTestApi"}'

उपयोगकर्ता को डेवलपमेंट की भूमिका में जोड़ें

अब 'डेवलपमेंट' के साथ उपयोगकर्ता का प्रावधान करें भूमिका.

$ curl -u email:password https://api.enterprise.apigee.com/v1/o/{org_name}/users/justauser@apigee.com/userroles -H "Content-type:application/json" -X POST -d'{"role" : [ {"name" : "development"} ] }'

डेवलपमेंट रोल में उपयोगकर्ता के तौर पर एपीआई बनाएं

उपयोगकर्ता के नाम पर काम करें और एपीआई प्रॉक्सी बनाने के लिए, एपीआई प्लैटफ़ॉर्म से दोबारा अनुरोध करें. कॉन्टेंट बनाने अनुरोध सफल होगा, क्योंकि 'डेवलपमेंट' उपयोगकर्ता को एपीआई बनाने की अनुमति देता है.

$ curl -u justauser@apigee.com:secret -H "Content-Type: application/json" https://api.enterprise.apigee.com/v1/o/{org_name}/apis -X POST -d'{"name" : "rbacTestApi"}'

किसी उपयोगकर्ता के लिए उपयोगकर्ता की भूमिकाएं पाना

संगठन के एडमिन के तौर पर, आपके पास किसी उपयोगकर्ता की भूमिकाओं की सूची देखने का विकल्प होता है. संगठनों से जुड़ी ज़रूरी शर्तों को पूरा करने के लिए:

$ curl -u email:password -X GET https://api.enterprise.apigee.com/v1/users/justauser@apigee.com/userroles