ভূমিকা পরিচালনা করুন

ডিরেক্টরি API আপনাকে আপনার Google Workspace ডোমেনের বৈশিষ্ট্যগুলিতে অ্যাক্সেস পরিচালনা করতে ভূমিকা-ভিত্তিক অ্যাক্সেস নিয়ন্ত্রণ (RBAC) ব্যবহার করতে দেয়। Google Workspace-এর সাথে প্রদত্ত প্রি-বিল্ট রোলগুলির চেয়ে বিশেষভাবে অ্যাডমিন অ্যাক্সেস সীমিত করার জন্য আপনি বিশেষাধিকার সহ কাস্টম ভূমিকা তৈরি করতে পারেন। আপনি ব্যবহারকারী বা নিরাপত্তা গোষ্ঠীকে ভূমিকা নির্ধারণ করতে পারেন। এই নির্দেশিকা ব্যাখ্যা করে কিভাবে কিছু মৌলিক ভূমিকা-সম্পর্কিত কাজ সম্পাদন করতে হয়।

Google Workspace-এর মধ্যে RBAC-এর ক্ষেত্রে ডিরেক্টরি API-এর দ্বারা ব্যবহৃত সাধারণ পদগুলির একটি তালিকা নিচে দেওয়া হল:

বিশেষাধিকার
Google Workspace ডোমেনে একটি টাস্ক বা অপারেশন করার জন্য প্রয়োজনীয় অনুমতি। Privilege রিসোর্স দ্বারা প্রতিনিধিত্ব করা হয়। এই সম্পদের সাথে যুক্ত কোন স্থায়ী তথ্য নেই।
ভূমিকা
বিশেষাধিকারের একটি সংগ্রহ যা সেই ভূমিকা সহ সত্তাকে নির্দিষ্ট কাজ বা ক্রিয়াকলাপ সম্পাদন করার ক্ষমতা প্রদান করে। Role সম্পদ দ্বারা প্রতিনিধিত্ব.
ভূমিকা নিয়োগ
ব্যবহারকারী বা গোষ্ঠীকে দেওয়া একটি নির্দিষ্ট ভূমিকার রেকর্ড। RoleAssignment রিসোর্স দ্বারা প্রতিনিধিত্ব করা হয়।
নিরাপত্তা গ্রুপ
এক ধরনের ক্লাউড আইডেন্টিটি গ্রুপ যা সাংগঠনিক সংস্থানগুলিতে অ্যাক্সেস নিয়ন্ত্রণ করতে ব্যবহৃত হয়। নিরাপত্তা গোষ্ঠীতে পৃথক ব্যবহারকারী এবং গোষ্ঠী উভয়ই থাকতে পারে।

ভূমিকা এবং ভূমিকা নিয়োগের সীমা

আপনি শুধুমাত্র একটি সীমিত পরিমাণ কাস্টম ভূমিকা বা ভূমিকা অ্যাসাইনমেন্ট তৈরি করতে পারেন, তাই আপনি যদি সীমার কাছাকাছি পৌঁছে যান, সীমার নিচে থাকার জন্য সেগুলি একত্রিত করুন বা সরান৷ ভূমিকা এবং ভূমিকা নিয়োগের নিম্নলিখিত সীমা রয়েছে:

  • আপনি আপনার সম্পূর্ণ প্রতিষ্ঠানের জন্য 750টি পর্যন্ত কাস্টম ভূমিকা তৈরি করতে পারেন।
  • আপনি প্রতি সাংগঠনিক ইউনিট (OU) প্রতি 1000টি ভূমিকা অ্যাসাইনমেন্ট তৈরি করতে পারেন, যেখানে রুট সংস্থাটিকে একটি ইউনিট হিসাবে বিবেচনা করা হয়। উদাহরণস্বরূপ, আপনি মূল সংস্থায় 600টি ভূমিকা এবং অন্য OU এর মধ্যে 700টি ভূমিকা নির্ধারণ করতে পারেন যা আপনি সংজ্ঞায়িত করেছেন, যেমন একটি কোম্পানির একটি বিভাগ। Google Workspace-এর সমস্ত প্রি-বিল্ট অ্যাডমিনিস্ট্রেটর রোল ডিফল্ট প্রতিষ্ঠান-ব্যাপী স্কোপের জন্য। OU স্তরে বরাদ্দ করা যেতে পারে এমন বিশেষাধিকারের সীমা সম্পর্কে আরও জানুন।

