ডিফল্টরূপে, Google Cloud Search শুধুমাত্র Google Cloud Directory-তে Google পরিচয় সনাক্ত করে। Google পরিচয় ক্লাউড অনুসন্ধান ব্যবহার করে এমন Google পরিচয়ের সাথে এন্টারপ্রাইজ পরিচয় সিঙ্ক করতে পরিচয় সংযোগকারী ব্যবহার করুন।
পরিচয় সংযোগকারী তৈরির জন্য গুগল এই বিকল্পগুলি প্রদান করে:
আইডেন্টিটি কানেক্টর SDK: জাভা প্রোগ্রামারদের জন্য সেরা। SDK হল REST API এর চারপাশে একটি মোড়ক যা আপনাকে দ্রুত সংযোগকারী তৈরি করতে দেয়। SDK ব্যবহার করতে, Identity Connector SDK ব্যবহার করে একটি পরিচয় সংযোগকারী তৈরি করুন দেখুন।
একটি নিম্ন-স্তরের REST API এবং API লাইব্রেরি: জাভা প্রোগ্রামারদের জন্য সেরা। REST API ব্যবহার করে একটি পরিচয় সংযোগকারী তৈরি করতে, ডিরেক্টরি API: ব্যবহারকারীদের ম্যাপিং করার জন্য ব্যবহারকারী অ্যাকাউন্ট এবং ম্যাপিং গ্রুপের জন্য Google ক্লাউড পরিচয় ডকুমেন্টেশন দেখুন।
আইডেন্টিটি কানেক্টর SDK ব্যবহার করে একটি আইডেন্টিটি কানেক্টর তৈরি করুন
একটি সাধারণ পরিচয় সংযোগকারী এই কাজগুলি সম্পাদন করে:
- সংযোগকারী কনফিগার করে।
- আপনার পরিচয় সিস্টেম থেকে ব্যবহারকারীদের উদ্ধার করে এবং তাদের Google এ পাঠায়।
- আপনার পরিচয় সিস্টেম থেকে গ্রুপগুলি উদ্ধার করে এবং Google-এ পাঠায়।
নির্ভরতা সেট আপ করুন
আপনার বিল্ড ফাইলে এই নির্ভরতাগুলি অন্তর্ভুক্ত করুন।
মাভেন
<dependency>
<groupId>com.google.enterprise.cloudsearch</groupId>
<artifactId>google-cloudsearch-identity-connector-sdk</artifactId>
<version>v1-0.0.3</version>
</dependency>
গ্রেডল
compile group: 'com.google.enterprise.cloudsearch',
name: 'google-cloudsearch-identity-connector-sdk',
version: 'v1-0.0.3'
আপনার সংযোগকারী কনফিগারেশন তৈরি করুন
প্রতিটি সংযোগকারী আপনার রিপোজিটরি আইডির মতো প্যারামিটারের জন্য একটি কনফিগারেশন ফাইল ব্যবহার করে। প্যারামিটারগুলিকে কী-মান জোড়া হিসাবে সংজ্ঞায়িত করুন, যেমন api.sourceId= 1234567890abcdef ।
Google Cloud Search SDK-তে সমস্ত সংযোগকারীর জন্য Google-এর সরবরাহিত প্যারামিটার অন্তর্ভুক্ত থাকে। আপনার কনফিগারেশন ফাইলে আপনাকে নিম্নলিখিতগুলি ঘোষণা করতে হবে:
- কন্টেন্ট সংযোগকারী :
api.sourceIdএবংapi.serviceAccountPrivateKeyFileঘোষণা করুন। এগুলি আপনার সংগ্রহস্থল এবং অ্যাক্সেসের জন্য প্রয়োজনীয় ব্যক্তিগত কী সনাক্ত করে।
- আইডেন্টিটি কানেক্টর : আপনার বাহ্যিক আইডেন্টিটি সোর্স সনাক্ত করতে
api.identitySourceIdঘোষণা করুন। ব্যবহারকারী সিঙ্ক করার জন্য,api.customerId(আপনার Google Workspace অ্যাকাউন্টের জন্য অনন্য আইডি)ও ঘোষণা করুন।
অন্যান্য Google-সরবরাহকৃত প্যারামিটারগুলি ঘোষণা করুন শুধুমাত্র তাদের ডিফল্ট মানগুলিকে ওভাররাইড করার জন্য। আইডি এবং কী তৈরি করার বিশদ বিবরণের জন্য, Google-সরবরাহকৃত প্যারামিটারগুলি দেখুন।
আপনি আপনার কনফিগারেশন ফাইলে রিপোজিটরি-নির্দিষ্ট পরামিতিগুলিও সংজ্ঞায়িত করতে পারেন।
কনফিগারেশন ফাইলটি সংযোগকারীতে পাস করুন।
কনফিগারেশন ফাইলটি পাস করার জন্য config system প্রোপার্টি সেট করুন। সংযোগকারী শুরু করার সময় -D আর্গুমেন্ট ব্যবহার করুন। উদাহরণস্বরূপ:
java -classpath myconnector.jar -Dconfig=MyConfig.properties MyConnector
যদি আপনি এই যুক্তিটি বাদ দেন, তাহলে SDK স্থানীয় ডিরেক্টরিতে connector-config.properties নামে একটি ফাইল ব্যবহার করার চেষ্টা করবে।
একটি টেমপ্লেট ক্লাস ব্যবহার করে একটি সম্পূর্ণ সিঙ্ক পরিচয় সংযোগকারী তৈরি করুন
আপনার সংগ্রহস্থল থেকে সমস্ত ব্যবহারকারী এবং গোষ্ঠীগুলিকে সিঙ্ক করার জন্য SDK-তে একটি FullSyncIdentityConnector টেমপ্লেট অন্তর্ভুক্ত রয়েছে। এই বিভাগটি এটি কীভাবে ব্যবহার করবেন তা ব্যাখ্যা করে।
এই বিভাগটি IdentityConnectorSample.java নমুনার কোড উল্লেখ করে, যা CSV ফাইল থেকে পরিচয়পত্র পড়ে।
সংযোগকারী এন্ট্রি পয়েন্টটি বাস্তবায়ন করুন
এন্ট্রি পয়েন্ট হল main() পদ্ধতি। এটি একটি Application ইনস্ট্যান্স তৈরি করে এবং সংযোগকারী চালানোর জন্য start() কল করে।
application.start() কল করার আগে, FullSyncIdentityConnector টেমপ্লেটটি ইন্সট্যান্ট করতে IdentityApplication.Builder ব্যবহার করুন।
আপনার main() পদ্ধতিতে Application.build() কল করার পর SDK initConfig() কল করে। initConfig() পদ্ধতি:
- নিশ্চিত করে যে
Configurationইতিমধ্যেই শুরু করা হয়নি। - গুগল-সরবরাহকৃত কী-মান জোড়া দিয়ে
Configurationঅবজেক্টটি শুরু করে।
রিপোজিটরি ইন্টারফেস বাস্তবায়ন করুন
Repository অবজেক্ট রিপোজিটরি আইডেন্টিটিগুলিকে গুগল আইডেন্টিটির সাথে সিঙ্ক করে। টেমপ্লেট ব্যবহার করার সময়, আপনাকে কেবল কিছু নির্দিষ্ট পদ্ধতি ওভাররাইড করতে হবে। FullSyncIdentityConnector এর জন্য, এই পদ্ধতিগুলিকে ওভাররাইড করুন:
-
init(): সেটআপ এবং ইনিশিয়ালাইজেশনের জন্য। -
listUsers(): সকল ব্যবহারকারীকে সিঙ্ক করার জন্য। -
listGroups(): সকল গ্রুপ সিঙ্ক করার জন্য। - (ঐচ্ছিক)
close(): শাটডাউনের সময় পরিষ্কারের জন্য।
কাস্টম কনফিগারেশন প্যারামিটার পান
Configuration অবজেক্ট থেকে কাস্টম প্যারামিটারগুলি পুনরুদ্ধার করুন, সাধারণত init() পদ্ধতিতে। নিম্নলিখিত স্নিপেটটি CSV পাথগুলি কীভাবে পুনরুদ্ধার করবেন তা দেখায়:
একাধিক মান সম্বলিত একটি প্যারামিটার পেতে এবং পার্স করতে, Configuration ক্লাসের টাইপ পার্সারগুলির একটি ব্যবহার করে ডেটাকে বিচ্ছিন্ন অংশে পার্স করুন। টিউটোরিয়াল সংযোগকারী থেকে নিম্নলিখিত স্নিপেটটি GitHub রিপোজিটরি নামের একটি তালিকা পেতে getMultiValue পদ্ধতি ব্যবহার করে:
সকল ব্যবহারকারীর জন্য ম্যাপিং পান
ব্যবহারকারীর ম্যাপিং পুনরুদ্ধার করতে listUsers() ওভাররাইড করুন। এই পদ্ধতিটি বাধাগ্রস্ত হলে সিঙ্কিং পুনরায় শুরু করার জন্য একটি চেকপয়েন্ট গ্রহণ করে। প্রতিটি ব্যবহারকারীর জন্য:
- গুগল পরিচয় এবং বাহ্যিক পরিচয়ের মধ্যে ম্যাপিং পান।
-
listUsers()দ্বারা ফেরত পাঠানো ইটারেটরে জোড়াটি প্যাকেজ করুন।
একটি ব্যবহারকারী ম্যাপিং পান
এই স্নিপেটটি একটি CSV ফাইল থেকে পরিচয় ম্যাপিং পুনরুদ্ধারের চিত্র প্রদর্শন করে:
একটি ব্যবহারকারী ম্যাপিংকে একটি ইটারেটরে প্যাকেজ করুন
listUsers() পদ্ধতিটি IdentityUser অবজেক্টের একটি CheckpointCloseableIterable প্রদান করে।
একটি গ্রুপ পান
গ্রুপ এবং তাদের সদস্যদের পুনরুদ্ধার করতে listGroups() ওভাররাইড করুন। এই পদ্ধতিটি একটি চেকপয়েন্ট গ্রহণ করে। প্রতিটি গ্রুপের জন্য:
- গ্রুপ এবং এর সদস্যদের সাথে যোগাযোগ করুন।
-
listGroups()দ্বারা ফেরত পাঠানো ইটারেটরে এগুলি প্যাকেজ করুন।
গ্রুপ পরিচয় পান
এই স্নিপেটটি একটি CSV ফাইল থেকে গ্রুপ এবং সদস্যদের পুনরুদ্ধারের চিত্র প্রদর্শন করে:
গ্রুপ এবং সদস্যদের একটি ইটারেটরে প্যাকেজ করুন।
listGroups() পদ্ধতিটি একটি CheckpointCloseableIterable of IdentityGroup অবজেক্ট প্রদান করে।
পরবর্তী পদক্ষেপ
- (ঐচ্ছিক) রিসোর্স প্রকাশ করতে
close()প্রয়োগ করুন। - (ঐচ্ছিক) একটি কন্টেন্ট সংযোগকারী তৈরি করুন ।