ডিরেক্টরি API আপনাকে আপনার Google Workspace ডোমেনের বৈশিষ্ট্যগুলিতে অ্যাক্সেস পরিচালনা করতে ভূমিকা-ভিত্তিক অ্যাক্সেস নিয়ন্ত্রণ (RBAC) ব্যবহার করতে দেয়। আপনি Google Workspace-এর সাথে প্রদত্ত পূর্ব-নির্মিত ভূমিকাগুলির চেয়ে অ্যাডমিন অ্যাক্সেসকে আরও নির্দিষ্টভাবে সীমাবদ্ধ করার জন্য বিশেষাধিকার সহ কাস্টম ভূমিকা তৈরি করতে পারেন। আপনি ব্যবহারকারী বা সুরক্ষা গোষ্ঠীগুলিকে ভূমিকা নির্ধারণ করতে পারেন। এই নির্দেশিকাটি কীভাবে কিছু মৌলিক ভূমিকা-সম্পর্কিত কাজ সম্পাদন করতে হয় তা ব্যাখ্যা করে।
গুগল ওয়ার্কস্পেসের মধ্যে RBAC সম্পর্কিত ডিরেক্টরি API দ্বারা ব্যবহৃত সাধারণ শব্দগুলির একটি তালিকা নিচে দেওয়া হল:
- বিশেষাধিকার
- Google Workspace ডোমেনে কোনও কাজ বা ক্রিয়াকলাপ সম্পাদনের জন্য প্রয়োজনীয় অনুমতি।
Privilegeরিসোর্স দ্বারা প্রতিনিধিত্ব করা হয়। এই রিসোর্সের সাথে কোনও স্থায়ী ডেটা যুক্ত নেই। - ভূমিকা
- বিশেষাধিকারের একটি সংগ্রহ যা সেই ভূমিকা সম্পন্ন সত্তাকে নির্দিষ্ট কাজ বা ক্রিয়াকলাপ সম্পাদনের ক্ষমতা প্রদান করে।
Roleসম্পদ দ্বারা প্রতিনিধিত্ব করা হয়। - ভূমিকা বরাদ্দকরণ
- ব্যবহারকারী বা গোষ্ঠীকে প্রদত্ত একটি নির্দিষ্ট ভূমিকার রেকর্ড।
RoleAssignmentরিসোর্স দ্বারা প্রতিনিধিত্ব করা হয়। - নিরাপত্তা গোষ্ঠী
- এক ধরণের ক্লাউড আইডেন্টিটি গ্রুপ যা সাংগঠনিক সম্পদের অ্যাক্সেস নিয়ন্ত্রণ করতে ব্যবহৃত হয়। নিরাপত্তা গ্রুপে পৃথক ব্যবহারকারী এবং গ্রুপ উভয়ই থাকতে পারে।
ভূমিকা এবং ভূমিকা বরাদ্দের সীমা
আপনি কেবলমাত্র সীমিত সংখ্যক কাস্টম ভূমিকা বা ভূমিকার অ্যাসাইনমেন্ট তৈরি করতে পারবেন, তাই যদি আপনি সীমার কাছাকাছি চলে যান, তাহলে সীমার মধ্যে থাকার জন্য সেগুলিকে একত্রিত করুন বা সরিয়ে দিন। ভূমিকা এবং ভূমিকার অ্যাসাইনমেন্টের নিম্নলিখিত সীমা রয়েছে:
- আপনি আপনার পুরো প্রতিষ্ঠানের জন্য সর্বাধিক ৭৫০টি কাস্টম ভূমিকা তৈরি করতে পারেন।
- আপনি প্রতি সাংগঠনিক ইউনিট (OU) তে সর্বাধিক ১০০০টি ভূমিকার অ্যাসাইনমেন্ট তৈরি করতে পারেন, যেখানে রুট সংগঠনকে একটি ইউনিট হিসেবে বিবেচনা করা হয়। উদাহরণস্বরূপ, আপনি রুট সংগঠনে ৬০০টি এবং আপনার দ্বারা সংজ্ঞায়িত অন্য OU-তে ৭০০টি ভূমিকা নির্ধারণ করতে পারেন, যেমন একটি কোম্পানির একটি বিভাগ। Google Workspace-এর সমস্ত পূর্ব-নির্মিত প্রশাসক ভূমিকা ডিফল্টভাবে প্রতিষ্ঠান-ব্যাপী সুযোগ-সুবিধার উপর নির্ভর করে। OU স্তরে বরাদ্দ করা যেতে পারে এমন বিশেষাধিকারের সীমা সম্পর্কে আরও জানুন।
গোষ্ঠীর জন্য ভূমিকা এবং ভূমিকা বরাদ্দের নিম্নলিখিত সীমা রয়েছে:
- আপনি সুপার অ্যাডমিন ছাড়া যেকোনো ভূমিকা দিতে পারেন।
- সামগ্রিক OU-তে এবং প্রতিটি OU-এর মধ্যে মোট 250টি পর্যন্ত ভূমিকার অ্যাসাইনমেন্ট থাকতে পারে।
- গ্রুপটি অবশ্যই আপনার প্রতিষ্ঠানের একটি নিরাপত্তা গ্রুপ হতে হবে।
- আমরা আপনার প্রতিষ্ঠানের ব্যবহারকারীদের জন্য গ্রুপ সদস্যপদ সীমাবদ্ধ করার পরামর্শ দিচ্ছি। আপনি আপনার প্রতিষ্ঠানের বাইরের ব্যবহারকারীদের যোগ করতে পারেন, কিন্তু তারা ভূমিকার সুবিধা নাও পেতে পারেন। বিস্তারিত জানার জন্য, গ্রুপ সদস্যপদ সীমাবদ্ধ করুন দেখুন। ### গ্রুপগুলিতে ভূমিকা বরাদ্দকরণ
যদি আপনার একটি OU-তে ১০০০-এর বেশি ভূমিকা বরাদ্দ করার প্রয়োজন হয়, তাহলে আপনি একটি নিরাপত্তা গোষ্ঠীতে একাধিক সদস্য যোগ করতে পারেন এবং গোষ্ঠীতে একটি ভূমিকা বরাদ্দ করতে পারেন। গোষ্ঠী ভূমিকার অ্যাসাইনমেন্টের কিছু অতিরিক্ত সীমাবদ্ধতা রয়েছে—নির্দিষ্ট তথ্যের জন্য অ্যাডমিন সহায়তা কেন্দ্র দেখুন।
গুগল অ্যাডমিন কনসোল রোল-টু-প্রিভিলেজ ম্যাপিং
অ্যাডমিন কনসোলের মাধ্যমে ব্যবহারকারীদের বিশেষাধিকার অ্যাক্সেস করার জন্য, কিছু অতিরিক্ত বিশেষাধিকার প্রদানের প্রয়োজন হতে পারে। উদাহরণস্বরূপ, অ্যাডমিন কনসোলের মাধ্যমে ব্যবহারকারীকে অন্যান্য ব্যবহারকারী তৈরি করার ক্ষমতা প্রদানের জন্য, কেবল USERS_CREATE বিশেষাধিকারই নয় বরং USERS_UPDATE এবং ORGANIZATION_UNITS_RETRIEVE বিশেষাধিকারও প্রয়োজন। নিম্নলিখিত টেবিলটি ব্যবহারকারী এবং সাংগঠনিক ইউনিট পরিচালনার জন্য প্রয়োজনীয় বিশেষাধিকার অনুদানের সাথে অ্যাডমিন কনসোলের কার্যকারিতা ম্যাপ করে।
| অ্যাডমিন কনসোলের কার্যকারিতা | প্রয়োজনীয় সুযোগ-সুবিধা |
|---|---|
| সাংগঠনিক ইউনিট - পড়ুন | ORGANIZATION_UNITS_RETRIEVE |
| সাংগঠনিক ইউনিট - তৈরি করুন | ORGANIZATION_UNITS_RETRIEVE + ORGANIZATION_UNITS_CREATE |
| সাংগঠনিক ইউনিট - আপডেট | ORGANIZATION_UNITS_RETRIEVE + ORGANIZATION_UNITS_UPDATE |
| সাংগঠনিক ইউনিট - মুছুন | ORGANIZATION_UNITS_RETRIEVE + ORGANIZATION_UNITS_DELETE |
| সাংগঠনিক ইউনিট | ORGANIZATION_UNITS_ALL |
| ব্যবহারকারী - পড়ুন | USERS_RETRIEVE + ORGANIZATION_UNITS_RETRIEVE |
| ব্যবহারকারী - তৈরি করুন | USERS_CREATE + USERS_UPDATE + ORGANIZATION_UNITS_RETRIEVE |
| ব্যবহারকারী - আপডেট | USERS_UPDATE + ORGANIZATION_UNITS_RETRIEVE |
| ব্যবহারকারী - ব্যবহারকারীদের সরান | USERS_MOVE + USERS_RETRIEVE + ORGANIZATION_UNITS_RETRIEVE |
| ব্যবহারকারী - ব্যবহারকারীদের নাম পরিবর্তন করুন | USERS_ALIAS + USERS_RETRIEVE + ORGANIZATION_UNITS_RETRIEVE |
| ব্যবহারকারী - পাসওয়ার্ড রিসেট করুন | USERS_RESET_PASSWORD + USERS_RETRIEVE + ORGANIZATION_UNITS_RETRIEVE |
| ব্যবহারকারী - জোর করে পাসওয়ার্ড পরিবর্তন করুন | USERS_FORCE_PASSWORD_CHANGE + USERS_RETRIEVE + ORGANIZATION_UNITS_RETRIEVE |
| ব্যবহারকারী - উপনাম যোগ করুন/সরান | USERS_ADD_NICKNAME + USERS_RETRIEVE + ORGANIZATION_UNITS_RETRIEVE |
| ব্যবহারকারী - ব্যবহারকারীদের সাসপেন্ড করুন | USERS_SUSPEND + USERS_RETRIEVE + ORGANIZATION_UNITS_RETRIEVE |
| গ্রুপ | GROUPS_ALL |
| নিরাপত্তা - ব্যবহারকারীর নিরাপত্তা ব্যবস্থাপনা | USER_SECURITY_ALL + USERS_RETRIEVE + ORGANIZATION_UNITS_RETRIEVE |
কেস উদাহরণ ব্যবহার করুন
শুরু করার আগে
এই নির্দেশিকার উদাহরণগুলি চালানোর আগে, প্রমাণীকরণ এবং অনুমোদন সেট আপ করুন।
ডোমেন সুবিধার একটি তালিকা পান
আপনার ডোমেনে সমর্থিত সুবিধাগুলির একটি পৃষ্ঠাঙ্কিত তালিকা পেতে, privileges.list() পদ্ধতিটি ব্যবহার করুন।
যদি আপনি একজন প্রশাসক হন এবং আপনার নিজস্ব ডোমেনে বিশেষাধিকার পান, তাহলে গ্রাহক আইডি হিসেবে
my_customerব্যবহার করুন।যদি আপনি একজন রিসেলার হন এবং আপনার গ্রাহকদের একজনের জন্য বিশেষাধিকার পাচ্ছেন, তাহলে Retrieve a user অপারেশন দ্বারা ফেরত আসা গ্রাহক আইডি ব্যবহার করুন।
অনুরোধ
GET https://admin.googleapis.com/admin/directory/v1/customer/customer_id/roles/ALL/privileges
প্রতিক্রিয়া
একটি সফল প্রতিক্রিয়া একটি HTTP 200 স্ট্যাটাস কোড ফেরত পাঠায়। স্ট্যাটাস কোডের সাথে, প্রতিক্রিয়াটি ডোমেনে সমর্থিত বিশেষাধিকারগুলি ফেরত দেয়:
{
"kind": "admin\#directory\#privileges",
"etag": ...,
"items": [
{
"kind": "admin\#directory\#privilege",
"etag": ...,
"serviceId": "02afmg282jiquyg",
"privilegeName": "APP_ADMIN",
"isOuScopable": false
},
{
"kind": "admin\#directory\#privilege",
"etag": ...,
"serviceId": "04f1mdlm0ki64aw",
"privilegeName": "MANAGE_USER_SETTINGS",
"isOuScopable": true,
"childPrivileges": [
{
"kind": "admin\#directory\#privilege",
"etag": ...,
"serviceId": "04f1mdlm0ki64aw",
"privilegeName": "MANAGE_APPLICATION_SETTINGS",
"isOuScopable": true
}
]
},
...
]
}
বিদ্যমান ভূমিকাগুলি পান
বিদ্যমান ভূমিকাগুলির একটি তালিকা পেতে, নিম্নলিখিত GET অনুরোধটি ব্যবহার করুন এবং Authorize requests এ বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন।
যদি আপনি একজন প্রশাসক হন এবং আপনার নিজস্ব ডোমেনে ভূমিকা পান, তাহলে গ্রাহক আইডি হিসেবে
my_customerব্যবহার করুন।যদি আপনি রিসেলার হন এবং কোনও গ্রাহকের জন্য ভূমিকা নিচ্ছেন, তাহলে Retrieve a user অপারেশন ব্যবহার করে আপনি যে গ্রাহক আইডি পেয়েছেন তা ব্যবহার করুন।
অনুরোধ
GET https://admin.googleapis.com/admin/directory/v1/customer/customer_id/roles
প্রতিক্রিয়া
একটি সফল প্রতিক্রিয়া একটি HTTP 200 স্ট্যাটাস কোড ফেরত পাঠায়। স্ট্যাটাস কোডের সাথে, প্রতিক্রিয়াটি ডোমেনে বিদ্যমান ভূমিকাগুলি ফেরত দেয়:
{
"kind": "admin\#directory\#roles",
"etag": "\"sxH3n22L0-77khHtQ7tiK6I21Yo/DywA6_jaJCYw-f0lFs2-g17UWe8\"",
"items": [
{
"kind": "admin\#directory\#role",
"etag": ... ,
"roleId": "3894208461012993",
"roleName": "_SEED_ADMIN_ROLE",
"roleDescription": "Google Workspace Administrator Seed Role",
"rolePrivileges": [
{
"privilegeName": "SUPER_ADMIN",
"serviceId": "01ci93xb3tmzyin"
},
{
"privilegeName": "ROOT_APP_ADMIN",
"serviceId": "00haapch16h1ysv"
},
{
"privilegeName": "ADMIN_APIS_ALL",
"serviceId": "00haapch16h1ysv"
},
...
],
"isSystemRole": true,
"isSuperAdminRole": true
},
{
"kind": "admin\#directory\#role",
"etag": "\"sxH3n22L0-77khHtQ7tiK6I21Yo/bTXiZXfuK1NGr_f4paosCWXuHmw\"",
"roleId": "3894208461012994",
"roleName": "_GROUPS_ADMIN_ROLE",
"roleDescription": "Groups Administrator",
"rolePrivileges": [
{
"privilegeName": "CHANGE_USER_GROUP_MEMBERSHIP",
"serviceId": "01ci93xb3tmzyin"
},
{
"privilegeName": "USERS_RETRIEVE",
"serviceId": "00haapch16h1ysv"
},
{
"privilegeName": "GROUPS_ALL",
"serviceId": "00haapch16h1ysv"
},
{
"privilegeName": "ADMIN_DASHBOARD",
"serviceId": "01ci93xb3tmzyin"
},
{
"privilegeName": "ORGANIZATION_UNITS_RETRIEVE",
"serviceId": "00haapch16h1ysv"
}
],
"isSystemRole": true
},
...
]
}
সমস্ত ভূমিকার তালিকা তৈরি করুন
সমস্ত ডাইরেক্ট রোল অ্যাসাইনমেন্টের একটি পৃষ্ঠাঙ্কিত তালিকা পেতে, roleAssignments.list() পদ্ধতিটি ব্যবহার করুন। userKey প্যারামিটার সেট করা থাকলে API খালি ফলাফলে একটি পৃষ্ঠা টোকেন ফেরত দিতে পারে। কোনও পৃষ্ঠা টোকেন ফেরত না পাওয়া পর্যন্ত আপনার পৃষ্ঠাঙ্কন চালিয়ে যাওয়া উচিত।
যদি আপনি একজন প্রশাসক হন এবং আপনার নিজের ডোমেনে ভূমিকার অ্যাসাইনমেন্ট পান, তাহলে গ্রাহক আইডি হিসেবে
my_customerব্যবহার করুন।আপনি যদি একজন রিসেলার হন এবং আপনার গ্রাহকদের একজনের জন্য ভূমিকার অ্যাসাইনমেন্ট পান, তাহলে Retrieve a user অপারেশন দ্বারা ফেরত আসা গ্রাহক আইডি ব্যবহার করুন।
অনুরোধ
GET https://admin.googleapis.com/admin/directory/v1/customer/customer_id/roleassignments
প্রতিক্রিয়া
একটি সফল প্রতিক্রিয়া একটি HTTP 200 স্ট্যাটাস কোড ফেরত পাঠায়। স্ট্যাটাস কোডের সাথে, প্রতিক্রিয়াটি ডোমেনে নির্ধারিত সমস্ত ভূমিকা ফেরত দেয়:
{
"kind": "admin\#directory\#roleAssignment",
"etag": "\"sxH3n22L0-77khHtQ7tiK6I21Yo/VdrrUEz7GyXqlr9I9JL0wGZn8yE\"",
"roleAssignmentId:"3894208461013211",
"assignedTo:"100662996240850794412",
"assigneeType:"user",
"scopeType:"CUSTOMER",
}
সমস্ত পরোক্ষ ভূমিকার তালিকা তৈরি করুন।
ব্যবহারকারীর গ্রুপের কারণে পরোক্ষভাবে নির্ধারিত সকল ভূমিকার অ্যাসাইনমেন্টের একটি পৃষ্ঠাবদ্ধ তালিকা পেতে, roleAssignments.list() পদ্ধতিটি ব্যবহার করুন।
API-তে একটি পৃষ্ঠা টোকেন সহ খালি ফলাফল আসতে পারে। কোনও পৃষ্ঠা টোকেন ফিরে না আসা পর্যন্ত আপনার পৃষ্ঠাকরণ চালিয়ে যাওয়া উচিত।
যদি আপনি একজন প্রশাসক হন এবং আপনার নিজের ডোমেনে ভূমিকার অ্যাসাইনমেন্ট পান, তাহলে গ্রাহক আইডি হিসেবে
my_customerব্যবহার করুন।আপনি যদি একজন রিসেলার হন এবং আপনার গ্রাহকদের একজনের জন্য ভূমিকার অ্যাসাইনমেন্ট পান, তাহলে Retrieve a user অপারেশন দ্বারা ফেরত আসা গ্রাহক আইডি ব্যবহার করুন।
USER_KEYপরিবর্তে API অনুরোধে ব্যবহারকারীকে শনাক্ত করে এমন একটি মান ব্যবহার করুন। আরও তথ্যের জন্য,users.getদেখুন।
অনুরোধ
GET https://admin.googleapis.com/admin/directory/v1/customer/customer_id/roleassignments?userKey=USER_KEY&includeIndirectRoleAssignments=true
প্রতিক্রিয়া
একটি সফল প্রতিক্রিয়া একটি HTTP 200 স্ট্যাটাস কোড ফেরত পাঠায়। স্ট্যাটাস কোডের সাথে, প্রতিক্রিয়াটি ডোমেনে নির্ধারিত সমস্ত ভূমিকা এবং assigneeType user নাকি group তা ফেরত দেয়:
{
"kind": "admin\#directory\#roleAssignment",
"etag": "\"sxH3n22L0-77khHtQ7tiK6I21Yo/VdrrUEz7GyXqlr9I9JL0wGZn8yE\"",
"roleAssignmentId:"3894208461013211",
"assignedTo:"100662996240850794412",
"assigneeType:"group",
"scopeType:"CUSTOMER",
}
একটি ভূমিকা তৈরি করুন
একটি নতুন ভূমিকা তৈরি করতে, নিম্নলিখিত POST অনুরোধটি ব্যবহার করুন এবং Authorize requests এ বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন। এই ভূমিকার সাথে মঞ্জুর করা প্রতিটি বিশেষাধিকারের জন্য একটি privilegeName এবং serviceId যোগ করুন। অনুরোধ এবং প্রতিক্রিয়া বৈশিষ্ট্যের জন্য, API Reference দেখুন।
অনুরোধ
POST https://admin.googleapis.com/admin/directory/v1/customer/customer_id/roles
{
"roleName": "My New Role",
"rolePrivileges": [
{
"privilegeName": "USERS_ALL",
"serviceId": "00haapch16h1ysv"
},
{
"privilegeName": "GROUPS_ALL",
"serviceId": "00haapch16h1ysv"
}
]
}প্রতিক্রিয়া
একটি সফল প্রতিক্রিয়া একটি HTTP 200 স্ট্যাটাস কোড ফেরত পাঠায়। স্ট্যাটাস কোডের সাথে, প্রতিক্রিয়াটি নতুন ভূমিকার জন্য বৈশিষ্ট্যগুলি ফেরত দেয়:
{
"kind": "admin\#directory\#role",
"etag": "\"sxH3n22L0-77khHtQ7tiK6I21Yo/uX9tXw0qyijC9nUKgCs08wo8aEM\"",
"roleId": "3894208461013031",
"roleName": "My New Role",
"rolePrivileges": [
{
"privilegeName": "GROUPS_ALL",
"serviceId": "00haapch16h1ysv"
},
{
"privilegeName": "USERS_ALL",
"serviceId": "00haapch16h1ysv"
}
]
}
একটি ভূমিকা অ্যাসাইনমেন্ট তৈরি করুন
একটি ভূমিকা নির্ধারণ করতে, নিম্নলিখিত POST পদ্ধতিটি ব্যবহার করুন এবং Authorize requests এ বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন।
একজন ব্যবহারকারীকে ভূমিকা নির্ধারণ করতে, ব্যবহারকারীর
user_idসহ একটি JSON বডি যোগ করুন, যা আপনিusers.get(),roleId(যেমন Get existing roles এ বর্ণিত হয়েছে) এবংscope_typeথেকে পেতে পারেন।একটি পরিষেবা অ্যাকাউন্টে ভূমিকা নির্ধারণ করতে, পরিষেবা অ্যাকাউন্টের
unique_id(যেমন Identity and Access Management (IAM) তে সংজ্ঞায়িত করা হয়েছে),roleId(যেমন Get existing roles তে বর্ণিত হয়েছে) এবংscope_typeসহ একটি JSON বডি যোগ করুন।একটি গ্রুপে ভূমিকা নির্ধারণ করতে, গ্রুপের
group_idসহ একটি JSON বডি যোগ করুন, যা আপনিgroups.get(),roleId(যেমন Get existing roles এ বর্ণিত হয়েছে) এবংscope_typeথেকে পেতে পারেন।
অনুরোধ
POST https://admin.googleapis.com/admin/directory/v1/customer/customer_id/roleassignments { "roleId": "3894208461012995", "assignedTo": "100662996240850794412", "scopeType": "CUSTOMER" }
প্রতিক্রিয়া
একটি সফল প্রতিক্রিয়া একটি HTTP 200 স্ট্যাটাস কোড প্রদান করে। স্ট্যাটাস কোডের সাথে, প্রতিক্রিয়াটি নতুন ভূমিকার জন্য বৈশিষ্ট্যগুলি প্রদান করে:
{
"kind": "admin\#directory\#roleAssignment",
"etag": "\"sxH3n22L0-77khHtQ7tiK6I21Yo/VdrrUEz7GyXqlr9I9JL0wGZn8yE\"",
"roleAssignmentId": "3894208461013211",
"roleId": "3894208461012995",
"assignedTo": "100662996240850794412",
"scopeType": "CUSTOMER"
}
শর্তাবলী সহ একটি ভূমিকা অ্যাসাইনমেন্ট তৈরি করুন
আপনি নির্দিষ্ট শর্ত পূরণ করে এমন ক্রিয়া সম্পাদনের জন্য ভূমিকা প্রদান করতে পারেন। বর্তমানে, কেবল দুটি শর্ত সমর্থিত:
- শুধুমাত্র নিরাপত্তা গোষ্ঠীর জন্য প্রযোজ্য
- নিরাপত্তা গোষ্ঠীর ক্ষেত্রে প্রযোজ্য নয়
যখন condition সেট করা থাকে, তখনই এটি কার্যকর হবে যখন অ্যাক্সেস করা রিসোর্সটি শর্ত পূরণ করবে। যদি condition খালি থাকে, তাহলে ভূমিকা ( roleId ) স্কোপে ( scopeType ) অভিনেতা ( assignedTo ) এর জন্য নিঃশর্তভাবে প্রয়োগ করা হয়।
একজন ব্যবহারকারীকে একটি ভূমিকা অর্পণ করতে, নিম্নলিখিত POST পদ্ধতিটি ব্যবহার করুন এবং Authorize requests এ বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন।
ব্যবহারকারীর user_id সহ একটি JSON বডি যোগ করুন, যা আপনি users.get() থেকে পেতে পারেন, Get existing roles এ বর্ণিত roleId এবং condition । নীচে দেখানো দুটি কন্ডিশন স্ট্রিংকে শব্দার্থে ব্যবহার করতে হবে এবং এগুলি শুধুমাত্র Groups Editor এবং Groups Reader-এর পূর্বে তৈরি অ্যাডমিনিস্ট্রেটর রোলের সাথে কাজ করে। এই কন্ডিশনগুলি Cloud IAM কন্ডিশন সিনট্যাক্স অনুসরণ করে।
অনুরোধ
শুধুমাত্র নিরাপত্তা গোষ্ঠীর জন্য প্রযোজ্য
POST https://admin.googleapis.com/admin/directory/v1.1beta1/customer/customer_id/roleassignments { "roleId": "3894208461012995", "assignedTo": "100662996240850794412", "scopeType": "CUSTOMER", "condition": "api.getAttribute('cloudidentity.googleapis.com/groups.labels', []).hasAny(['groups.security']) && resource.type == 'cloudidentity.googleapis.com/Group'" }
নিরাপত্তা গোষ্ঠীর ক্ষেত্রে প্রযোজ্য নয়
POST https://admin.googleapis.com/admin/directory/v1.1beta1/customer/customer_id/roleassignments { "roleId": "3894208461012995", "assignedTo": "100662996240850794412", "scopeType": "CUSTOMER", "condition": "!api.getAttribute('cloudidentity.googleapis.com/groups.labels', []).hasAny(['groups.security']) && resource.type == 'cloudidentity.googleapis.com/Group'" }
প্রতিক্রিয়া
একটি সফল প্রতিক্রিয়া একটি HTTP 200 স্ট্যাটাস কোড প্রদান করে। স্ট্যাটাস কোডের সাথে, প্রতিক্রিয়াটি নতুন ভূমিকার জন্য বৈশিষ্ট্যগুলি প্রদান করে:
{
"kind": "admin\#directory\#roleAssignment",
"etag": "\"sxH3n22L0-77khHtQ7tiK6I21Yo/VdrrUEz7GyXqlr9I9JL0wGZn8yE\"",
"roleAssignmentId": "3894208461013211",
"roleId": "3894208461012995",
"assignedTo": "100662996240850794412",
"scopeType": "CUSTOMER",
"condition": "!api.getAttribute('cloudidentity.googleapis.com/groups.labels',
[]).hasAny(['groups.security']) && resource.type ==
'cloudidentity.googleapis.com/Group'"
}