গোষ্ঠীগুলির জন্য ভূমিকা এবং ভূমিকা নিয়োগের নিম্নলিখিত সীমা রয়েছে:

  • আপনি সুপার অ্যাডমিন ছাড়া যেকোন দায়িত্ব অর্পণ করতে পারেন।
  • আপনি সামগ্রিক OU এবং প্রতিটি OU-এর মধ্যে মোট গোষ্ঠীগুলিতে 250টি ভূমিকা অ্যাসাইনমেন্ট থাকতে পারেন।
  • গ্রুপটি আপনার প্রতিষ্ঠানের একটি নিরাপত্তা গ্রুপ হতে হবে।
  • আমরা আপনার প্রতিষ্ঠানের ব্যবহারকারীদের জন্য গ্রুপ সদস্যতা সীমাবদ্ধ করার সুপারিশ করি। আপনি আপনার প্রতিষ্ঠানের বাইরে থেকে ব্যবহারকারীদের যোগ করতে পারেন, কিন্তু তারা ভূমিকার বিশেষাধিকার নাও পেতে পারে। বিস্তারিত জানার জন্য, গ্রুপ সদস্যতা সীমাবদ্ধ দেখুন। ### গ্রুপে ভূমিকা নিয়োগ

যদি আপনাকে একটি OU-তে 1000 টির বেশি ভূমিকা বরাদ্দ করতে হয়, আপনি একটি নিরাপত্তা গোষ্ঠীতে একাধিক সদস্য যোগ করতে পারেন এবং গ্রুপে একটি ভূমিকা নির্ধারণ করতে পারেন৷ গ্রুপ রোল অ্যাসাইনমেন্টের কিছু অতিরিক্ত সীমাবদ্ধতা রয়েছে—নির্দিষ্ট তথ্যের জন্য অ্যাডমিন সহায়তা কেন্দ্র দেখুন।

Google অ্যাডমিন কনসোল রোল-টু-প্রিভিলেজ ম্যাপিং

যে ব্যবহারকারীরা অ্যাডমিন কনসোলের মাধ্যমে তাদের বিশেষাধিকারগুলি অ্যাক্সেস করে তাদের জন্য ভূমিকা বরাদ্দ করতে, কিছু অতিরিক্ত বিশেষাধিকার প্রদানের প্রয়োজন হতে পারে। উদাহরণস্বরূপ, অ্যাডমিন কনসোলের মাধ্যমে একজন ব্যবহারকারীকে অন্য ব্যবহারকারী তৈরি করার ক্ষমতা প্রদানের জন্য, শুধুমাত্র 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

কেস উদাহরণ ব্যবহার করুন

আপনি শুরু করার আগে

Google Workspace-এর জন্য প্রমাণীকরণ এবং অনুমোদনের ধাপগুলি সম্পূর্ণ করুন।

ডোমেন সুবিধার একটি তালিকা পান

আপনার ডোমেনে সমর্থিত বিশেষাধিকারগুলির একটি পৃষ্ঠাযুক্ত তালিকা পেতে, privileges.list() পদ্ধতিটি ব্যবহার করুন৷

  • আপনি যদি একজন প্রশাসক হন আপনার নিজের ডোমেনে বিশেষাধিকার পাচ্ছেন, my_customer গ্রাহক আইডি হিসাবে ব্যবহার করুন৷

  • আপনি যদি একজন রিসেলার হন আপনার একজন গ্রাহকের জন্য বিশেষ সুবিধা পাচ্ছেন, তাহলে ব্যবহারকারীর অপারেশন পুনরুদ্ধার করে ফেরত দেওয়া গ্রাহক আইডি ব্যবহার করুন।

অনুরোধ

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 অনুরোধটি ব্যবহার করুন এবং অনুমোদনের অনুরোধগুলিতে বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন।

  • আপনি যদি একজন প্রশাসক হন যে আপনার নিজের ডোমেনে ভূমিকা পাচ্ছেন, my_customer গ্রাহক আইডি হিসাবে ব্যবহার করুন৷

  • আপনি যদি রিসেলার একজন গ্রাহকের জন্য ভূমিকা পেয়ে থাকেন, তাহলে ব্যবহারকারীর অপারেশন পুনরুদ্ধার করার মাধ্যমে আপনি যে গ্রাহক আইডি পেয়েছেন সেটি ব্যবহার করুন।

