Identity and Access Management (IAM)-এর মাধ্যমে আপনার রিসোর্সে অ্যাক্সেস ম্যানেজ করুন। IAM আপনাকে নির্দিষ্ট Google Cloud রিসোর্সে আরও গ্র্যানুলার অ্যাক্সেস দিতে দেয় এবং অন্যান্য রিসোর্সে অবাঞ্ছিত অ্যাক্সেস আটকায়। এই পৃষ্ঠায় Cloud Firestore-এর জন্য IAM অনুমতি ও ভূমিকা সম্পর্কে বর্ণনা করা হয়েছে। IAM-এর বিস্তারিত বিবরণের জন্য, IAM ডকুমেন্টেশন পড়ুন।
IAM আপনাকে সবচেয়ে কম প্রিভিলেজ সংক্রান্ত নিরাপত্তা নীতি গ্রহণ করতে দেয়, যাতে আপনি নিজের রিসোর্সে শুধুমাত্র প্রয়োজনীয় অ্যাক্সেস প্রদান করেন।
IAM নীতি সেট করার মাধ্যমে IAM আপনাকে কোন রিসোর্সের জন্য কার (ব্যবহারকারী)
কী (ভূমিকা) অনুমতি আছে তা নিয়ন্ত্রণ করতে দেয়।
IAM নীতি কোনও ব্যবহারকারীকে এক বা একাধিক ভূমিকা প্রদান করে, যার ফলে
ব্যবহারকারী নির্দিষ্ট কিছু অনুমতি পান। যেমন, আপনি কোনও ব্যবহারকারীকে datastore.indexAdmin
ভূমিকা দিতে পারেন, যা ব্যবহারকারীকে ইন্ডেক্স তৈরি, পরিবর্তন, মুছে ফেলা, তালিকাভুক্ত করা বা দেখার অনুমতি দেয়।
অনুমতি ও ভূমিকা
এই বিভাগে Cloud Firestore-এর সমর্থিত অনুমতি ও ভূমিকার সারসংক্ষেপ রয়েছে।
API পদ্ধতির জন্য প্রয়োজনীয় অনুমতি
নিম্নলিখিত সারণীতে প্রতিটি অ্যাকশন পারফর্ম করার জন্য কলারের কাছে যেসব অনুমতি থাকতে হবে তার তালিকা দেওয়া হল:
| পদ্ধতি | প্রয়োজনীয় অনুমতি | |
|---|---|---|
projects.databases.MongoDBCompatible |
||
ListDatabases |
datastore.databases.getMetadata |
|
ListIndexes |
datastore.schemas.list |
|
Find |
datastore.entities.getdatastore.entities.list |
|
Aggregate |
datastore.entities.getdatastore.entities.list |
|
GetMore |
কার্সর তৈরি করা কলের জন্য যে অনুমতি প্রয়োজন ছিল, এক্ষেত্রেও একই অনুমতি প্রয়োজন। |
|
ListCollections |
datastore.entities.list |
|
Count |
datastore.entities.list |
|
Distinct |
datastore.entities.getdatastore.entities.list |
|
CommitTransaction |
datastore.databases.get |
|
AbortTransaction |
datastore.databases.get |
|
EndSessions |
datastore.databases.get |
|
KillCursors |
datastore.databases.get |
|
Insert |
datastore.entities.create |
|
Update |
datastore.entities.getdatastore.entities.listdatastore.entities.updatedatastore.entities.create (শুধু আপসার্টের জন্য) |
|
FindAndModify |
datastore.entities.getdatastore.entities.listdatastore.entities.update (শুধুমাত্র পরিবর্তন বা আপডেট করার জন্য)datastore.entities.create (শুধুমাত্র আপসার্ট করার জন্য)datastore.entities.delete (শুধুমাত্র মুছে ফেলার জন্য) |
|
CreateCollection |
datastore.entities.create |
|
DropCollection |
datastore.schemas.delete |
|
projects.databases.indexes |
||
create |
datastore.schemas.create |
|
delete |
datastore.schemas.delete |
|
get |
datastore.schemas.get |
|
list |
datastore.schemas.list |
|
projects.databases |
||
create |
datastore.databases.create |
|
delete |
datastore.databases.delete |
|
get |
datastore.databases.getMetadata |
|
list |
datastore.databases.list |
|
patch |
datastore.databases.update |
|
| ফিরিয়ে আনুন | datastore.backups.restoreDatabase |
|
clone |
datastore.databases.clone |
ডেটাবেস ক্লোন করুন।
আপনার
আপনি যদি ট্যাগ বাইন্ডিংগুলি তালিকাভুক্ত করে সফলভাবে সেট করা হয়েছে কিনা তা যাচাই করতে চান, তাহলে নিম্নলিখিত অতিরিক্ত অনুমতির প্রয়োজন হবে:
|
projects.locations |
||
get |
datastore.locations.get |
|
list |
datastore.locations.list |
|
projects.databases.backupschedules |
||
get |
datastore.backupSchedules.get |
|
list |
datastore.backupSchedules.list |
|
create |
datastore.backupSchedules.create |
|
update |
datastore.backupSchedules.update |
|
delete |
datastore.backupSchedules.delete |
|
projects.locations.backups |
||
get |
datastore.backups.get |
|
list |
datastore.backups.list |
|
delete |
datastore.backups.delete |
|
projects.databases.usercreds |
||
get |
datastore.userCreds.get |
|
list |
datastore.userCreds.list |
|
create |
datastore.userCreds.create |
|
enable |
datastore.userCreds.update |
|
disable |
datastore.userCreds.update |
|
resetPassword |
datastore.userCreds.update |
|
delete |
datastore.userCreds.delete |
|
আগে থেকে নির্ধারিত ভূমিকা
IAM-এর মাধ্যমে, Cloud Firestore-এ প্রতিটি API পদ্ধতির জন্য প্রয়োজন যে API অনুরোধ করা অ্যাকাউন্টের কাছে রিসোর্স ব্যবহার করার জন্য উপযুক্ত অনুমতি আছে। ব্যবহারকারী, গ্রুপ বা পরিষেবা অ্যাকাউন্টকে ভূমিকা প্রদান করে এমন নীতি সেট করার মাধ্যমে অনুমতি দেওয়া হয়। মালিক, এডিটর ও দর্শক-এর মতো আদিম ভূমিকা ছাড়াও, আপনার প্রোজেক্টের ব্যবহারকারীদের আপনি Cloud Firestore ভূমিকা দিতে পারবেন।
নিম্নলিখিত সারণীতে Cloud Firestore IAM ভূমিকার তালিকা দেওয়া হয়েছে। আপনি কোনও ব্যবহারকারী, গ্রুপ বা পরিষেবা অ্যাকাউন্টকে একাধিক ভূমিকা দিতে পারেন।
| ভূমিকা | অনুমতি | বিবরণ |
|---|---|---|
roles/datastore.owner |
appengine.applications.getdatastore.*resourcemanager.projects.getresourcemanager.projects.list |
Cloud Firestore-এ সম্পূর্ণ অ্যাক্সেস। |
roles/datastore.user |
appengine.applications.getdatastore.databases.getdatastore.databases.getMetadatadatastore.databases.listdatastore.entities.*datastore.schemas.listdatastore.namespaces.getdatastore.namespaces.listdatastore.statistics.getdatastore.statistics.listresourcemanager.projects.getresourcemanager.projects.list |
Cloud Firestore ডেটাবেসে ডেটা পড়া/লেখার অ্যাক্সেস। অ্যাপ্লিকেশন ডেভেলপার ও পরিষেবা অ্যাকাউন্টের জন্য। |
roles/datastore.viewer |
appengine.applications.getdatastore.databases.getdatastore.databases.getMetadatadatastore.databases.listdatastore.entities.getdatastore.entities.listdatastore.schemas.getdatastore.schemas.listdatastore.namespaces.getdatastore.namespaces.listdatastore.statistics.getdatastore.statistics.listresourcemanager.projects.getresourcemanager.projects.list |
সব Cloud Firestore রিসোর্স পড়ার অ্যাক্সেস। |
roles/datastore.indexAdmin |
appengine.applications.getdatastore.databases.getMetadatadatastore.schemas.*datastore.operations.listdatastore.operations.getresourcemanager.projects.getresourcemanager.projects.list |
ইনডেক্স সংজ্ঞা ম্যানেজ করার সম্পূর্ণ অ্যাক্সেস। |
roles/datastore.backupSchedulesViewer |
datastore.backupSchedules.getdatastore.backupSchedules.list |
Cloud Firestore ডেটাবেসে ব্যাক-আপ শিডিউল অ্যাক্সেস করার অনুমতি। |
roles/datastore.backupSchedulesAdmin |
datastore.backupSchedules.getdatastore.backupSchedules.listdatastore.backupSchedules.createdatastore.backupSchedules.updatedatastore.backupSchedules.deletedatastore.databases.listdatastore.databases.getMetadata |
Cloud Firestore ডেটাবেসে ব্যাক-আপ শিডিউলের সম্পূর্ণ অ্যাক্সেস। |
roles/datastore.backupsViewer |
datastore.backups.getdatastore.backups.list |
Cloud Firestore লোকেশনে ব্যাক-আপ সংক্রান্ত তথ্য অ্যাক্সেস করার অনুমতি। |
roles/datastore.backupsAdmin |
datastore.backups.getdatastore.backups.listdatastore.backups.delete |
Cloud Firestore লোকেশনে ব্যাক-আপের সম্পূর্ণ অ্যাক্সেস। |
roles/datastore.restoreAdmin |
datastore.backups.getdatastore.backups.listdatastore.backups.restoreDatabasedatastore.databases.listdatastore.databases.createdatastore.databases.getMetadatadatastore.operations.listdatastore.operations.get |
নতুন ডেটাবেসে Cloud Firestore ব্যাক-আপ ফিরিয়ে আনার ক্ষমতা। এই ভূমিকা নতুন ডেটাবেস তৈরি করার ক্ষমতাও দেয়, ব্যাক-আপ থেকে রিস্টোর করার মাধ্যমে এটি করতে হবে এমন কোনও বাধ্যবাধকতা নেই। |
roles/datastore.cloneAdmin |
datastore.databases.clonedatastore.databases.listdatastore.databases.createdatastore.databases.getMetadatadatastore.operations.listdatastore.operations.get |
নতুন ডেটাবেসে Cloud Firestore ডেটাবেস ক্লোন করার ক্ষমতা। এই ভূমিকা নতুন ডেটাবেস তৈরি করার ক্ষমতাও দেয়, ক্লোন করার মাধ্যমে নয়। |
roles/datastore.statisticsViewer |
resourcemanager.projects.getresourcemanager.projects.listdatastore.databases.getMetadatadatastore.insights.getdatastore.keyVisualizerScans.getdatastore.keyVisualizerScans.listdatastore.statistics.listdatastore.statistics.get |
ইনসাইট, পরিসংখ্যান এবং Key Visualizer স্ক্যান পড়ার অ্যাক্সেস। |
roles/datastore.userCredsViewer |
datastore.userCreds.getdatastore.userCreds.list |
Cloud Firestore ডেটাবেসে ব্যবহারকারীর ক্রেডেনশিয়াল অ্যাক্সেস করার অনুমতি। |
roles/datastore.userCredsAdmin |
datastore.userCreds.getdatastore.userCreds.listdatastore.userCreds.createdatastore.userCreds.updatedatastore.userCreds.deletedatastore.databases.listdatastore.databases.getMetadata |
Cloud Firestore ডেটাবেসে ব্যবহারকারীর ক্রেডেনশিয়ালের সম্পূর্ণ অ্যাক্সেস। |
কাস্টম ভূমিকা
পূর্বনির্ধারিত ভূমিকা আপনার ব্যবসার প্রয়োজনীয়তা পূরণ না করলে, আপনি নিজের কাস্টম ভূমিকা নির্ধারণ করতে পারেন এবং আপনার নির্দিষ্ট করা অনুমতি দিতে পারেন:
ট্যাগ তৈরি ও ম্যানেজ করার জন্য প্রয়োজনীয় ভূমিকা
তৈরি বা রিস্টোর করার অ্যাকশনে কোনও ট্যাগ দেখানো হলে, কিছু ভূমিকা প্রয়োজন হয়। ডেটাবেস রিসোর্সের সাথে ট্যাগ কী-ভ্যালু পেয়ার অ্যাসোসিয়েট করার আগে সেগুলি তৈরি করার ব্যাপারে আরও জানতে ট্যাগ তৈরি ও ম্যানেজ করা দেখুন।
নিচে তালিকাভুক্ত অনুমতিগুলি প্রয়োজন।
ট্যাগ দেখুন
datastore.databases.listTagBindingsdatastore.databases.listEffectiveTags
রিসোর্সে ট্যাগ ম্যানেজ করা
আপনি যে ডেটাবেস রিসোর্সে ট্যাগ ভ্যালু অ্যাটাচ করছেন সেটির জন্য নিম্নলিখিত অনুমতি প্রয়োজন।
datastore.databases.createTagBinding
অনুমতি
Cloud Firestore যেসব অনুমতি সমর্থন করে তার তালিকা নিচে দেওয়া হল।
| ডেটাবেসের অনুমতির নাম | বিবরণ | |
|---|---|---|
datastore.databases.get |
ট্রানজ্যাকশন শুরু বা রোলব্যাক করুন। | |
datastore.databases.getMetadata |
ডেটাবেস থেকে মেটাডেটা পড়ুন। | |
datastore.databases.list |
প্রোজেক্টে ডেটাবেসের তালিকা তৈরি করুন। | |
datastore.databases.create |
ডেটাবেস তৈরি করুন। | |
datastore.databases.update |
ডেটাবেস আপডেট করুন। | |
datastore.databases.delete |
ডেটাবেস মুছে দেওয়া। | |
datastore.databases.clone |
ডেটাবেস ক্লোন করুন। | |
datastore.databases.createTagBinding |
ডেটাবেসের জন্য ট্যাগ বাইন্ডিং তৈরি করুন। | |
datastore.databases.deleteTagBinding |
কোনও ডেটাবেসের জন্য ট্যাগ বাইন্ডিং মুছে দিন। | |
datastore.databases.listTagBindings |
কোনও ডেটাবেসের জন্য সব ট্যাগ বাইন্ডিংয়ের তালিকা তৈরি করুন। | |
datastore.databases.listEffectiveTagBindings |
কোনও ডেটাবেসের জন্য কার্যকর ট্যাগ বাইন্ডিংয়ের তালিকা তৈরি করুন। | |
| এন্টিটির অনুমতির নাম | বিবরণ | |
datastore.entities.create |
ডকুমেন্ট তৈরি করুন। | |
datastore.entities.delete |
ডকুমেন্ট মুছে দেওয়া। | |
datastore.entities.get |
ডকুমেন্ট পড়া। | |
datastore.entities.list |
প্রোজেক্টে থাকা ডকুমেন্টের নামের তালিকা। (ডকুমেন্ট ডেটা অ্যাক্সেস করতে datastore.entities.get প্রয়োজন।) |
|
datastore.entities.update |
ডকুমেন্ট আপডেট করুন। | |
| ইনডেক্স অনুমতির নাম | বিবরণ | |
datastore.schemas.create |
একটি ইন্ডেক্স তৈরি করুন। | |
datastore.schemas.delete |
ইন্ডেক্স মুছে দেওয়া। | |
datastore.schemas.get |
ইনডেক্স থেকে মেটাডেটা পড়ুন। | |
datastore.schemas.list |
প্রোজেক্টে ইন্ডেক্সের তালিকা তৈরি করুন। | |
datastore.schemas.update |
ইনডেক্স আপডেট করুন। | |
| অপারেশন সংক্রান্ত অনুমতির নাম | বিবরণ | |
datastore.operations.cancel |
দীর্ঘ সময় ধরে চলা অপারেশন বাতিল করুন। | |
datastore.operations.delete |
দীর্ঘ সময় ধরে চলা অপারেশন মুছে দিন। | |
datastore.operations.get |
দীর্ঘ সময় ধরে চলা অপারেশনের লেটেস্ট স্ট্যাটাস পায়। | |
datastore.operations.list |
দীর্ঘ সময় ধরে চলা অপারেশনের তালিকা। | |
| প্রোজেক্টের অনুমতির নাম | বিবরণ | |
resourcemanager.projects.get |
প্রোজেক্টে রিসোর্স ব্রাউজ করুন। | |
resourcemanager.projects.list |
মালিকানাধীন প্রোজেক্টের তালিকা। | |
| লোকেশন সংক্রান্ত অনুমতির নাম | বিবরণ | |
datastore.locations.get |
ডেটাবেস লোকেশন সম্পর্কে বিবরণ পান। নতুন ডেটাবেস তৈরি করতে হবে। | |
datastore.locations.list |
উপলভ্য ডেটাবেস লোকেশনের তালিকা। নতুন ডেটাবেস তৈরি করতে হবে। | |
| Key Visualizer-এর অনুমতির নাম | বিবরণ | |
datastore.keyVisualizerScans.get |
Key Visualizer স্ক্যান সম্পর্কে বিবরণ পান। | |
datastore.keyVisualizerScans.list |
উপলভ্য Key Visualizer স্ক্যানের তালিকা তৈরি করুন। | |
| ব্যাক-আপ শিডিউল সংক্রান্ত অনুমতির নাম | বিবরণ | |
datastore.backupSchedules.get |
ব্যাক-আপ শিডিউল সম্পর্কে বিবরণ পান। | |
datastore.backupSchedules.list |
উপলভ্য ব্যাক-আপ শিডিউলের তালিকা। | |
datastore.backupSchedules.create |
ব্যাক-আপ শিডিউল তৈরি করুন। | |
datastore.backupSchedules.update |
ব্যাক-আপের শিডিউল আপডেট করুন। | |
datastore.backupSchedules.delete |
ব্যাক-আপ শিডিউল মুছে দেওয়া। | |
| ব্যাক-আপ অনুমতির নাম | বিবরণ | |
datastore.backups.get |
ব্যাক-আপ সম্পর্কে বিবরণ পান। | |
datastore.backups.list |
উপলভ্য ব্যাক-আপের তালিকা। | |
datastore.backups.delete |
ব্যাক-আপ মুছে দেওয়া। | |
datastore.backups.restoreDatabase |
ব্যাক-আপ থেকে ডেটাবেস ফিরিয়ে আনুন। | |
| ইনসাইট সংক্রান্ত অনুমতির নাম | বিবরণ | |
datastore.insights.get |
রিসোর্সের ইনসাইট পাওয়া | |
| ব্যবহারকারীর ক্রেডেনশিয়াল সংক্রান্ত অনুমতির নাম | বিবরণ | |
datastore.userCreds.get |
ব্যবহারকারীর ক্রেডেনশিয়াল সম্পর্কে বিবরণ পান। | |
datastore.userCreds.list |
উপলভ্য ব্যবহারকারীর ক্রেডেনশিয়ালের তালিকা। | |
datastore.userCreds.create |
ব্যবহারকারীর ক্রেডেনশিয়াল তৈরি করুন। | |
datastore.userCreds.update |
ব্যবহারকারীর ক্রেডেনশিয়াল চালু বা বন্ধ করা অথবা ব্যবহারকারীর পাসওয়ার্ড রিসেট করা। | |
datastore.userCreds.delete |
ব্যবহারকারীর ক্রেডেনশিয়াল মুছে দিন। |
ভূমিকা পরিবর্তন সংক্রান্ত লেটেন্সি
Cloud Firestore ৫ মিনিটের জন্য IAM অনুমতি ক্যাশে করে, তাই ভূমিকা পরিবর্তন কার্যকর হতে ৫ মিনিট পর্যন্ত সময় লাগে।
Cloud Firestore IAM ম্যানেজ করা
Google Cloud কনসোল, IAM API বা
gcloud কমান্ড-লাইন টুল ব্যবহার করে
আপনি IAM নীতি পেতে ও সেট করতে পারবেন। আরও জানতে
প্রোজেক্ট মেম্বারদের অ্যাক্সেস দেওয়া, পরিবর্তন করা ও তুলে নেওয়া
দেখুন।
শর্তসাপেক্ষ অ্যাক্সেসের অনুমতি কনফিগার করুন
শর্তাধীন অ্যাক্সেস কন্ট্রোল নির্ধারণ ও প্রয়োগ করতে আপনি IAM শর্তাবলী ব্যবহার করতে পারবেন।
যেমন, নিম্নলিখিত শর্তটি একটি নির্দিষ্ট তারিখ পর্যন্ত কোনও প্রিন্সিপালকে datastore.user
ভূমিকা অ্যাসাইন করে:
{
"role": "roles/datastore.user",
"members": [
"user:travis@example.com"
],
"condition": {
"title": "Expires_December_1_2023",
"description": "Expires on December 1, 2023",
"expression":
"request.time < timestamp('2023-12-01T00:00:00.000Z')"
}
}
সাময়িক অ্যাক্সেসের জন্য IAM শর্ত কীভাবে নির্ধারণ করতে হয় তা জানতে, সাময়িক অ্যাক্সেস কনফিগার করুন দেখুন।
এক বা একাধিক ডেটাবেস অ্যাক্সেস করার জন্য IAM শর্তাবলী কীভাবে কনফিগার করতে হয় তা জানতে, ডেটাবেস অ্যাক্সেস শর্তাবলী কনফিগার করুন দেখুন।
এর পরে কী করতে হবে
- IAM সম্পর্কে আরও জানুন।
- IAM ভূমিকা মঞ্জুর করুন।
- যাচাইকরণ সম্পর্কে জানুন।