দ্রুত ক্লাউড প্রযুক্তির অগ্রগতির যুগে, যেখানে পরিষেবা হিসাবে পরিকাঠামো (IaaS) এবং পরিষেবা হিসাবে প্ল্যাটফর্ম (PaaS) অসংখ্য প্রকল্পের অবিচ্ছেদ্য অংশ, সেখানে বিভিন্ন ক্লাউড পরিষেবাগুলির বিরামহীন একীকরণের চাহিদা অনস্বীকার্য৷ মাইক্রোসফ্ট, এই ল্যান্ডস্কেপের একটি প্রধান খেলোয়াড়, ব্যবহারকারী-বান্ধব মাইক্রোসফ্ট এন্ট্রা আইডি পরিষেবা তৈরিতে যথেষ্ট সময় বিনিয়োগ করেছে। যাইহোক, বিক্রেতাদের কাছ থেকে সতর্কতার সাথে নির্দেশনা থাকা সত্ত্বেও, স্ল্যাক, সেলসফোর্স বা ডেটাডগের মতো প্ল্যাটফর্মগুলির সাথে ইন্টিগ্রেশন কনফিগার করার সময় বিশেষজ্ঞরা প্রায়শই সমস্যার সম্মুখীন হন। ডকুমেন্টেশন নির্দিষ্ট প্রশ্নের উত্তর দিতে কম পড়ে।
সোশ্যাল ডিসকভারি গ্রুপ টিমও এই চ্যালেঞ্জগুলির মুখোমুখি হয়েছিল এবং এই নিবন্ধে, আমরা কীভাবে নেভিগেট করতে এবং সমাধান করতে পারি সে সম্পর্কে অন্তর্দৃষ্টি অফার করব৷
50+ ডেটিং প্ল্যাটফর্মের পোর্টফোলিওতে, সোশ্যাল ডিসকভারি গ্রুপ তাদের নিরাপত্তা এবং নির্ভরযোগ্যতার গ্যারান্টি দিতে বিভিন্ন প্রযুক্তি এবং ক্লাউড পরিষেবা ব্যবহার করে। বিভিন্ন ক্লাউডের মধ্যে পিয়ার-টু-পিয়ার সংযোগ সহ বিভিন্ন সিস্টেমকে একীভূত এবং কনফিগার করার ক্ষেত্রে আমাদের ব্যাপক অভিজ্ঞতা রয়েছে।
মাইক্রোসফ্ট এন্ট্রা আইডি হ'ল পরিচয় এবং অ্যাক্সেস পরিচালনার জন্য একটি ক্লাউড সমাধান, ক্লাউডে কাজ করা একটি ডিরেক্টরি এবং প্রমাণীকরণ পরিষেবা হিসাবে কাজ করে৷ মাইক্রোসফ্ট এন্ট্রা আইডি বিভিন্ন Microsoft এবং নন-মাইক্রোসফ্ট পরিষেবাগুলির জন্য প্রমাণীকরণ এবং অনুমোদন পরিষেবা সরবরাহ করে। এই নিবন্ধের মধ্যে, আমরা নিম্নলিখিত ক্লাউড সিস্টেমগুলির সংহতকরণটি অন্বেষণ করব: Slack, MongoAtlas, ElasticCloud, Salesforce, এবং Datadog.
একটি সুনির্দিষ্ট গাইডের অনুপস্থিতির কারণে, আমরা আমাদের নিজস্ব তৈরি করার সিদ্ধান্ত নিয়েছি, পথে উদ্ভূত সমস্ত মাথাব্যথার বিবরণ দিয়ে। সুতরাং, আসুন Azure-এর "এন্টারপ্রাইজ অ্যাপ্লিকেশন" বিভাগে নেভিগেট করি।
একটি নতুন কর্পোরেট অ্যাপ্লিকেশন তৈরি করা প্রয়োজন (এটি কয়েকটি ক্লিকে করা যেতে পারে)। এরপরে, আমরা যে অ্যাপ্লিকেশনটি তৈরি করেছি তা অ্যাক্সেস করুন এবং একক সাইন-অন - SAML কনফিগার করুন৷ উপরে থেকে নীচে পরিবর্তন করুন:
একটি "সদস্য" ভূমিকা তৈরি করুন (বা অন্য নাম চয়ন করুন)। এরপর, Microsoft এন্ট্রা আইডিতে একটি পরীক্ষামূলক ব্যবহারকারী তৈরি করুন এবং তাদের আমাদের অ্যাপ্লিকেশনে যোগ করুন। তারপরে, স্ল্যাকের অ্যাডমিন সেন্টারে যান। ধাপগুলি অনুসরণ করুন: স্ল্যাক অ্যাডমিন - প্রমাণীকরণ - SAML কনফিগারেশন - কনফিগার করুন
পরবর্তী ধাপ হল SAML কনফিগার করা। আমরা "প্রদর্শন নাম" সেটিং মনোযোগ দিতে সুপারিশ. আরও, সেটিংসে, "লগইনে প্রোফাইল আপডেট করুন", ইমেল ঠিকানা এবং ডিসপ্লে নাম পরিবর্তনের অনুমতি না দিন।
লগইন বোতামে পাঠ্যটি কাস্টমাইজ করার একটি বিকল্পও রয়েছে এবং ব্যবহারকারীদের SSO ছাড়া অন্য কোনো পদ্ধতি ব্যবহার করে লগ ইন করতে নিষেধ করে। এর পরে, আপনি আপনার Microsoft অ্যাকাউন্ট ব্যবহার করে স্ল্যাকে সাইন ইন করতে সক্ষম হবেন। যদি কোনো অতিরিক্ত ক্ষেত্র বা সেটিংসের প্রয়োজন হয়, তবে এটি Azure AD বিধানের মাধ্যমে করা যেতে পারে।
একটি নতুন বৈশিষ্ট্য যুক্ত করতে, ব্যবহারকারীর বৈশিষ্ট্যগুলিতে যান এবং নতুন ম্যাপিং যুক্ত করুন নির্বাচন করুন। পছন্দসই উত্স বৈশিষ্ট্যটি চয়ন করুন যা আপনি স্ল্যাকে প্রদর্শিত হতে চান এবং এটিকে সংশ্লিষ্ট স্ল্যাক বৈশিষ্ট্যের সাথে সংযুক্ত করুন৷
প্রয়োজনীয় বৈশিষ্ট্যগুলি যোগ করার পরে এবং সেটিংস সংরক্ষণ করার পরে, কার্যকারিতা পরীক্ষা করার জন্য চাহিদার বিধানে এগিয়ে যান। একটি ইতিবাচক ফলাফলের উপর, আপনি নিম্নলিখিত পাবেন:
এর পরে, আপনাকে স্ল্যাকে যেতে হবে এবং সম্পূর্ণ ব্যবহারকারীর প্রোফাইলে কোন বৈশিষ্ট্যগুলি প্রদর্শন করতে হবে এবং কোথায় সেগুলি পুনরুদ্ধার করতে হবে তা নির্দিষ্ট করতে হবে৷ প্রোফাইলে যান এবং প্রদর্শিত তথ্য নির্বাচন করুন এবং এটি কোথা থেকে টেনে আনা হবে। এই ক্ষেত্রে, SCIM Azure AD এর সাথে মিলে যায়।
এরপরে, আমরা সিমলেস ইন্টিগ্রেশনের অভিজ্ঞতা নিতে অ্যাক্টিভ ডিরেক্টরি থেকে স্ল্যাকে প্রয়োজনীয় ব্যবহারকারীদের যোগ করার পরামর্শ দিই। আমরা ব্যবহারকারীদের অপসারণ করার সময় সম্মুখীন হওয়া একটি সমস্যার দিকেও মনোযোগ দিতে চাই: যদি কোনও ব্যবহারকারীকে স্ল্যাক থেকে ম্যানুয়ালি মুছে ফেলা হয় (স্ল্যাক অ্যাডমিন সেন্টারের মাধ্যমে), একটি ত্রুটি বজায় থাকবে, এটি নির্দেশ করে যে অপর্যাপ্ত অনুমতির কারণে ব্যবহারকারীকে স্ল্যাকে স্থানান্তর করা যাবে না। এটি ঘটে কারণ এন্ট্রা আইডি ব্যাপ্তির মধ্যে থাকা ব্যবহারকারীদের সম্পর্কে তথ্য ধরে রাখে এবং তাদের একটি অনন্য আইডি বরাদ্দ করে। স্ল্যাকে একজন ব্যবহারকারীকে মুছে ফেলা এবং পুনরায় যোগ করাকে এন্ট্রা আইডি দ্বারা একজন নতুন ব্যবহারকারী হিসাবে বিবেচনা করা হয়, যা আপডেটের সময় অনুমতি সমস্যাগুলির দিকে পরিচালিত করে।
এখানে ডকুমেন্টেশন চেক করুন.
মঙ্গোআটলাসের জন্য, প্রক্রিয়াটি অনুরূপ পথ অনুসরণ করে। আপনাকে একটি নতুন কর্পোরেট অ্যাপ্লিকেশন তৈরি করতে হবে; আরামের জন্য, সার্চ ফিল্ডে "MongoDB Atlas — SSO" লিখুন। আরো বিস্তারিত নির্দেশাবলী এখানে পাওয়া যাবে.
এরপরে, একক সাইন-অন সেটিংসে যান, যেখানে আপনাকে নিম্নলিখিতগুলি ইনপুট করতে হবে:
"শনাক্তকারী" পাঠ্য ক্ষেত্রে, নিম্নলিখিত টেমপ্লেটটি ব্যবহার করে URL লিখুন: https://www.okta.com/saml2/service-provider/<Customer_Unique>
"প্রতিক্রিয়া URL" পাঠ্য ক্ষেত্রে, টেমপ্লেট ব্যবহার করে URL লিখুন:
https://auth.mongodb.com/sso/saml2/<Customer_Unique>
"লগইন URL" পাঠ্য ক্ষেত্রে, টেমপ্লেট ব্যবহার করে URL লিখুন: https://cloud.mongodb.com/sso/<Customer_Unique>
আমরা অ্যাট্রিবিউট বিভাগে মনোযোগ দেওয়ার এবং নীচের স্ক্রিনশটে দেখানো হিসাবে এটি কনফিগার করার পরামর্শ দিই (এটি "মেম্বারঅফ" যোগ করা অপরিহার্য ছিল)।
এরপরে, "SAML এর সাথে একক সাইন-অন সেট আপ করুন" পৃষ্ঠায়, "SAML সাইনিং সার্টিফিকেট" বিভাগে যান এবং ফেডারেশনের জন্য XML মেটাডেটা খুঁজুন৷ শংসাপত্র ডাউনলোড করতে "ডাউনলোড" নির্বাচন করুন এবং স্থানীয়ভাবে এটি সংরক্ষণ করুন (ফেডারেশন মেটাডেটা এক্সএমএল)। মঙ্গোডিবি অ্যাটলাসে পরে আমাদের এটির প্রয়োজন হবে।
"মঙ্গোডিবি অ্যাটলাস - এসএসও সেট আপ করা" বিভাগে, সংশ্লিষ্ট URLগুলি অনুলিপি করুন৷ এরপরে, MongoDB Atlas -> Organization -> Settings -> Federated Authentication Settings- এ নেভিগেট করুন।
Atlas-এ Microsoft Entra ID শংসাপত্র প্রদানকারী যোগ করে শুরু করুন। Microsoft পোর্টাল থেকে পূর্ববর্তী ধাপে উল্লিখিত সংশ্লিষ্ট URLগুলি ইনপুট করুন (ইস্যুয়ার ইউআরআই, লগইন ইউআরএল, একক সাইন-অন ইউআরএল) , পরিচয় প্রদানকারীর স্বাক্ষর শংসাপত্র আপলোড করুন এবং নীচের স্ক্রিনশটে দেখানো হিসাবে অবশিষ্ট সেটিংস কনফিগার করুন ।
"পরবর্তী" ক্লিক করুন এবং স্থানীয়ভাবে মেটাডেটা ফাইলটি সংরক্ষণ করুন, কারণ আপনাকে এটিকে সিঙ্গেল সাইন-অন কনফিগারেশন পৃষ্ঠায় Azure-এ আপলোড করতে হবে।
এর পরে, ডোমেন যোগ করুন, ম্যাপ করুন এবং যাচাই করুন, উদাহরণস্বরূপ, MongoDB Atlas-এ তৈরি সংশ্লিষ্ট TXT রেকর্ডগুলি ব্যবহার করে৷ এর পরে, আপনার ডোমেনকে শংসাপত্র প্রদানকারীর সাথে লিঙ্ক করুন এবং সবচেয়ে আকর্ষণীয় অংশে যান: ভূমিকা কনফিগারেশন৷
আমরা উদাহরণ হিসাবে নিম্নলিখিত ভূমিকাগুলি তৈরি করেছি, প্রতিটি প্রকল্পের জন্য নির্দিষ্ট অনুমতি সহ। তারপর, আপনাকে এই ভূমিকাগুলিকে Azure ভূমিকাতে ম্যাপ করতে হবে। আপনার অ্যাপ্লিকেশানের জন্য "অ্যাপ রোলস"-এ যান, মঙ্গোআটলাসে এই ভূমিকাগুলির জন্য আপনি যে নামগুলি বরাদ্দ করেছেন তার সাথে হুবহু মেলে মান সহ ভূমিকা তৈরি করুন এবং যোগ করুন৷
এরপরে, Microsoft Entra ID Enterprise অ্যাপ্লিকেশনে ব্যবহারকারীদের যোগ করুন এবং তাদের উপযুক্ত ভূমিকা অর্পণ করুন। MongoDB Atlas-এর ফেডারেশন ম্যানেজমেন্ট বিভাগে "Azure SSO দিয়ে সাইন ইন করুন" সক্রিয় করুন এবং কনফিগার করা সেটিংসের সঠিক কার্যকারিতা যাচাই করুন।
আরো বিস্তারিত নির্দেশাবলীর জন্য এখানে ডকুমেন্টেশন পড়ুন.
ইলাস্টিক ক্লাউডের সাথে একীকরণের দিকে এগিয়ে যাওয়া যাক। এন্টারপ্রাইজ অ্যাপ্লিকেশন এন্ট্রা আইডিতে একটি অ্যাপ্লিকেশন তৈরি করার জন্য মৌলিক পদক্ষেপগুলি আগেরগুলির মতোই। সেখানে, আপনি আইডেন্টিফায়ার বা লগআউট URL কোথায় পাবেন সে সম্পর্কে তথ্য পেতে পারেন৷ যাইহোক, আমরা বৈশিষ্ট্যগুলির সাথে একটি সমস্যার সম্মুখীন হয়েছি, তাই আমরা আমাদের কাজের কনফিগারেশনের একটি স্ক্রিনশট প্রদান করব৷
আমরা দুটি ভূমিকা তৈরি করেছি - একটি পাঠক এবং একটি সুপার ব্যবহারকারী৷
এখানে, আপনি আপনার প্রয়োজন হিসাবে অনেক ভূমিকা তৈরি করতে পারেন. ইলাস্টিকসার্চে ভূমিকা সেটিংস রোল ম্যাপিং-এ কনফিগার করা হয়েছে এবং নিচের মত দেখায়:
এখন আকর্ষণীয় অংশ আসে। দুটি জিনিস করা দরকার: কিবানা এবং ইলাস্টিকসার্চের জন্য Azure SSO কনফিগারেশন যোগ করুন। এটি অর্জন করতে, এই পদক্ষেপগুলি অনুসরণ করুন:
elasticsearch.yml কনফিগারেশন আপডেট করতে আপনার Elasticsearch ক্লাউড স্থাপনার সম্পাদনা বিভাগে নেভিগেট করুন। নিম্নলিখিত লাইন যোগ করুন:
“ xpack:
security:
authc:
realms:
saml:
saml-azure-ad:
order: 2
attributes.principal: "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name"
attributes.groups: "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/role"
attributes.name: "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname"
attributes.mail: "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"
idp.metadata.path: "APP Federation metadata URL"
idp.entity_id: "Azure Entra ID Identifier"
sp.entity_id: "Kibana endpoint"
sp.acs: "Kibana endpoint/api/security/v1/saml"
sp.logout: "Kibana endpoint/logout" “
আপনার কনফিগারেশনের সাথে মেলে লাল রঙে হাইলাইট করা মানগুলি যোগ এবং সংশোধন করার পরে, "সংরক্ষণ করুন" এ ক্লিক করুন। ইলাস্টিক ক্লাউড সমস্ত পরিবর্তন যাচাই করবে এবং ক্লাস্টার আপডেট শুরু করবে। এই প্রক্রিয়াটি কয়েক মিনিট সময় নিতে পারে।
“ xpack.security.authc.providers:
saml.saml1:
order: 0
realm: saml-azure-ad
description: "Log in with Azure Entra ID"
basic.basic1:
order: 1 ”
পূর্ববর্তী দুটি ধাপ সম্পূর্ণ করার পর, আপনার কিবানা লগইন পৃষ্ঠায় আরেকটি লগইন বিকল্প পাওয়া উচিত। এরপরে, মাইক্রোসফ্ট এন্ট্রা আইডি এন্টারপ্রাইজ অ্যাপ্লিকেশানে অ্যাপ্লিকেশনটিতে ব্যবহারকারীদের যুক্ত করে এবং তাদের প্রয়োজনীয় ভূমিকা অর্পণ করে এগিয়ে যান।
আরো তথ্যের জন্য এখানে ডকুমেন্টেশন পড়ুন.
Salesforce এর সাথে ইন্টিগ্রেশন আগেরগুলোর তুলনায় একটু বেশি জটিল ছিল। প্রাথমিক পদক্ষেপগুলি একই রকম, তবে প্রভিশনিং বিভাগে মনোযোগ দেওয়া উচিত। প্রশাসক শংসাপত্রগুলি নির্দিষ্ট করার বিষয়ে সূক্ষ্মতা রয়েছে যার অধীনে অ্যাকাউন্ট সিঙ্ক্রোনাইজেশন ঘটবে এবং অ্যাট্রিবিউট ম্যাপিং সক্ষম করা প্রয়োজন৷
এখানে স্ক্রিনশটে আমাদের কনফিগারেশন সেটিংসের একটি উদাহরণ রয়েছে। আমরা বৈশিষ্ট্যগুলির সাথে কোনও উল্লেখযোগ্য সমস্যার সম্মুখীন হইনি, তবে আমরা যেগুলি ব্যবহার করেছি তার একটি স্ক্রিনশটও প্রদান করব৷
সেলসফোর্সেই, কোনো বিশেষ সূক্ষ্মতা ছিল না, এবং আমরা এই নির্দেশিকায় বর্ণিত নিম্নলিখিত পদক্ষেপগুলি নিয়ে এগিয়েছিলাম৷
Datadog-এর সাথে একীকরণের সময়, আমরা কিছু সমস্যার সম্মুখীনও হয়েছি। প্রাথমিক ডকুমেন্টেশন যা আমাদের গাইড করেছে এখানে পাওয়া যাবে। সমস্যা সমাধানের সূক্ষ্মতার জন্য, আমরা এই নির্দেশিকাটি উল্লেখ করেছি।
সবকিছু মসৃণভাবে শুরু হয়েছিল, এবং প্রাথমিকভাবে, মনে হয়েছিল যে কোনও সমস্যা হবে না। যথারীতি, আমরা মাইক্রোসফট এন্ট্রা আইডিতে একটি নতুন এন্টারপ্রাইজ অ্যাপ্লিকেশন তৈরি করেছি।
"SAML এর সাথে একক সাইন-অন সেট আপ করুন" বিভাগে, আপনার ডেটাডগ অ্যাকাউন্টের জন্য আপনি যে অবস্থানটি নির্বাচন করেছেন তাতে মনোযোগ দিন৷ আমাদের ক্ষেত্রে, এটি ছিল ইউরোপ অঞ্চল।
আগেই উল্লেখ করা হয়েছে, MongoAtlasDB-এর জন্য, আমরা ভূমিকা ম্যাপিংয়ের জন্য অতিরিক্ত বৈশিষ্ট্য "memberOf" যোগ করি।
সমস্ত সেটিংস সংরক্ষণ করুন এবং ফেডারেশন মেটাডেটা এক্সএমএল ডাউনলোড করুন। Datadog-এর SAML সেটিংসে এই ফাইলটি আপলোড করুন। এখানে রেফারেন্স জন্য একটি সুবিধাজনক লিঙ্ক আছে. Datadog SAML সেটিংস (যদি আপনার অবস্থান ভিন্ন হয় তবে উপযুক্ত ডোমেন জোন দিয়ে "EU" প্রতিস্থাপন করুন)। এটি নীচের স্ক্রিনশটের মতো হওয়া উচিত।
প্রতিষ্ঠানের লগইন পদ্ধতি সেটিংসে, শুধুমাত্র প্রয়োজনীয় জিনিসগুলি রাখুন (আমার ক্ষেত্রে, আমি পাসওয়ার্ড লগইন এবং Google প্রমাণীকরণ অক্ষম করেছি)৷ মাইক্রোসফ্ট এন্ট্রা আইডির জন্য আবেদন নিবন্ধনে Azure-এ ভূমিকা যুক্ত করুন।
এখানে সবচেয়ে আকর্ষণীয় অংশ আসে. SAML গ্রুপ ম্যাপিং -> Datadog-এ ভূমিকা ম্যাপিং-এ নেভিগেট করুন এবং কী, মান এবং ভূমিকা যোগ করুন। এটা সোজা মনে হয়. নীচের স্ক্রিনশট দেখুন.
কিন্তু এটি কাজ করে না, এবং এটি "এই ব্যবহারকারীর জন্য কোন AuthNMappings নেই" ত্রুটি প্রদান করে।
বেশ কিছুক্ষণের জন্য, আমরা সমস্ত ডকুমেন্টেশন, লগ এবং সমস্যা সমাধানের পৃষ্ঠাগুলি পর্যালোচনা করে, আমরা কী ভুল করছি তা বোঝার চেষ্টা করেছি। দুর্ভাগ্যবশত, কোথাও এর কোন উল্লেখ ছিল না। শেষ পর্যন্ত, সমাধানটি সহজ: নীচের স্ক্রিনশটে দেখানো কনফিগারেশন অনুসরণ করুন।
KEY ক্ষেত্রে, স্ট্রিংটি লিখুন: http://schemas.microsoft.com/ws/2008/06/identity/claims/role
এটি করার পরে, সবকিছু সফলভাবে কাজ শুরু করে।
"এটি সিস্টেমগুলির একটি ছোট অংশ যা আমরা মাইক্রোসফ্ট এন্ট্রা আইডির সাথে সংহত করেছি৷ আমরা আশা করি যে এখানে শেয়ার করা অন্তর্দৃষ্টিগুলি একটি সহায়ক সংস্থান হিসাবে কাজ করবে, আপনার ইন্টিগ্রেশন প্রক্রিয়াগুলিকে সুগম করবে এবং মূল্যবান সময় সাশ্রয় করবে৷ উপসংহারে, মাইক্রোসফ্ট ব্যবহারের নিম্নলিখিত সুবিধাগুলি এন্ট্রা আইডি হাইলাইট করা যেতে পারে: একক সাইন-অন, যার জন্য একাধিকবার পাসওয়ার্ড লিখতে হবে না; কোনো অতিরিক্ত উপাদানের প্রয়োজন নেই; কনফিগারেশন এবং প্রশাসনের সহজলভ্যতা; গোষ্ঠী নীতি এবং গোষ্ঠী; ডিভাইস নিবন্ধন; এবং উচ্চ-স্তরের নিরাপত্তা।