आपको Apigee Edge दस्तावेज़ दिख रहा है.
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
इस पेज पर जाएं
Apigee X दस्तावेज़. जानकारी
इस विषय में, कस्टम भूमिकाएं बनाने और मैनेजमेंट एपीआई के ज़रिए उपयोगकर्ताओं को भूमिकाएं असाइन करने का तरीका बताया गया है. हम यह भी दिखाते हैं कि एपीआई की मदद से, भूमिकाएं असाइन किए जाने की जांच कैसे की जाती है. (कस्टम भूमिकाओं के बारे में खास जानकारी पाने के लिए, यूज़र इंटरफ़ेस (यूआई) में कस्टम भूमिकाएं बनाना लेख पढ़ें.)
अनुमति की सेटिंग के बारे में जानकारी
भूमिका की अनुमतियां, मैनेजमेंट एपीआई यूआरआई पर सेट की जाती हैं, न कि मैनेजमेंट यूज़र इंटरफ़ेस (यूआई) यूआरआई पर. उदाहरण के लिए, अगर आपको अपने Edge संगठन में ऐप्लिकेशन डेवलपर इकाइयों पर PUT, GET, और/या DELETE अनुमतियां सेट करनी हैं, तो आपको /developers
संसाधन पर अनुमतियां सेट करनी होंगी, क्योंकि डेवलपर के लिए मैनेजमेंट एपीआई पाथ 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/*
जैसी किसी चीज़ पर सेट करना होगा. ऐसा, टेस्ट एनवायरमेंट में मौजूद सभी कीवर्ड वैल्यू मैप के लिए करना होगा.
एपीआई का इस्तेमाल करके सेट की गई अनुमतियां:
- कस्टम भूमिका में उपयोगकर्ताओं को, अपनी अनुमतियों के हिसाब से मैनेजमेंट एपीआई कॉल करने की अनुमति दें. उदाहरण के लिए, अगर किसी रोल में सभी एपीआई प्रॉक्सी के लिए रीड-ओनली ऐक्सेस की अनुमति है, तो उस रोल में मौजूद उपयोगकर्ता एपीआई प्रॉक्सी की सूची एपीआई का इस्तेमाल कर सकता है, लेकिन एपीआई प्रॉक्सी बनाएं एपीआई का इस्तेमाल नहीं कर सकता.
- यह तय करें कि पसंद के मुताबिक भूमिका में शामिल उपयोगकर्ता, मैनेजमेंट यूज़र इंटरफ़ेस (यूआई) में क्या देख और कर सकते हैं. उदाहरण के लिए, एपीआई प्रॉक्सी का रीड ओनली ऐक्सेस, एपीआई पर +एपीआई प्रॉक्सी और मिटाएं बटन का ऐक्सेस बंद कर देता है प्रॉक्सी पेज.
जिन संसाधनों और पाथ पर अनुमतियां सेट की जा सकती हैं उन्हें देखने के लिए, अलग-अलग संसाधन यूआरएल पर मैनेजमेंट एपीआई का रेफ़रंस देखें.
पूरी रेफ़रंस जानकारी के लिए, उपयोगकर्ता की भूमिकाएं एपीआई देखें रोल मैनेजमेंट.
सिंटैक्स और प्राथमिकता
"इसके बाद सब कुछ" दिखाने के लिए, तारे के निशान वाले वाइल्ड कार्ड (*) का इस्तेमाल किया जा सकता है . हालांकि, अगर आपने /developers जैसे पैरंट रिसॉर्स पर अनुमतियां सेट की हैं, लेकिन /developers/* जैसी कोई खास अनुमति सेट नहीं की है, तो अनुमति /developers और उसके बाद के सभी रिसॉर्स पर लागू होगी.
PUT, अनुमतियों में POST के रूप में भी काम करता है.
संसाधनों के लिए, सामान्य अनुमतियों के साथ ज़्यादा सटीक अनुमतियां भी दी जा सकती हैं. ज़्यादा विस्तृत सेटिंग जहां अनुमतियां ओवरलैप होती हैं वहां को प्राथमिकता दी जाती है. उदाहरण के लिए, मान लें कि अनुमतियां "developeradmin" पर सेट होती हैं भूमिका:
- /developers पर PUT
- /developers/* पर GET
इसका मतलब है कि developeradmin:
- डेवलपर बनाएं, लेकिन किसी भी डेवलपर या सब-इकाइयों को अपडेट न करें. ऐसा तो उस पाथ पर जीईटी अनुमति ज़्यादा सटीक होगी).
- कोई डेवलपर या सब-इकाई पाएं, लेकिन सभी डेवलपर की सूची न देखें.
एपीआई की मदद से सेट की जा सकने वाली अनुमतियों की पूरी सूची देखने के लिए, अनुमतियों का रेफ़रंस देखें.
"डेवलपमेंट" नाम की नई कस्टम भूमिका बनाएं
'डेवलपमेंट' भूमिका बनाएं, ताकि डेवलपर एपीआई प्रॉक्सी देख सकें, उन्हें बना सकें, और अपडेट कर सकें.
$ 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 फ़ाइलें वगैरह. एपीआई पर पुट की अनुमति की मदद से, डेवलपर एपीआई प्रॉक्सी बना सकते हैं, उनमें बदलाव कर सकते हैं, उन्हें इंपोर्ट, एक्सपोर्ट, डिप्लॉय, और अनडिप्लॉय कर सकते हैं.
पाथ एट्रिब्यूट से उस आर्टफ़ैक्ट के बारे में पता चलता है जिस पर अनुमतियां सेट की जाती हैं. उदाहरण के लिए, /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" } ] }'
टेस्टर की भूमिका के लिए अनुमतियां जोड़ना
GET की मदद से, उपयोगकर्ता किसी भी एपीआई को देख सकते हैं. इनमें उनकी कॉन्फ़िगरेशन फ़ाइलें, साथ ही, उनसे जुड़ी नीतियां, 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"] } ] }'
जहां <ms-IP> एज मैनेजमेंट सर्वर का आईपी पता या डीएनएस नाम है.
उपयोगकर्ता को टेस्टर की भूमिका में जोड़ना
किसी उपयोगकर्ता को उपयोगकर्ता की भूमिका देने के लिए:
$ 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
टेस्टिंग की भूमिका में उपयोगकर्ता के तौर पर एपीआई बनाना
उपयोगकर्ता के नाम पर काम करके, एपीआई प्रॉक्सी बनाने के लिए, API Services को अनुरोध करें. अनुरोध को 'जांच' भूमिका के तौर पर एपीआई सेवाओं से अस्वीकार किया जाएगा उपयोगकर्ता को इसे बनाने की अनुमति नहीं देता है एपीआई.
$ 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