Role-based Access Control (RBAC) হল Elasticsearch-এর একটি নিরাপত্তা মডেল, যা ইউজারদের অ্যাক্সেস এবং প্রিভিলেজ কন্ট্রোল করতে ব্যবহৃত হয়। এটি নিশ্চিত করে যে প্রতিটি ইউজার বা সার্ভিস শুধুমাত্র তাদের নির্দিষ্ট রোল বা দায়িত্ব অনুযায়ী প্রয়োজনীয় ডেটা বা রিসোর্স অ্যাক্সেস করতে পারে। Elasticsearch-এর X-Pack সিকিউরিটি ফিচার RBAC সাপোর্ট করে, যা ইউজার ম্যানেজমেন্ট, ইনডেক্স লেভেল, ক্লাস্টার লেভেল, এবং ডকুমেন্ট বা ফিল্ড লেভেলে অ্যাক্সেস নিয়ন্ত্রণ করা যায়।
Elasticsearch-এর RBAC মডেল কয়েকটি গুরুত্বপূর্ণ উপাদানের উপর ভিত্তি করে তৈরি:
read
, write
, manage
, ইত্যাদি নির্ধারণ করে।read
, write
, index
, delete
, বা manage
(ক্লাস্টার ম্যানেজমেন্ট)।Elasticsearch-এ নতুন রোল তৈরি করতে নিচের API ব্যবহার করা হয়:
PUT /_security/role/sales_role
{
"cluster": ["monitor"],
"indices": [
{
"names": [ "sales-data-*"],
"privileges": ["read", "write"]
}
],
"applications": [],
"run_as": [],
"metadata": {},
"transient_metadata": {
"enabled": true
}
}
monitor
(ক্লাস্টার মনিটরিং) বা manage
(ক্লাস্টার ম্যানেজমেন্ট)।read
, write
) নির্ধারণ করা হয়। এটি নির্দিষ্ট ইনডেক্স বা ইনডেক্স প্যাটার্ন অনুযায়ী কনফিগার করা যায়।একটি ইউজার তৈরি করতে এবং একটি রোল অ্যাসাইন করতে নিচের API ব্যবহার করা হয়:
POST /_security/user/john_doe
{
"password": "password123",
"roles": ["sales_role"],
"full_name": "John Doe",
"email": "john.doe@example.com"
}
"sales_role"
) সেট করা হলো।API Key তৈরি করে নির্দিষ্ট প্রিভিলেজ দিয়ে সার্ভিস অ্যাক্সেস প্রদান করা যায়:
POST /_security/api_key
{
"name": "service-api-key",
"role_descriptors": {
"service_role": {
"cluster": ["monitor"],
"index": [
{
"names": ["log-*"],
"privileges": ["read", "write"]
}
]
}
}
}
RBAC সিস্টেমে পারমিশন বিভিন্ন লেভেলে কনফিগার করা যায়:
manage
(ক্লাস্টার পরিচালনা), monitor
(ক্লাস্টার মনিটরিং)।read
, write
, index
, বা delete
।{
"indices": [
{
"names": [ "customer-index-*" ],
"privileges": [ "read" ]
}
]
}
{
"indices": [
{
"names": ["finance-index"],
"privileges": ["read"],
"query": "{\"term\": {\"department\": \"finance\"}}"
}
]
}
read
প্রিভিলেজ অ্যাসাইন করুন যদি ইউজারের রাইট বা ম্যানেজ করার প্রয়োজন না থাকে।Elasticsearch-এর RBAC সিস্টেম একটি শক্তিশালী এবং কার্যকর উপায়, যা ইউজার এবং রিসোর্স অ্যাক্সেস সুরক্ষিত রাখতে সহায়ক। সঠিকভাবে RBAC কনফিগার করে আপনি সিস্টেমের ডেটা এবং রিসোর্সের উপর যথাযথ প্রিভিলেজ প্রদান করতে পারেন, যা সিকিউরিটি বাড়াতে এবং ঝুঁকি কমাতে সহায়ক।
আরও দেখুন...