অনুরোধ

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 গ্রাহক আইডি হিসাবে ব্যবহার করুন৷

  • আপনি যদি একজন রিসেলার হন যে আপনার গ্রাহকদের একজনের জন্য ভূমিকা অ্যাসাইনমেন্ট পাচ্ছেন, তাহলে ব্যবহারকারীর অপারেশন পুনরুদ্ধার করার মাধ্যমে ফেরত দেওয়া গ্রাহক আইডি ব্যবহার করুন।

অনুরোধ

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 গ্রাহক আইডি হিসাবে ব্যবহার করুন৷

  • আপনি যদি একজন রিসেলার হন যে আপনার গ্রাহকদের একজনের জন্য ভূমিকা অ্যাসাইনমেন্ট পাচ্ছেন, তাহলে ব্যবহারকারীর অপারেশন পুনরুদ্ধার করার মাধ্যমে ফেরত দেওয়া গ্রাহক আইডি ব্যবহার করুন।

  • 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 অনুরোধটি ব্যবহার করুন এবং অনুমোদনের অনুরোধে বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন। এই ভূমিকার সাথে মঞ্জুর করা উচিত এমন প্রতিটি বিশেষাধিকারের জন্য একটি privilegeName এবং serviceId যোগ করুন। অনুরোধ এবং প্রতিক্রিয়া বৈশিষ্ট্যের জন্য, API রেফারেন্স দেখুন।

অনুরোধ

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 পদ্ধতিটি ব্যবহার করুন এবং অনুমোদনের অনুরোধে বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন।

অনুরোধ

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 ) অভিনেতার ( assignedTo ) স্কোপে ( scopeType ) নিঃশর্তভাবে প্রয়োগ করা হয়।

একজন ব্যবহারকারীকে একটি ভূমিকা অর্পণ করতে, নিম্নলিখিত POST পদ্ধতিটি ব্যবহার করুন এবং অনুমোদনের অনুরোধে বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন।

ব্যবহারকারীর user_id এর সাথে একটি JSON বডি যোগ করুন, যা আপনি user.get() থেকে পেতে পারেন , বিদ্যমান ভূমিকা নিন এবং condition বর্ণিত roleId । দুটি শর্তের স্ট্রিংগুলিকে নীচের দেখানো মত শব্দার্থে ব্যবহার করতে হবে এবং তারা শুধুমাত্র গ্রুপ এডিটর এবং গ্রুপ রিডার পূর্ব-নির্মিত প্রশাসকের ভূমিকার সাথে কাজ করে। এই শর্তগুলি ক্লাউড আইএএম কন্ডিশন সিনট্যাক্স অনুসরণ করে।

অনুরোধ

শুধুমাত্র নিরাপত্তা গ্রুপ প্রযোজ্য
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'"
}
,

ডিরেক্টরি API আপনাকে আপনার Google Workspace ডোমেনের বৈশিষ্ট্যগুলিতে অ্যাক্সেস পরিচালনা করতে ভূমিকা-ভিত্তিক অ্যাক্সেস নিয়ন্ত্রণ (RBAC) ব্যবহার করতে দেয়। Google Workspace-এর সাথে প্রদত্ত প্রি-বিল্ট রোলগুলির চেয়ে বিশেষভাবে অ্যাডমিন অ্যাক্সেস সীমিত করার জন্য আপনি বিশেষাধিকার সহ কাস্টম ভূমিকা তৈরি করতে পারেন। আপনি ব্যবহারকারী বা নিরাপত্তা গোষ্ঠীকে ভূমিকা নির্ধারণ করতে পারেন। এই নির্দেশিকা ব্যাখ্যা করে কিভাবে কিছু মৌলিক ভূমিকা-সম্পর্কিত কাজ সম্পাদন করতে হয়।

Google Workspace-এর মধ্যে RBAC-এর ক্ষেত্রে ডিরেক্টরি API-এর দ্বারা ব্যবহৃত সাধারণ পদগুলির একটি তালিকা নিচে দেওয়া হল:

বিশেষাধিকার
Google Workspace ডোমেনে একটি টাস্ক বা অপারেশন করার জন্য প্রয়োজনীয় অনুমতি। Privilege রিসোর্স দ্বারা প্রতিনিধিত্ব করা হয়। এই সম্পদের সাথে যুক্ত কোন স্থায়ী তথ্য নেই।
ভূমিকা
বিশেষাধিকারের একটি সংগ্রহ যা সেই ভূমিকা সহ সত্তাকে নির্দিষ্ট কাজ বা ক্রিয়াকলাপ সম্পাদন করার ক্ষমতা প্রদান করে। Role সম্পদ দ্বারা প্রতিনিধিত্ব.
ভূমিকা নিয়োগ
ব্যবহারকারী বা গোষ্ঠীকে দেওয়া একটি নির্দিষ্ট ভূমিকার রেকর্ড। RoleAssignment রিসোর্স দ্বারা প্রতিনিধিত্ব করা হয়।
নিরাপত্তা গ্রুপ
এক ধরনের ক্লাউড আইডেন্টিটি গ্রুপ যা সাংগঠনিক সংস্থানগুলিতে অ্যাক্সেস নিয়ন্ত্রণ করতে ব্যবহৃত হয়। নিরাপত্তা গোষ্ঠীতে পৃথক ব্যবহারকারী এবং গোষ্ঠী উভয়ই থাকতে পারে।

ভূমিকা এবং ভূমিকা নিয়োগের সীমা

আপনি শুধুমাত্র একটি সীমিত পরিমাণ কাস্টম ভূমিকা বা ভূমিকা অ্যাসাইনমেন্ট তৈরি করতে পারেন, তাই আপনি যদি সীমার কাছাকাছি পৌঁছে যান, সীমার নিচে থাকার জন্য সেগুলি একত্রিত করুন বা সরান৷ ভূমিকা এবং ভূমিকা নিয়োগের নিম্নলিখিত সীমা রয়েছে:

  • আপনি আপনার সম্পূর্ণ প্রতিষ্ঠানের জন্য 750টি পর্যন্ত কাস্টম ভূমিকা তৈরি করতে পারেন।
  • আপনি প্রতি সাংগঠনিক ইউনিট (OU) প্রতি 1000টি ভূমিকা অ্যাসাইনমেন্ট তৈরি করতে পারেন, যেখানে রুট সংস্থাটিকে একটি ইউনিট হিসাবে বিবেচনা করা হয়। উদাহরণস্বরূপ, আপনি মূল সংস্থায় 600টি ভূমিকা এবং অন্য OU এর মধ্যে 700টি ভূমিকা নির্ধারণ করতে পারেন যা আপনি সংজ্ঞায়িত করেছেন, যেমন একটি কোম্পানির একটি বিভাগ। Google Workspace-এর সমস্ত প্রি-বিল্ট অ্যাডমিনিস্ট্রেটর রোল ডিফল্ট প্রতিষ্ঠান-ব্যাপী স্কোপের জন্য। OU স্তরে বরাদ্দ করা যেতে পারে এমন বিশেষাধিকারের সীমা সম্পর্কে আরও জানুন।

গোষ্ঠীগুলির জন্য ভূমিকা এবং ভূমিকা নিয়োগের নিম্নলিখিত সীমা রয়েছে:

  • আপনি সুপার অ্যাডমিন ছাড়া যেকোন দায়িত্ব অর্পণ করতে পারেন।
  • আপনি সামগ্রিক OU এবং প্রতিটি OU-এর মধ্যে মোট গোষ্ঠীগুলিতে 250টি ভূমিকা অ্যাসাইনমেন্ট থাকতে পারেন।
  • গ্রুপটি আপনার প্রতিষ্ঠানের একটি নিরাপত্তা গ্রুপ হতে হবে।
  • আমরা আপনার প্রতিষ্ঠানের ব্যবহারকারীদের জন্য গ্রুপ সদস্যতা সীমাবদ্ধ করার সুপারিশ করি। আপনি আপনার প্রতিষ্ঠানের বাইরে থেকে ব্যবহারকারীদের যোগ করতে পারেন, কিন্তু তারা ভূমিকার বিশেষাধিকার নাও পেতে পারে। বিস্তারিত জানার জন্য, গ্রুপ সদস্যতা সীমাবদ্ধ দেখুন। ### গ্রুপে ভূমিকা নিয়োগ

যদি আপনাকে একটি OU-তে 1000 টির বেশি ভূমিকা বরাদ্দ করতে হয়, আপনি একটি নিরাপত্তা গোষ্ঠীতে একাধিক সদস্য যোগ করতে পারেন এবং গ্রুপে একটি ভূমিকা নির্ধারণ করতে পারেন৷ গ্রুপ রোল অ্যাসাইনমেন্টের কিছু অতিরিক্ত সীমাবদ্ধতা রয়েছে—নির্দিষ্ট তথ্যের জন্য অ্যাডমিন সহায়তা কেন্দ্র দেখুন।

Google অ্যাডমিন কনসোল রোল-টু-প্রিভিলেজ ম্যাপিং

যে ব্যবহারকারীরা অ্যাডমিন কনসোলের মাধ্যমে তাদের বিশেষাধিকারগুলি অ্যাক্সেস করে তাদের জন্য ভূমিকা বরাদ্দ করতে, কিছু অতিরিক্ত বিশেষাধিকার প্রদানের প্রয়োজন হতে পারে। উদাহরণস্বরূপ, অ্যাডমিন কনসোলের মাধ্যমে একজন ব্যবহারকারীকে অন্য ব্যবহারকারী তৈরি করার ক্ষমতা প্রদানের জন্য, শুধুমাত্র 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

কেস উদাহরণ ব্যবহার করুন

আপনি শুরু করার আগে

Google Workspace-এর জন্য প্রমাণীকরণ এবং অনুমোদনের ধাপগুলি সম্পূর্ণ করুন।

ডোমেন সুবিধার একটি তালিকা পান

আপনার ডোমেনে সমর্থিত বিশেষাধিকারগুলির একটি পৃষ্ঠাযুক্ত তালিকা পেতে, privileges.list() পদ্ধতিটি ব্যবহার করুন৷

  • আপনি যদি একজন প্রশাসক হন আপনার নিজের ডোমেনে বিশেষাধিকার পাচ্ছেন, my_customer গ্রাহক আইডি হিসাবে ব্যবহার করুন৷

  • আপনি যদি একজন রিসেলার হন আপনার একজন গ্রাহকের জন্য বিশেষ সুবিধা পাচ্ছেন, তাহলে ব্যবহারকারীর অপারেশন পুনরুদ্ধার করে ফেরত দেওয়া গ্রাহক আইডি ব্যবহার করুন।

অনুরোধ

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 অনুরোধটি ব্যবহার করুন এবং অনুমোদনের অনুরোধগুলিতে বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন।

  • আপনি যদি একজন প্রশাসক হন যে আপনার নিজের ডোমেনে ভূমিকা পাচ্ছেন, my_customer গ্রাহক আইডি হিসাবে ব্যবহার করুন৷

  • আপনি যদি রিসেলার একজন গ্রাহকের জন্য ভূমিকা পেয়ে থাকেন, তাহলে ব্যবহারকারীর অপারেশন পুনরুদ্ধার করার মাধ্যমে আপনি যে গ্রাহক আইডি পেয়েছেন সেটি ব্যবহার করুন।

অনুরোধ

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 গ্রাহক আইডি হিসাবে ব্যবহার করুন৷

  • আপনি যদি একজন রিসেলার হন যে আপনার গ্রাহকদের একজনের জন্য ভূমিকা অ্যাসাইনমেন্ট পাচ্ছেন, তাহলে ব্যবহারকারীর অপারেশন পুনরুদ্ধার করার মাধ্যমে ফেরত দেওয়া গ্রাহক আইডি ব্যবহার করুন।

অনুরোধ

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 গ্রাহক আইডি হিসাবে ব্যবহার করুন৷

  • আপনি যদি একজন রিসেলার হন যে আপনার গ্রাহকদের একজনের জন্য ভূমিকা অ্যাসাইনমেন্ট পাচ্ছেন, তাহলে ব্যবহারকারীর অপারেশন পুনরুদ্ধার করার মাধ্যমে ফেরত দেওয়া গ্রাহক আইডি ব্যবহার করুন।

  • 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 অনুরোধটি ব্যবহার করুন এবং অনুমোদনের অনুরোধে বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন। এই ভূমিকার সাথে মঞ্জুর করা উচিত এমন প্রতিটি বিশেষাধিকারের জন্য একটি privilegeName এবং serviceId যোগ করুন। অনুরোধ এবং প্রতিক্রিয়া বৈশিষ্ট্যের জন্য, API রেফারেন্স দেখুন।

অনুরোধ

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 পদ্ধতিটি ব্যবহার করুন এবং অনুমোদনের অনুরোধে বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন।

অনুরোধ

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 ) অভিনেতার ( assignedTo ) স্কোপে ( scopeType ) নিঃশর্তভাবে প্রয়োগ করা হয়।

একজন ব্যবহারকারীকে একটি ভূমিকা অর্পণ করতে, নিম্নলিখিত POST পদ্ধতিটি ব্যবহার করুন এবং অনুমোদনের অনুরোধে বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন।

ব্যবহারকারীর user_id এর সাথে একটি JSON বডি যোগ করুন, যা আপনি user.get() থেকে পেতে পারেন , বিদ্যমান ভূমিকা নিন এবং condition বর্ণিত roleId । দুটি শর্তের স্ট্রিংগুলিকে নীচের দেখানো মত শব্দার্থে ব্যবহার করতে হবে এবং তারা শুধুমাত্র গ্রুপ এডিটর এবং গ্রুপ রিডার পূর্ব-নির্মিত প্রশাসকের ভূমিকার সাথে কাজ করে। এই শর্তগুলি ক্লাউড আইএএম কন্ডিশন সিনট্যাক্স অনুসরণ করে।

অনুরোধ

শুধুমাত্র নিরাপত্তা গ্রুপ প্রযোজ্য
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'"
}
,

ডিরেক্টরি API আপনাকে আপনার Google Workspace ডোমেনের বৈশিষ্ট্যগুলিতে অ্যাক্সেস পরিচালনা করতে ভূমিকা-ভিত্তিক অ্যাক্সেস নিয়ন্ত্রণ (RBAC) ব্যবহার করতে দেয়। Google Workspace-এর সাথে প্রদত্ত প্রি-বিল্ট রোলগুলির চেয়ে বিশেষভাবে অ্যাডমিন অ্যাক্সেস সীমিত করার জন্য আপনি বিশেষাধিকার সহ কাস্টম ভূমিকা তৈরি করতে পারেন। আপনি ব্যবহারকারী বা নিরাপত্তা গোষ্ঠীকে ভূমিকা নির্ধারণ করতে পারেন। এই নির্দেশিকা ব্যাখ্যা করে কিভাবে কিছু মৌলিক ভূমিকা-সম্পর্কিত কাজ সম্পাদন করতে হয়।

Google Workspace-এর মধ্যে RBAC-এর ক্ষেত্রে ডিরেক্টরি API-এর দ্বারা ব্যবহৃত সাধারণ পদগুলির একটি তালিকা নিচে দেওয়া হল:

বিশেষাধিকার
Google Workspace ডোমেনে একটি টাস্ক বা অপারেশন করার জন্য প্রয়োজনীয় অনুমতি। Privilege রিসোর্স দ্বারা প্রতিনিধিত্ব করা হয়। এই সম্পদের সাথে যুক্ত কোন স্থায়ী তথ্য নেই।
ভূমিকা
বিশেষাধিকারের একটি সংগ্রহ যা সেই ভূমিকা সহ সত্তাকে নির্দিষ্ট কাজ বা ক্রিয়াকলাপ সম্পাদন করার ক্ষমতা প্রদান করে। Role সম্পদ দ্বারা প্রতিনিধিত্ব.
ভূমিকা নিয়োগ
ব্যবহারকারী বা গোষ্ঠীকে দেওয়া একটি নির্দিষ্ট ভূমিকার রেকর্ড। RoleAssignment রিসোর্স দ্বারা প্রতিনিধিত্ব করা হয়।
নিরাপত্তা গ্রুপ
এক ধরনের ক্লাউড আইডেন্টিটি গ্রুপ যা সাংগঠনিক সংস্থানগুলিতে অ্যাক্সেস নিয়ন্ত্রণ করতে ব্যবহৃত হয়। নিরাপত্তা গোষ্ঠীতে পৃথক ব্যবহারকারী এবং গোষ্ঠী উভয়ই থাকতে পারে।

ভূমিকা এবং ভূমিকা নিয়োগের সীমা

আপনি শুধুমাত্র একটি সীমিত পরিমাণ কাস্টম ভূমিকা বা ভূমিকা অ্যাসাইনমেন্ট তৈরি করতে পারেন, তাই আপনি যদি সীমার কাছাকাছি পৌঁছে যান, সীমার নিচে থাকার জন্য সেগুলি একত্রিত করুন বা সরান৷ ভূমিকা এবং ভূমিকা নিয়োগের নিম্নলিখিত সীমা রয়েছে:

  • আপনি আপনার সম্পূর্ণ প্রতিষ্ঠানের জন্য 750টি পর্যন্ত কাস্টম ভূমিকা তৈরি করতে পারেন।
  • আপনি প্রতি সাংগঠনিক ইউনিট (OU) প্রতি 1000টি ভূমিকা অ্যাসাইনমেন্ট তৈরি করতে পারেন, যেখানে রুট সংস্থাটিকে একটি ইউনিট হিসাবে বিবেচনা করা হয়। উদাহরণস্বরূপ, আপনি মূল সংস্থায় 600টি ভূমিকা এবং অন্য OU এর মধ্যে 700টি ভূমিকা নির্ধারণ করতে পারেন যা আপনি সংজ্ঞায়িত করেছেন, যেমন একটি কোম্পানির একটি বিভাগ। Google Workspace-এর সমস্ত প্রি-বিল্ট অ্যাডমিনিস্ট্রেটর রোল ডিফল্ট প্রতিষ্ঠান-ব্যাপী স্কোপের জন্য। OU স্তরে বরাদ্দ করা যেতে পারে এমন বিশেষাধিকারের সীমা সম্পর্কে আরও জানুন।

গোষ্ঠীগুলির জন্য ভূমিকা এবং ভূমিকা নিয়োগের নিম্নলিখিত সীমা রয়েছে:

  • আপনি সুপার অ্যাডমিন ছাড়া যেকোন দায়িত্ব অর্পণ করতে পারেন।
  • আপনি সামগ্রিক OU এবং প্রতিটি OU-এর মধ্যে মোট গোষ্ঠীগুলিতে 250টি ভূমিকা অ্যাসাইনমেন্ট থাকতে পারেন।
  • গ্রুপটি আপনার প্রতিষ্ঠানের একটি নিরাপত্তা গ্রুপ হতে হবে।
  • আমরা আপনার প্রতিষ্ঠানের ব্যবহারকারীদের জন্য গ্রুপ সদস্যতা সীমাবদ্ধ করার সুপারিশ করি। আপনি আপনার প্রতিষ্ঠানের বাইরে থেকে ব্যবহারকারীদের যোগ করতে পারেন, কিন্তু তারা ভূমিকার বিশেষাধিকার নাও পেতে পারে। বিস্তারিত জানার জন্য, গ্রুপ সদস্যতা সীমাবদ্ধ দেখুন। ### গ্রুপে ভূমিকা নিয়োগ

যদি আপনাকে একটি OU-তে 1000 টির বেশি ভূমিকা বরাদ্দ করতে হয়, আপনি একটি নিরাপত্তা গোষ্ঠীতে একাধিক সদস্য যোগ করতে পারেন এবং গ্রুপে একটি ভূমিকা নির্ধারণ করতে পারেন৷ গ্রুপ রোল অ্যাসাইনমেন্টের কিছু অতিরিক্ত সীমাবদ্ধতা রয়েছে—নির্দিষ্ট তথ্যের জন্য অ্যাডমিন সহায়তা কেন্দ্র দেখুন।

Google অ্যাডমিন কনসোল রোল-টু-প্রিভিলেজ ম্যাপিং

যে ব্যবহারকারীরা অ্যাডমিন কনসোলের মাধ্যমে তাদের বিশেষাধিকারগুলি অ্যাক্সেস করে তাদের জন্য ভূমিকা বরাদ্দ করতে, কিছু অতিরিক্ত বিশেষাধিকার প্রদানের প্রয়োজন হতে পারে। উদাহরণস্বরূপ, অ্যাডমিন কনসোলের মাধ্যমে একজন ব্যবহারকারীকে অন্য ব্যবহারকারী তৈরি করার ক্ষমতা প্রদানের জন্য, শুধুমাত্র 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

কেস উদাহরণ ব্যবহার করুন

আপনি শুরু করার আগে

Google Workspace-এর জন্য প্রমাণীকরণ এবং অনুমোদনের ধাপগুলি সম্পূর্ণ করুন।

ডোমেন সুবিধার একটি তালিকা পান

আপনার ডোমেনে সমর্থিত বিশেষাধিকারগুলির একটি পৃষ্ঠাযুক্ত তালিকা পেতে, privileges.list() পদ্ধতিটি ব্যবহার করুন৷

  • আপনি যদি একজন প্রশাসক হন আপনার নিজের ডোমেনে বিশেষাধিকার পাচ্ছেন, my_customer গ্রাহক আইডি হিসাবে ব্যবহার করুন৷

  • আপনি যদি একজন রিসেলার হন আপনার একজন গ্রাহকের জন্য বিশেষ সুবিধা পাচ্ছেন, তাহলে ব্যবহারকারীর অপারেশন পুনরুদ্ধার করে ফেরত দেওয়া গ্রাহক আইডি ব্যবহার করুন।

অনুরোধ

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 অনুরোধটি ব্যবহার করুন এবং অনুমোদনের অনুরোধগুলিতে বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন।

  • আপনি যদি একজন প্রশাসক হন যে আপনার নিজের ডোমেনে ভূমিকা পাচ্ছেন, my_customer গ্রাহক আইডি হিসাবে ব্যবহার করুন৷

  • আপনি যদি রিসেলার একজন গ্রাহকের জন্য ভূমিকা পেয়ে থাকেন, তাহলে ব্যবহারকারীর অপারেশন পুনরুদ্ধার করার মাধ্যমে আপনি যে গ্রাহক আইডি পেয়েছেন সেটি ব্যবহার করুন।

অনুরোধ

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 গ্রাহক আইডি হিসাবে ব্যবহার করুন৷

  • আপনি যদি একজন রিসেলার হন যে আপনার গ্রাহকদের একজনের জন্য ভূমিকা অ্যাসাইনমেন্ট পাচ্ছেন, তাহলে ব্যবহারকারীর অপারেশন পুনরুদ্ধার করার মাধ্যমে ফেরত দেওয়া গ্রাহক আইডি ব্যবহার করুন।

অনুরোধ

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 গ্রাহক আইডি হিসাবে ব্যবহার করুন৷

  • আপনি যদি একজন রিসেলার হন যে আপনার গ্রাহকদের একজনের জন্য ভূমিকা অ্যাসাইনমেন্ট পাচ্ছেন, তাহলে ব্যবহারকারীর অপারেশন পুনরুদ্ধার করার মাধ্যমে ফেরত দেওয়া গ্রাহক আইডি ব্যবহার করুন।

  • 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 অনুরোধটি ব্যবহার করুন এবং অনুমোদনের অনুরোধে বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন। এই ভূমিকার সাথে মঞ্জুর করা উচিত এমন প্রতিটি বিশেষাধিকারের জন্য একটি privilegeName এবং serviceId যোগ করুন। অনুরোধ এবং প্রতিক্রিয়া বৈশিষ্ট্যের জন্য, API রেফারেন্স দেখুন।

অনুরোধ

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 পদ্ধতিটি ব্যবহার করুন এবং অনুমোদনের অনুরোধে বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন।

অনুরোধ

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 ) অভিনেতার ( assignedTo ) স্কোপে ( scopeType ) নিঃশর্তভাবে প্রয়োগ করা হয়।

একজন ব্যবহারকারীকে একটি ভূমিকা অর্পণ করতে, নিম্নলিখিত POST পদ্ধতিটি ব্যবহার করুন এবং অনুমোদনের অনুরোধে বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন।

ব্যবহারকারীর user_id এর সাথে একটি JSON বডি যোগ করুন, যা আপনি user.get() থেকে পেতে পারেন , বিদ্যমান ভূমিকা নিন এবং condition বর্ণিত roleId । দুটি শর্তের স্ট্রিংগুলিকে নীচের দেখানো মত শব্দার্থে ব্যবহার করতে হবে এবং তারা শুধুমাত্র গ্রুপ এডিটর এবং গ্রুপ রিডার পূর্ব-নির্মিত প্রশাসকের ভূমিকার সাথে কাজ করে। এই শর্তগুলি ক্লাউড আইএএম কন্ডিশন সিনট্যাক্স অনুসরণ করে।

অনুরোধ

শুধুমাত্র নিরাপত্তা গ্রুপ প্রযোজ্য
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'"
}