ডিফল্টরূপে, Google ক্লাউড অনুসন্ধান শুধুমাত্র Google ক্লাউড ডিরেক্টরিতে (ব্যবহারকারী এবং গোষ্ঠী) সংরক্ষিত Google পরিচয়গুলিকে স্বীকৃতি দেয়৷ আইডেন্টিটি কানেক্টরগুলি আপনার এন্টারপ্রাইজের পরিচয়গুলিকে Google ক্লাউড অনুসন্ধান দ্বারা ব্যবহৃত Google পরিচয়গুলির সাথে সিঙ্ক করতে ব্যবহৃত হয়৷
Google পরিচয় সংযোগকারীর বিকাশের জন্য নিম্নলিখিত বিকল্পগুলি প্রদান করে:
আইডেন্টিটি কানেক্টর SDK। এই বিকল্পটি এমন ডেভেলপারদের জন্য যারা জাভা প্রোগ্রামিং ভাষায় প্রোগ্রামিং করছেন। আইডেন্টিটি কানেক্টর SDK হল REST API এর চারপাশে একটি মোড়ক যা আপনাকে দ্রুত সংযোগকারী তৈরি করতে দেয়। SDK ব্যবহার করে একটি পরিচয় সংযোগকারী তৈরি করতে, পরিচয় সংযোগকারী SDK ব্যবহার করে একটি পরিচয় সংযোগকারী তৈরি করুন দেখুন।
একটি নিম্ন-স্তরের REST API এবং API লাইব্রেরি। এই বিকল্পগুলি এমন ডেভেলপারদের জন্য যারা জাভাতে প্রোগ্রামিং করতে পারে না বা যাদের কোডবেস একটি REST API বা একটি লাইব্রেরিকে আরও ভালভাবে মিটমাট করে। REST API ব্যবহার করে একটি পরিচয় সংযোগকারী তৈরি করতে, ডিরেক্টরি API দেখুন: ম্যাপিং ব্যবহারকারীদের তথ্যের জন্য ব্যবহারকারী অ্যাকাউন্ট এবং ম্যাপিং গোষ্ঠীর তথ্যের জন্য ক্লাউড আইডেন্টিটি ডকুমেন্টেশন ।
আইডেন্টিটি কানেক্টর SDK ব্যবহার করে একটি আইডেন্টিটি কানেক্টর তৈরি করুন
একটি সাধারণ পরিচয় সংযোগকারী নিম্নলিখিত কাজগুলি সম্পাদন করে:
- সংযোগকারী কনফিগার করুন।
- আপনার এন্টারপ্রাইজ আইডেন্টিটি সিস্টেম থেকে সমস্ত ব্যবহারকারীকে পুনরুদ্ধার করুন এবং Google পরিচয়ের সাথে সিঙ্ক করার জন্য তাদের Google-এ পাঠান৷
- আপনার এন্টারপ্রাইজ আইডেন্টিটি সিস্টেম থেকে সমস্ত গ্রুপ পুনরুদ্ধার করুন এবং Google পরিচয়ের সাথে সিঙ্ক করার জন্য তাদের Google-এ পাঠান।
নির্ভরতা সেট আপ করুন
SDK ব্যবহার করার জন্য আপনাকে অবশ্যই আপনার বিল্ড ফাইলে কিছু নির্ভরতা অন্তর্ভুক্ত করতে হবে। আপনার বিল্ড পরিবেশের জন্য নির্ভরতা দেখতে নীচের একটি ট্যাবে ক্লিক করুন:
মাভেন
<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 ক্লাউড অনুসন্ধান SDK-এ সমস্ত সংযোগকারীর দ্বারা ব্যবহৃত Google-এর সরবরাহকৃত কনফিগারেশন প্যারামিটার রয়েছে৷ আপনার কনফিগারেশন ফাইলে আপনাকে অবশ্যই নিম্নলিখিত Google দ্বারা সরবরাহ করা প্যারামিটারগুলি ঘোষণা করতে হবে:
- একটি বিষয়বস্তু সংযোগকারীর জন্য, আপনাকে অবশ্যই
api.sourceId
এবংapi.serviceAccountPrivateKeyFile
ঘোষণা করতে হবে কারণ এই পরামিতিগুলি আপনার সংগ্রহস্থলের অবস্থান এবং সংগ্রহস্থল অ্যাক্সেস করার জন্য প্রয়োজনীয় ব্যক্তিগত কী সনাক্ত করে৷
- একটি পরিচয় সংযোগকারীর জন্য, আপনাকে অবশ্যই
api.identitySourceId
ঘোষণা করতে হবে কারণ এই প্যারামিটারটি আপনার বাহ্যিক পরিচয় উৎসের অবস্থান চিহ্নিত করে৷ আপনি যদি ব্যবহারকারীদের সিঙ্ক করে থাকেন, তাহলে আপনাকে অবশ্যইapi.customerId
আপনার এন্টারপ্রাইজের Google Workspace অ্যাকাউন্টের অনন্য আইডি হিসেবে ঘোষণা করতে হবে।
যদি না আপনি Google-এর সরবরাহকৃত অন্যান্য প্যারামিটারগুলির ডিফল্ট মানগুলিকে ওভাররাইড করতে চান তবে আপনার কনফিগারেশন ফাইলে সেগুলি ঘোষণা করার দরকার নেই৷ Google-প্রদত্ত কনফিগারেশন প্যারামিটার সম্পর্কে অতিরিক্ত তথ্যের জন্য, যেমন নির্দিষ্ট আইডি এবং কীগুলি কীভাবে তৈরি করতে হয়, Google-প্রদত্ত কনফিগারেশন প্যারামিটারগুলি পড়ুন।
আপনি আপনার কনফিগারেশন ফাইলে ব্যবহারের জন্য আপনার নিজস্ব সংগ্রহস্থল-নির্দিষ্ট পরামিতিগুলিও সংজ্ঞায়িত করতে পারেন।
কনফিগারেশন ফাইলটি সংযোগকারীতে পাস করুন
আপনার সংযোগকারীতে কনফিগারেশন ফাইলটি পাস করতে সিস্টেম সম্পত্তি config
সেট করুন। সংযোগকারী শুরু করার সময় আপনি -D
আর্গুমেন্ট ব্যবহার করে সম্পত্তি সেট করতে পারেন। উদাহরণস্বরূপ, নিম্নলিখিত কমান্ডটি MyConfig.properties
কনফিগারেশন ফাইলের সাথে সংযোগকারীকে শুরু করে:
java -classpath myconnector.jar;... -Dconfig=MyConfig.properties MyConnector
যদি এই যুক্তিটি অনুপস্থিত থাকে, SDK connector-config.properties
নামে একটি ডিফল্ট কনফিগারেশন ফাইল অ্যাক্সেস করার চেষ্টা করে।
একটি টেমপ্লেট ক্লাস ব্যবহার করে একটি সম্পূর্ণ সিঙ্ক পরিচয় সংযোগকারী তৈরি করুন
Identity Connector SDK-এ একটি FullSyncIdentityConnector
টেমপ্লেট ক্লাস রয়েছে যা আপনি Google পরিচয়ের সাথে পরিচয় সংগ্রহস্থল থেকে সমস্ত ব্যবহারকারী এবং গোষ্ঠীকে সিঙ্ক করতে ব্যবহার করতে পারেন৷ এই বিভাগটি ব্যাখ্যা করে যে কীভাবে একটি নন-Google আইডেন্টিটি রিপোজিটরি থেকে ব্যবহারকারী এবং গোষ্ঠীগুলির সম্পূর্ণ সিঙ্ক করতে FullSyncIdentityConnector
টেমপ্লেট ব্যবহার করতে হয়।
ডক্সের এই বিভাগটি IdentityConnecorSample.java
নমুনা থেকে কোড স্নিপেটগুলিকে নির্দেশ করে৷ এই নমুনা দুটি CSV ফাইল থেকে ব্যবহারকারী এবং গোষ্ঠীর পরিচয় পড়ে এবং সেগুলিকে Google পরিচয়ের সাথে সিঙ্ক করে৷
সংযোগকারীর এন্ট্রি পয়েন্ট প্রয়োগ করুন
একটি সংযোগকারীর এন্ট্রি পয়েন্ট হল main()
পদ্ধতি। এই পদ্ধতির প্রাথমিক কাজ হল Application
ক্লাসের একটি উদাহরণ তৈরি করা এবং সংযোগকারী চালানোর জন্য এর start()
পদ্ধতি চালু করা।
application.start()
কল করার আগে, FullSyncIdentityConnector
টেমপ্লেটটি চালু করতে IdentityApplication.Builder
ক্লাসটি ব্যবহার করুন। FullSyncIdentityConnector
একটি Repository
বস্তু গ্রহণ করে যার পদ্ধতিগুলি আপনি প্রয়োগ করবেন। নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে main()
পদ্ধতি বাস্তবায়ন করতে হয়:
পর্দার আড়ালে, SDK আপনার সংযোগকারীর main()
পদ্ধতি Application.build
কল করার পরে initConfig()
পদ্ধতিতে কল করে। initConfig()
পদ্ধতি নিম্নলিখিত কাজগুলি সম্পাদন করে:
-
Configuration
আরম্ভ করা হয়নি তা নিশ্চিত করতেConfiguation.isInitialized()
পদ্ধতিতে কল করে। - Google-প্রদত্ত কী-মান জোড়া দিয়ে একটি
Configuration
অবজেক্ট শুরু করে। প্রতিটি কী-মান জোড়াConfiguration
অবজেক্টের মধ্যে একটিConfigValue
অবজেক্টে সংরক্ষণ করা হয়।
Repository
ইন্টারফেস বাস্তবায়ন
Repository
অবজেক্টের একমাত্র উদ্দেশ্য হল গুগুল আইডেন্টিটির সাথে রিপোজিটরি আইডেন্টিটি সিঙ্ক করা। একটি টেমপ্লেট ব্যবহার করার সময়, আপনাকে একটি পরিচয় সংযোগকারী তৈরি করতে Repository
ইন্টারফেসের মধ্যে শুধুমাত্র কিছু পদ্ধতি ওভাররাইড করতে হবে। FullTraversalConnector
এর জন্য, আপনি সম্ভবত নিম্নলিখিত পদ্ধতিগুলিকে ওভাররাইড করবেন:
init()
পদ্ধতি। কোনো পরিচয় সংগ্রহস্থল সেট-আপ এবং আরম্ভ করার জন্য, `init() পদ্ধতি ওভাররাইড করুন।listUsers()
পদ্ধতি। আইডেন্টিটি রিপোজিটরিতে থাকা সমস্ত ব্যবহারকারীকে Google ব্যবহারকারীদের সাথে সিঙ্ক করতে,listUsers()
পদ্ধতিটি ওভাররাইড করুন।listGroups()
পদ্ধতি। আইডেন্টিটি রিপোজিটরিতে থাকা সমস্ত গ্রুপকে Google গ্রুপের সাথে সিঙ্ক করতে,listGroups()
পদ্ধতিটি ওভাররাইড করুন।(ঐচ্ছিক)
close()
পদ্ধতি। আপনি যদি সংগ্রহস্থল পরিষ্কার করতে চান,close()
পদ্ধতিটি ওভাররাইড করুন। সংযোগকারী বন্ধ করার সময় এই পদ্ধতিটি একবার বলা হয়।
কাস্টম কনফিগারেশন পরামিতি পান
আপনার সংযোগকারীর কনফিগারেশন পরিচালনার অংশ হিসাবে, আপনাকে Configuration
অবজেক্ট থেকে যেকোনো কাস্টম প্যারামিটার পেতে হবে। এই কাজটি সাধারণত Repository
ক্লাসের init()
পদ্ধতিতে করা হয়।
Configuration
ক্লাসে একটি কনফিগারেশন থেকে বিভিন্ন ধরনের ডেটা পাওয়ার জন্য বিভিন্ন পদ্ধতি রয়েছে। প্রতিটি পদ্ধতি একটি ConfigValue
অবজেক্ট প্রদান করে। তারপরে আপনি প্রকৃত মান পুনরুদ্ধার করতে ConfigValue
অবজেক্টের get()
পদ্ধতি ব্যবহার করবেন। নিম্নলিখিত স্নিপেট দেখায় কিভাবে একটি Configuration
বস্তু থেকে userMappingCsvPath
এবং groupMappingCsvPath
মান পুনরুদ্ধার করতে হয়:
বিভিন্ন মান সম্বলিত একটি প্যারামিটার পেতে এবং পার্স করতে, Configuration
ক্লাসের টাইপ পার্সারগুলির মধ্যে একটি ব্যবহার করে ডেটাকে পৃথক খণ্ডে পার্স করুন। টিউটোরিয়াল সংযোগকারী থেকে নিম্নলিখিত স্নিপেটটি GitHub সংগ্রহস্থলের নামের তালিকা পেতে getMultiValue
পদ্ধতি ব্যবহার করে:
সমস্ত ব্যবহারকারীর জন্য ম্যাপিং পান
আপনার পরিচয় সংগ্রহস্থল থেকে সমস্ত ব্যবহারকারীর জন্য ম্যাপিং পুনরুদ্ধার করতে listUsers()
ওভাররাইড করুন। listUsers()
পদ্ধতি একটি চেকপয়েন্ট গ্রহণ করে যা সিঙ্ক করার শেষ পরিচয়টি উপস্থাপন করে। প্রক্রিয়াটি বাধাগ্রস্ত হলে সিঙ্কিং পুনরায় শুরু করতে চেকপয়েন্ট ব্যবহার করা যেতে পারে। আপনার সংগ্রহস্থলের প্রতিটি ব্যবহারকারীর জন্য, আপনি listUsers()
পদ্ধতিতে এই পদক্ষেপগুলি সম্পাদন করবেন:
- Google পরিচয় এবং সংশ্লিষ্ট বাহ্যিক পরিচয় সমন্বিত একটি ম্যাপিং পান।
-
listUsers()
পদ্ধতি দ্বারা ফিরে আসা একটি পুনরাবৃত্তিকারীতে জোড়া প্যাকেজ করুন।
একটি ব্যবহারকারী ম্যাপিং পান
নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে একটি CSV ফাইলে সংরক্ষিত পরিচয় ম্যাপিংগুলি পুনরুদ্ধার করতে হয়:
একটি পুনরাবৃত্তিকারীর মধ্যে একটি ব্যবহারকারী ম্যাপিং প্যাকেজ
listUsers()
পদ্ধতি IdentityUser
অবজেক্টের একটি Iterator
, বিশেষ করে একটি CheckpointCloseableIterable
প্রদান করে। আপনি একটি পুনরাবৃত্তিকারী তৈরি করতে এবং ফেরত দিতে CheckpointClosableIterableImpl.Builder
ক্লাস ব্যবহার করতে পারেন। নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে প্রতিটি ম্যাপিংকে তালিকায় প্যাকেজ করতে হয় সেই তালিকা থেকে পুনরাবৃত্তিকারী তৈরি করুন:
একটি দল পান
আপনার পরিচয় সংগ্রহস্থল থেকে সমস্ত গ্রুপ এবং তাদের সদস্যদের পুনরুদ্ধার করতে listGroups()
ওভাররাইড করুন। listGroups()
পদ্ধতিটি একটি চেকপয়েন্ট গ্রহণ করে যা সিঙ্ক করার শেষ পরিচয়টি উপস্থাপন করে। প্রক্রিয়াটি বাধাগ্রস্ত হলে সিঙ্কিং পুনরায় শুরু করতে চেকপয়েন্ট ব্যবহার করা যেতে পারে। আপনার সংগ্রহস্থলের প্রতিটি ব্যবহারকারীর জন্য, আপনি listGroups()
পদ্ধতিতে এই পদক্ষেপগুলি সম্পাদন করবেন:
- গ্রুপ এবং এর সদস্যদের পান।
-
listGroups()
পদ্ধতি দ্বারা ফিরে আসা একটি পুনরাবৃত্তিকারীতে প্রতিটি গ্রুপ এবং সদস্যদের প্যাকেজ করুন।
দলের পরিচয় পান
নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে একটি CSV ফাইলে সংরক্ষিত গোষ্ঠী এবং সদস্যদের পুনরুদ্ধার করতে হয়:
গ্রুপ এবং সদস্যদের একটি পুনরাবৃত্তিকারীতে প্যাকেজ করুন
listGroups()
পদ্ধতি IdentityGroup
অবজেক্টের একটি Iterator
, বিশেষ করে একটি CheckpointCloseableIterable
প্রদান করে। আপনি একটি পুনরাবৃত্তিকারী তৈরি করতে এবং ফেরত দিতে CheckpointClosableIterableImpl.Builder
ক্লাস ব্যবহার করতে পারেন। নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে প্রতিটি গ্রুপ এবং সদস্যদের একটি তালিকায় প্যাকেজ করতে হয় এবং সেই তালিকা থেকে পুনরাবৃত্তিকারী তৈরি করতে হয়:
পরবর্তী পদক্ষেপ
এখানে কয়েকটি পরবর্তী পদক্ষেপ রয়েছে যা আপনি নিতে পারেন:
- (ঐচ্ছিক) শাটডাউন করার আগে কোনো সংস্থান প্রকাশ করতে close() পদ্ধতি প্রয়োগ করুন।
- (ঐচ্ছিক) সামগ্রী সংযোগকারী SDK ব্যবহার করে একটি সামগ্রী সংযোগকারী তৈরি করুন ৷
ডিফল্টরূপে, Google ক্লাউড অনুসন্ধান শুধুমাত্র Google ক্লাউড ডিরেক্টরিতে (ব্যবহারকারী এবং গোষ্ঠী) সংরক্ষিত Google পরিচয়গুলিকে স্বীকৃতি দেয়৷ আইডেন্টিটি কানেক্টরগুলি আপনার এন্টারপ্রাইজের পরিচয়গুলিকে Google ক্লাউড অনুসন্ধান দ্বারা ব্যবহৃত Google পরিচয়গুলির সাথে সিঙ্ক করতে ব্যবহৃত হয়৷
Google পরিচয় সংযোগকারীর বিকাশের জন্য নিম্নলিখিত বিকল্পগুলি প্রদান করে:
আইডেন্টিটি কানেক্টর SDK। এই বিকল্পটি এমন ডেভেলপারদের জন্য যারা জাভা প্রোগ্রামিং ভাষায় প্রোগ্রামিং করছেন। আইডেন্টিটি কানেক্টর SDK হল REST API এর চারপাশে একটি মোড়ক যা আপনাকে দ্রুত সংযোগকারী তৈরি করতে দেয়। SDK ব্যবহার করে একটি পরিচয় সংযোগকারী তৈরি করতে, পরিচয় সংযোগকারী SDK ব্যবহার করে একটি পরিচয় সংযোগকারী তৈরি করুন দেখুন।
একটি নিম্ন-স্তরের REST API এবং API লাইব্রেরি। এই বিকল্পগুলি এমন ডেভেলপারদের জন্য যারা জাভাতে প্রোগ্রামিং করতে পারে না বা যাদের কোডবেস একটি REST API বা একটি লাইব্রেরিকে আরও ভালভাবে মিটমাট করে। REST API ব্যবহার করে একটি পরিচয় সংযোগকারী তৈরি করতে, ডিরেক্টরি API দেখুন: ম্যাপিং ব্যবহারকারীদের তথ্যের জন্য ব্যবহারকারী অ্যাকাউন্ট এবং ম্যাপিং গোষ্ঠীর তথ্যের জন্য ক্লাউড আইডেন্টিটি ডকুমেন্টেশন ।
আইডেন্টিটি কানেক্টর SDK ব্যবহার করে একটি আইডেন্টিটি কানেক্টর তৈরি করুন
একটি সাধারণ পরিচয় সংযোগকারী নিম্নলিখিত কাজগুলি সম্পাদন করে:
- সংযোগকারী কনফিগার করুন।
- আপনার এন্টারপ্রাইজ আইডেন্টিটি সিস্টেম থেকে সমস্ত ব্যবহারকারীকে পুনরুদ্ধার করুন এবং Google পরিচয়ের সাথে সিঙ্ক করার জন্য তাদের Google-এ পাঠান৷
- আপনার এন্টারপ্রাইজ আইডেন্টিটি সিস্টেম থেকে সমস্ত গ্রুপ পুনরুদ্ধার করুন এবং Google পরিচয়ের সাথে সিঙ্ক করার জন্য তাদের Google-এ পাঠান।
নির্ভরতা সেট আপ করুন
SDK ব্যবহার করার জন্য আপনাকে অবশ্যই আপনার বিল্ড ফাইলে কিছু নির্ভরতা অন্তর্ভুক্ত করতে হবে। আপনার বিল্ড পরিবেশের জন্য নির্ভরতা দেখতে নীচের একটি ট্যাবে ক্লিক করুন:
মাভেন
<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 ক্লাউড অনুসন্ধান SDK-এ সমস্ত সংযোগকারীর দ্বারা ব্যবহৃত Google-এর সরবরাহকৃত কনফিগারেশন প্যারামিটার রয়েছে৷ আপনার কনফিগারেশন ফাইলে আপনাকে অবশ্যই নিম্নলিখিত Google দ্বারা সরবরাহ করা প্যারামিটারগুলি ঘোষণা করতে হবে:
- একটি বিষয়বস্তু সংযোগকারীর জন্য, আপনাকে অবশ্যই
api.sourceId
এবংapi.serviceAccountPrivateKeyFile
ঘোষণা করতে হবে কারণ এই পরামিতিগুলি আপনার সংগ্রহস্থলের অবস্থান এবং সংগ্রহস্থল অ্যাক্সেস করার জন্য প্রয়োজনীয় ব্যক্তিগত কী সনাক্ত করে৷
- একটি পরিচয় সংযোগকারীর জন্য, আপনাকে অবশ্যই
api.identitySourceId
ঘোষণা করতে হবে কারণ এই প্যারামিটারটি আপনার বাহ্যিক পরিচয় উৎসের অবস্থান চিহ্নিত করে৷ আপনি যদি ব্যবহারকারীদের সিঙ্ক করে থাকেন, তাহলে আপনাকে অবশ্যইapi.customerId
আপনার এন্টারপ্রাইজের Google Workspace অ্যাকাউন্টের অনন্য আইডি হিসেবে ঘোষণা করতে হবে।
যদি না আপনি Google-এর সরবরাহকৃত অন্যান্য প্যারামিটারগুলির ডিফল্ট মানগুলিকে ওভাররাইড করতে চান তবে আপনার কনফিগারেশন ফাইলে সেগুলি ঘোষণা করার দরকার নেই৷ Google-প্রদত্ত কনফিগারেশন প্যারামিটার সম্পর্কে অতিরিক্ত তথ্যের জন্য, যেমন নির্দিষ্ট আইডি এবং কীগুলি কীভাবে তৈরি করতে হয়, Google-প্রদত্ত কনফিগারেশন প্যারামিটারগুলি পড়ুন।
আপনি আপনার কনফিগারেশন ফাইলে ব্যবহারের জন্য আপনার নিজস্ব সংগ্রহস্থল-নির্দিষ্ট পরামিতিগুলিও সংজ্ঞায়িত করতে পারেন।
কনফিগারেশন ফাইলটি সংযোগকারীতে পাস করুন
আপনার সংযোগকারীতে কনফিগারেশন ফাইলটি পাস করতে সিস্টেম সম্পত্তি config
সেট করুন। সংযোগকারী শুরু করার সময় আপনি -D
আর্গুমেন্ট ব্যবহার করে সম্পত্তি সেট করতে পারেন। উদাহরণস্বরূপ, নিম্নলিখিত কমান্ডটি MyConfig.properties
কনফিগারেশন ফাইলের সাথে সংযোগকারীকে শুরু করে:
java -classpath myconnector.jar;... -Dconfig=MyConfig.properties MyConnector
যদি এই যুক্তিটি অনুপস্থিত থাকে, SDK connector-config.properties
নামে একটি ডিফল্ট কনফিগারেশন ফাইল অ্যাক্সেস করার চেষ্টা করে।
একটি টেমপ্লেট ক্লাস ব্যবহার করে একটি সম্পূর্ণ সিঙ্ক পরিচয় সংযোগকারী তৈরি করুন
Identity Connector SDK-এ একটি FullSyncIdentityConnector
টেমপ্লেট ক্লাস রয়েছে যা আপনি Google পরিচয়ের সাথে পরিচয় সংগ্রহস্থল থেকে সমস্ত ব্যবহারকারী এবং গোষ্ঠীকে সিঙ্ক করতে ব্যবহার করতে পারেন৷ এই বিভাগটি ব্যাখ্যা করে যে কীভাবে একটি নন-Google আইডেন্টিটি রিপোজিটরি থেকে ব্যবহারকারী এবং গোষ্ঠীগুলির সম্পূর্ণ সিঙ্ক করতে FullSyncIdentityConnector
টেমপ্লেট ব্যবহার করতে হয়।
ডক্সের এই বিভাগটি IdentityConnecorSample.java
নমুনা থেকে কোড স্নিপেটগুলিকে নির্দেশ করে৷ এই নমুনা দুটি CSV ফাইল থেকে ব্যবহারকারী এবং গোষ্ঠীর পরিচয় পড়ে এবং সেগুলিকে Google পরিচয়ের সাথে সিঙ্ক করে৷
সংযোগকারীর এন্ট্রি পয়েন্ট প্রয়োগ করুন
একটি সংযোগকারীর এন্ট্রি পয়েন্ট হল main()
পদ্ধতি। এই পদ্ধতির প্রাথমিক কাজ হল Application
ক্লাসের একটি উদাহরণ তৈরি করা এবং সংযোগকারী চালানোর জন্য এর start()
পদ্ধতি চালু করা।
application.start()
কল করার আগে, FullSyncIdentityConnector
টেমপ্লেটটি চালু করতে IdentityApplication.Builder
ক্লাসটি ব্যবহার করুন। FullSyncIdentityConnector
একটি Repository
বস্তু গ্রহণ করে যার পদ্ধতিগুলি আপনি প্রয়োগ করবেন। নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে main()
পদ্ধতি বাস্তবায়ন করতে হয়:
পর্দার আড়ালে, SDK আপনার সংযোগকারীর main()
পদ্ধতি Application.build
কল করার পরে initConfig()
পদ্ধতিতে কল করে। initConfig()
পদ্ধতি নিম্নলিখিত কাজগুলি সম্পাদন করে:
-
Configuration
আরম্ভ করা হয়নি তা নিশ্চিত করতেConfiguation.isInitialized()
পদ্ধতিতে কল করে। - Google-প্রদত্ত কী-মান জোড়া দিয়ে একটি
Configuration
অবজেক্ট শুরু করে। প্রতিটি কী-মান জোড়াConfiguration
অবজেক্টের মধ্যে একটিConfigValue
অবজেক্টে সংরক্ষণ করা হয়।
Repository
ইন্টারফেস বাস্তবায়ন
Repository
অবজেক্টের একমাত্র উদ্দেশ্য হল গুগুল আইডেন্টিটির সাথে রিপোজিটরি আইডেন্টিটি সিঙ্ক করা। একটি টেমপ্লেট ব্যবহার করার সময়, আপনাকে একটি পরিচয় সংযোগকারী তৈরি করতে Repository
ইন্টারফেসের মধ্যে শুধুমাত্র কিছু পদ্ধতি ওভাররাইড করতে হবে। FullTraversalConnector
এর জন্য, আপনি সম্ভবত নিম্নলিখিত পদ্ধতিগুলিকে ওভাররাইড করবেন:
init()
পদ্ধতি। কোনো পরিচয় সংগ্রহস্থল সেট-আপ এবং আরম্ভ করার জন্য, `init() পদ্ধতি ওভাররাইড করুন।listUsers()
পদ্ধতি। আইডেন্টিটি রিপোজিটরিতে থাকা সমস্ত ব্যবহারকারীকে Google ব্যবহারকারীদের সাথে সিঙ্ক করতে,listUsers()
পদ্ধতিটি ওভাররাইড করুন।listGroups()
পদ্ধতি। আইডেন্টিটি রিপোজিটরিতে থাকা সমস্ত গ্রুপকে Google গ্রুপের সাথে সিঙ্ক করতে,listGroups()
পদ্ধতিটি ওভাররাইড করুন।(ঐচ্ছিক)
close()
পদ্ধতি। আপনি যদি সংগ্রহস্থল পরিষ্কার করতে চান,close()
পদ্ধতিটি ওভাররাইড করুন। সংযোগকারী বন্ধ করার সময় এই পদ্ধতিটি একবার বলা হয়।
কাস্টম কনফিগারেশন পরামিতি পান
আপনার সংযোগকারীর কনফিগারেশন পরিচালনার অংশ হিসাবে, আপনাকে Configuration
অবজেক্ট থেকে যেকোনো কাস্টম প্যারামিটার পেতে হবে। এই কাজটি সাধারণত Repository
ক্লাসের init()
পদ্ধতিতে করা হয়।
Configuration
ক্লাসে একটি কনফিগারেশন থেকে বিভিন্ন ধরনের ডেটা পাওয়ার জন্য বিভিন্ন পদ্ধতি রয়েছে। প্রতিটি পদ্ধতি একটি ConfigValue
অবজেক্ট প্রদান করে। তারপরে আপনি প্রকৃত মান পুনরুদ্ধার করতে ConfigValue
অবজেক্টের get()
পদ্ধতি ব্যবহার করবেন। নিম্নলিখিত স্নিপেট দেখায় কিভাবে একটি Configuration
বস্তু থেকে userMappingCsvPath
এবং groupMappingCsvPath
মান পুনরুদ্ধার করতে হয়:
বিভিন্ন মান সম্বলিত একটি প্যারামিটার পেতে এবং পার্স করতে, Configuration
ক্লাসের টাইপ পার্সারগুলির মধ্যে একটি ব্যবহার করে ডেটাকে পৃথক খণ্ডে পার্স করুন। টিউটোরিয়াল সংযোগকারী থেকে নিম্নলিখিত স্নিপেটটি GitHub সংগ্রহস্থলের নামের তালিকা পেতে getMultiValue
পদ্ধতি ব্যবহার করে:
সমস্ত ব্যবহারকারীর জন্য ম্যাপিং পান
আপনার পরিচয় সংগ্রহস্থল থেকে সমস্ত ব্যবহারকারীর জন্য ম্যাপিং পুনরুদ্ধার করতে listUsers()
ওভাররাইড করুন। listUsers()
পদ্ধতি একটি চেকপয়েন্ট গ্রহণ করে যা সিঙ্ক করার শেষ পরিচয়টি উপস্থাপন করে। প্রক্রিয়াটি বাধাগ্রস্ত হলে সিঙ্কিং পুনরায় শুরু করতে চেকপয়েন্ট ব্যবহার করা যেতে পারে। আপনার সংগ্রহস্থলের প্রতিটি ব্যবহারকারীর জন্য, আপনি listUsers()
পদ্ধতিতে এই পদক্ষেপগুলি সম্পাদন করবেন:
- Google পরিচয় এবং সংশ্লিষ্ট বাহ্যিক পরিচয় সমন্বিত একটি ম্যাপিং পান।
-
listUsers()
পদ্ধতি দ্বারা ফিরে আসা একটি পুনরাবৃত্তিকারীতে জোড়া প্যাকেজ করুন।
একটি ব্যবহারকারী ম্যাপিং পান
নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে একটি CSV ফাইলে সংরক্ষিত পরিচয় ম্যাপিংগুলি পুনরুদ্ধার করতে হয়:
একটি পুনরাবৃত্তিকারীর মধ্যে একটি ব্যবহারকারী ম্যাপিং প্যাকেজ
listUsers()
পদ্ধতি IdentityUser
অবজেক্টের একটি Iterator
, বিশেষ করে একটি CheckpointCloseableIterable
প্রদান করে। আপনি একটি পুনরাবৃত্তিকারী তৈরি করতে এবং ফেরত দিতে CheckpointClosableIterableImpl.Builder
ক্লাস ব্যবহার করতে পারেন। নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে প্রতিটি ম্যাপিংকে তালিকায় প্যাকেজ করতে হয় সেই তালিকা থেকে পুনরাবৃত্তিকারী তৈরি করুন:
একটি দল পান
আপনার পরিচয় সংগ্রহস্থল থেকে সমস্ত গ্রুপ এবং তাদের সদস্যদের পুনরুদ্ধার করতে listGroups()
ওভাররাইড করুন। listGroups()
পদ্ধতিটি একটি চেকপয়েন্ট গ্রহণ করে যা সিঙ্ক করার শেষ পরিচয়টি উপস্থাপন করে। প্রক্রিয়াটি বাধাগ্রস্ত হলে সিঙ্কিং পুনরায় শুরু করতে চেকপয়েন্ট ব্যবহার করা যেতে পারে। আপনার সংগ্রহস্থলের প্রতিটি ব্যবহারকারীর জন্য, আপনি listGroups()
পদ্ধতিতে এই পদক্ষেপগুলি সম্পাদন করবেন:
- গ্রুপ এবং এর সদস্যদের পান।
-
listGroups()
পদ্ধতি দ্বারা ফিরে আসা একটি পুনরাবৃত্তিকারীতে প্রতিটি গ্রুপ এবং সদস্যদের প্যাকেজ করুন।
দলের পরিচয় পান
নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে একটি CSV ফাইলে সংরক্ষিত গোষ্ঠী এবং সদস্যদের পুনরুদ্ধার করতে হয়:
গ্রুপ এবং সদস্যদের একটি পুনরাবৃত্তিকারীতে প্যাকেজ করুন
listGroups()
পদ্ধতি IdentityGroup
অবজেক্টের একটি Iterator
, বিশেষ করে একটি CheckpointCloseableIterable
প্রদান করে। আপনি একটি পুনরাবৃত্তিকারী তৈরি করতে এবং ফেরত দিতে CheckpointClosableIterableImpl.Builder
ক্লাস ব্যবহার করতে পারেন। নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে প্রতিটি গ্রুপ এবং সদস্যদের একটি তালিকায় প্যাকেজ করতে হয় এবং সেই তালিকা থেকে পুনরাবৃত্তিকারী তৈরি করতে হয়:
পরবর্তী পদক্ষেপ
এখানে কয়েকটি পরবর্তী পদক্ষেপ রয়েছে যা আপনি নিতে পারেন:
- (ঐচ্ছিক) শাটডাউন করার আগে কোনো সংস্থান প্রকাশ করতে close() পদ্ধতি প্রয়োগ করুন।
- (ঐচ্ছিক) সামগ্রী সংযোগকারী SDK ব্যবহার করে একটি সামগ্রী সংযোগকারী তৈরি করুন ৷
ডিফল্টরূপে, Google ক্লাউড অনুসন্ধান শুধুমাত্র Google ক্লাউড ডিরেক্টরিতে (ব্যবহারকারী এবং গোষ্ঠী) সংরক্ষিত Google পরিচয়গুলিকে স্বীকৃতি দেয়৷ আইডেন্টিটি কানেক্টরগুলি আপনার এন্টারপ্রাইজের পরিচয়গুলিকে Google ক্লাউড অনুসন্ধান দ্বারা ব্যবহৃত Google পরিচয়গুলির সাথে সিঙ্ক করতে ব্যবহৃত হয়৷
Google পরিচয় সংযোগকারীর বিকাশের জন্য নিম্নলিখিত বিকল্পগুলি প্রদান করে:
আইডেন্টিটি কানেক্টর SDK। এই বিকল্পটি এমন ডেভেলপারদের জন্য যারা জাভা প্রোগ্রামিং ভাষায় প্রোগ্রামিং করছেন। আইডেন্টিটি কানেক্টর SDK হল REST API এর চারপাশে একটি মোড়ক যা আপনাকে দ্রুত সংযোগকারী তৈরি করতে দেয়। SDK ব্যবহার করে একটি পরিচয় সংযোগকারী তৈরি করতে, পরিচয় সংযোগকারী SDK ব্যবহার করে একটি পরিচয় সংযোগকারী তৈরি করুন দেখুন।
একটি নিম্ন-স্তরের REST API এবং API লাইব্রেরি। এই বিকল্পগুলি এমন ডেভেলপারদের জন্য যারা জাভাতে প্রোগ্রামিং করতে পারে না বা যাদের কোডবেস একটি REST API বা একটি লাইব্রেরিকে আরও ভালভাবে মিটমাট করে। REST API ব্যবহার করে একটি পরিচয় সংযোগকারী তৈরি করতে, ডিরেক্টরি API দেখুন: ম্যাপিং ব্যবহারকারীদের তথ্যের জন্য ব্যবহারকারী অ্যাকাউন্ট এবং ম্যাপিং গোষ্ঠীর তথ্যের জন্য ক্লাউড আইডেন্টিটি ডকুমেন্টেশন ।
আইডেন্টিটি কানেক্টর SDK ব্যবহার করে একটি আইডেন্টিটি কানেক্টর তৈরি করুন
একটি সাধারণ পরিচয় সংযোগকারী নিম্নলিখিত কাজগুলি সম্পাদন করে:
- সংযোগকারী কনফিগার করুন।
- আপনার এন্টারপ্রাইজ আইডেন্টিটি সিস্টেম থেকে সমস্ত ব্যবহারকারীকে পুনরুদ্ধার করুন এবং Google পরিচয়ের সাথে সিঙ্ক করার জন্য তাদের Google-এ পাঠান৷
- আপনার এন্টারপ্রাইজ আইডেন্টিটি সিস্টেম থেকে সমস্ত গ্রুপ পুনরুদ্ধার করুন এবং Google পরিচয়ের সাথে সিঙ্ক করার জন্য তাদের Google-এ পাঠান।
নির্ভরতা সেট আপ করুন
SDK ব্যবহার করার জন্য আপনাকে অবশ্যই আপনার বিল্ড ফাইলে কিছু নির্ভরতা অন্তর্ভুক্ত করতে হবে। আপনার বিল্ড পরিবেশের জন্য নির্ভরতা দেখতে নীচের একটি ট্যাবে ক্লিক করুন:
মাভেন
<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 ক্লাউড অনুসন্ধান SDK-এ সমস্ত সংযোগকারীর দ্বারা ব্যবহৃত Google-এর সরবরাহকৃত কনফিগারেশন প্যারামিটার রয়েছে৷ আপনার কনফিগারেশন ফাইলে আপনাকে অবশ্যই নিম্নলিখিত Google দ্বারা সরবরাহ করা প্যারামিটারগুলি ঘোষণা করতে হবে:
- একটি বিষয়বস্তু সংযোগকারীর জন্য, আপনাকে অবশ্যই
api.sourceId
এবংapi.serviceAccountPrivateKeyFile
ঘোষণা করতে হবে কারণ এই পরামিতিগুলি আপনার সংগ্রহস্থলের অবস্থান এবং সংগ্রহস্থল অ্যাক্সেস করার জন্য প্রয়োজনীয় ব্যক্তিগত কী সনাক্ত করে৷
- একটি পরিচয় সংযোগকারীর জন্য, আপনাকে অবশ্যই
api.identitySourceId
ঘোষণা করতে হবে কারণ এই প্যারামিটারটি আপনার বাহ্যিক পরিচয় উৎসের অবস্থান চিহ্নিত করে৷ আপনি যদি ব্যবহারকারীদের সিঙ্ক করে থাকেন, তাহলে আপনাকে অবশ্যইapi.customerId
আপনার এন্টারপ্রাইজের Google Workspace অ্যাকাউন্টের অনন্য আইডি হিসেবে ঘোষণা করতে হবে।
যদি না আপনি Google-এর সরবরাহকৃত অন্যান্য প্যারামিটারগুলির ডিফল্ট মানগুলিকে ওভাররাইড করতে চান তবে আপনার কনফিগারেশন ফাইলে সেগুলি ঘোষণা করার দরকার নেই৷ Google-প্রদত্ত কনফিগারেশন প্যারামিটার সম্পর্কে অতিরিক্ত তথ্যের জন্য, যেমন নির্দিষ্ট আইডি এবং কীগুলি কীভাবে তৈরি করতে হয়, Google-প্রদত্ত কনফিগারেশন প্যারামিটারগুলি পড়ুন।
আপনি আপনার কনফিগারেশন ফাইলে ব্যবহারের জন্য আপনার নিজস্ব সংগ্রহস্থল-নির্দিষ্ট পরামিতিগুলিও সংজ্ঞায়িত করতে পারেন।
কনফিগারেশন ফাইলটি সংযোগকারীতে পাস করুন
আপনার সংযোগকারীতে কনফিগারেশন ফাইলটি পাস করতে সিস্টেম সম্পত্তি config
সেট করুন। সংযোগকারী শুরু করার সময় আপনি -D
আর্গুমেন্ট ব্যবহার করে সম্পত্তি সেট করতে পারেন। উদাহরণস্বরূপ, নিম্নলিখিত কমান্ডটি MyConfig.properties
কনফিগারেশন ফাইলের সাথে সংযোগকারীকে শুরু করে:
java -classpath myconnector.jar;... -Dconfig=MyConfig.properties MyConnector
যদি এই যুক্তিটি অনুপস্থিত থাকে, SDK connector-config.properties
নামে একটি ডিফল্ট কনফিগারেশন ফাইল অ্যাক্সেস করার চেষ্টা করে।
একটি টেমপ্লেট ক্লাস ব্যবহার করে একটি সম্পূর্ণ সিঙ্ক পরিচয় সংযোগকারী তৈরি করুন
Identity Connector SDK-এ একটি FullSyncIdentityConnector
টেমপ্লেট ক্লাস রয়েছে যা আপনি Google পরিচয়ের সাথে পরিচয় সংগ্রহস্থল থেকে সমস্ত ব্যবহারকারী এবং গোষ্ঠীকে সিঙ্ক করতে ব্যবহার করতে পারেন৷ এই বিভাগটি ব্যাখ্যা করে যে কীভাবে একটি নন-Google আইডেন্টিটি রিপোজিটরি থেকে ব্যবহারকারী এবং গোষ্ঠীগুলির সম্পূর্ণ সিঙ্ক করতে FullSyncIdentityConnector
টেমপ্লেট ব্যবহার করতে হয়।
ডক্সের এই বিভাগটি IdentityConnecorSample.java
নমুনা থেকে কোড স্নিপেটগুলিকে নির্দেশ করে৷ এই নমুনা দুটি CSV ফাইল থেকে ব্যবহারকারী এবং গোষ্ঠীর পরিচয় পড়ে এবং সেগুলিকে Google পরিচয়ের সাথে সিঙ্ক করে৷
সংযোগকারীর এন্ট্রি পয়েন্ট প্রয়োগ করুন
একটি সংযোগকারীর এন্ট্রি পয়েন্ট হল main()
পদ্ধতি। এই পদ্ধতির প্রাথমিক কাজ হল Application
ক্লাসের একটি উদাহরণ তৈরি করা এবং সংযোগকারী চালানোর জন্য এর start()
পদ্ধতি চালু করা।
application.start()
কল করার আগে, FullSyncIdentityConnector
টেমপ্লেটটি চালু করতে IdentityApplication.Builder
ক্লাসটি ব্যবহার করুন। FullSyncIdentityConnector
একটি Repository
বস্তু গ্রহণ করে যার পদ্ধতিগুলি আপনি প্রয়োগ করবেন। নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে main()
পদ্ধতি বাস্তবায়ন করতে হয়:
পর্দার আড়ালে, SDK আপনার সংযোগকারীর main()
পদ্ধতি Application.build
কল করার পরে initConfig()
পদ্ধতিতে কল করে। initConfig()
পদ্ধতি নিম্নলিখিত কাজগুলি সম্পাদন করে:
-
Configuration
আরম্ভ করা হয়নি তা নিশ্চিত করতেConfiguation.isInitialized()
পদ্ধতিতে কল করে। - Google-প্রদত্ত কী-মান জোড়া দিয়ে একটি
Configuration
অবজেক্ট শুরু করে। প্রতিটি কী-মান জোড়াConfiguration
অবজেক্টের মধ্যে একটিConfigValue
অবজেক্টে সংরক্ষণ করা হয়।
Repository
ইন্টারফেস বাস্তবায়ন
Repository
অবজেক্টের একমাত্র উদ্দেশ্য হল গুগুল আইডেন্টিটির সাথে রিপোজিটরি আইডেন্টিটি সিঙ্ক করা। একটি টেমপ্লেট ব্যবহার করার সময়, আপনাকে একটি পরিচয় সংযোগকারী তৈরি করতে Repository
ইন্টারফেসের মধ্যে শুধুমাত্র কিছু পদ্ধতি ওভাররাইড করতে হবে। FullTraversalConnector
এর জন্য, আপনি সম্ভবত নিম্নলিখিত পদ্ধতিগুলিকে ওভাররাইড করবেন:
init()
পদ্ধতি। কোনো পরিচয় সংগ্রহস্থল সেট-আপ এবং আরম্ভ করার জন্য, `init() পদ্ধতি ওভাররাইড করুন।listUsers()
পদ্ধতি। আইডেন্টিটি রিপোজিটরিতে থাকা সমস্ত ব্যবহারকারীকে Google ব্যবহারকারীদের সাথে সিঙ্ক করতে,listUsers()
পদ্ধতিটি ওভাররাইড করুন।listGroups()
পদ্ধতি। আইডেন্টিটি রিপোজিটরিতে থাকা সমস্ত গ্রুপকে Google গ্রুপের সাথে সিঙ্ক করতে,listGroups()
পদ্ধতিটি ওভাররাইড করুন।(ঐচ্ছিক)
close()
পদ্ধতি। আপনি যদি সংগ্রহস্থল পরিষ্কার করতে চান,close()
পদ্ধতিটি ওভাররাইড করুন। সংযোগকারী বন্ধ করার সময় এই পদ্ধতিটি একবার বলা হয়।
কাস্টম কনফিগারেশন পরামিতি পান
আপনার সংযোগকারীর কনফিগারেশন পরিচালনার অংশ হিসাবে, আপনাকে Configuration
অবজেক্ট থেকে যেকোনো কাস্টম প্যারামিটার পেতে হবে। এই কাজটি সাধারণত Repository
ক্লাসের init()
পদ্ধতিতে করা হয়।
Configuration
ক্লাসে একটি কনফিগারেশন থেকে বিভিন্ন ধরনের ডেটা পাওয়ার জন্য বিভিন্ন পদ্ধতি রয়েছে। প্রতিটি পদ্ধতি একটি ConfigValue
অবজেক্ট প্রদান করে। তারপরে আপনি প্রকৃত মান পুনরুদ্ধার করতে ConfigValue
অবজেক্টের get()
পদ্ধতি ব্যবহার করবেন। নিম্নলিখিত স্নিপেট দেখায় কিভাবে একটি Configuration
বস্তু থেকে userMappingCsvPath
এবং groupMappingCsvPath
মান পুনরুদ্ধার করতে হয়:
বিভিন্ন মান সম্বলিত একটি প্যারামিটার পেতে এবং পার্স করতে, Configuration
ক্লাসের টাইপ পার্সারগুলির মধ্যে একটি ব্যবহার করে ডেটাকে পৃথক খণ্ডে পার্স করুন। টিউটোরিয়াল সংযোগকারী থেকে নিম্নলিখিত স্নিপেটটি GitHub সংগ্রহস্থলের নামের তালিকা পেতে getMultiValue
পদ্ধতি ব্যবহার করে:
সমস্ত ব্যবহারকারীর জন্য ম্যাপিং পান
আপনার পরিচয় সংগ্রহস্থল থেকে সমস্ত ব্যবহারকারীর জন্য ম্যাপিং পুনরুদ্ধার করতে listUsers()
ওভাররাইড করুন। listUsers()
পদ্ধতি একটি চেকপয়েন্ট গ্রহণ করে যা সিঙ্ক করার শেষ পরিচয়টি উপস্থাপন করে। প্রক্রিয়াটি বাধাগ্রস্ত হলে সিঙ্কিং পুনরায় শুরু করতে চেকপয়েন্ট ব্যবহার করা যেতে পারে। আপনার সংগ্রহস্থলের প্রতিটি ব্যবহারকারীর জন্য, আপনি listUsers()
পদ্ধতিতে এই পদক্ষেপগুলি সম্পাদন করবেন:
- Google পরিচয় এবং সংশ্লিষ্ট বাহ্যিক পরিচয় সমন্বিত একটি ম্যাপিং পান।
-
listUsers()
পদ্ধতি দ্বারা ফিরে আসা একটি পুনরাবৃত্তিকারীতে জোড়া প্যাকেজ করুন।
একটি ব্যবহারকারী ম্যাপিং পান
নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে একটি CSV ফাইলে সংরক্ষিত পরিচয় ম্যাপিংগুলি পুনরুদ্ধার করতে হয়:
একটি পুনরাবৃত্তিকারীর মধ্যে একটি ব্যবহারকারী ম্যাপিং প্যাকেজ
listUsers()
পদ্ধতি IdentityUser
অবজেক্টের একটি Iterator
, বিশেষ করে একটি CheckpointCloseableIterable
প্রদান করে। আপনি একটি পুনরাবৃত্তিকারী তৈরি করতে এবং ফেরত দিতে CheckpointClosableIterableImpl.Builder
ক্লাস ব্যবহার করতে পারেন। নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে প্রতিটি ম্যাপিংকে তালিকায় প্যাকেজ করতে হয় সেই তালিকা থেকে পুনরাবৃত্তিকারী তৈরি করুন:
একটি দল পান
আপনার পরিচয় সংগ্রহস্থল থেকে সমস্ত গ্রুপ এবং তাদের সদস্যদের পুনরুদ্ধার করতে listGroups()
ওভাররাইড করুন। listGroups()
পদ্ধতিটি একটি চেকপয়েন্ট গ্রহণ করে যা সিঙ্ক করার শেষ পরিচয়টি উপস্থাপন করে। প্রক্রিয়াটি বাধাগ্রস্ত হলে সিঙ্কিং পুনরায় শুরু করতে চেকপয়েন্ট ব্যবহার করা যেতে পারে। আপনার সংগ্রহস্থলের প্রতিটি ব্যবহারকারীর জন্য, আপনি listGroups()
পদ্ধতিতে এই পদক্ষেপগুলি সম্পাদন করবেন:
- গ্রুপ এবং এর সদস্যদের পান।
-
listGroups()
পদ্ধতি দ্বারা ফিরে আসা একটি পুনরাবৃত্তিকারীতে প্রতিটি গ্রুপ এবং সদস্যদের প্যাকেজ করুন।
দলের পরিচয় পান
নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে একটি CSV ফাইলে সংরক্ষিত গোষ্ঠী এবং সদস্যদের পুনরুদ্ধার করতে হয়:
গ্রুপ এবং সদস্যদের একটি পুনরাবৃত্তিকারীতে প্যাকেজ করুন
listGroups()
পদ্ধতি IdentityGroup
অবজেক্টের একটি Iterator
, বিশেষ করে একটি CheckpointCloseableIterable
প্রদান করে। আপনি একটি পুনরাবৃত্তিকারী তৈরি করতে এবং ফেরত দিতে CheckpointClosableIterableImpl.Builder
ক্লাস ব্যবহার করতে পারেন। নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে প্রতিটি গ্রুপ এবং সদস্যদের একটি তালিকায় প্যাকেজ করতে হয় এবং সেই তালিকা থেকে পুনরাবৃত্তিকারী তৈরি করতে হয়:
পরবর্তী পদক্ষেপ
এখানে কয়েকটি পরবর্তী পদক্ষেপ রয়েছে যা আপনি নিতে পারেন:
- (ঐচ্ছিক) শাটডাউন করার আগে কোনো সংস্থান প্রকাশ করতে close() পদ্ধতি প্রয়োগ করুন।
- (ঐচ্ছিক) সামগ্রী সংযোগকারী SDK ব্যবহার করে একটি সামগ্রী সংযোগকারী তৈরি করুন ৷
ডিফল্টরূপে, Google ক্লাউড অনুসন্ধান শুধুমাত্র Google ক্লাউড ডিরেক্টরিতে (ব্যবহারকারী এবং গোষ্ঠী) সংরক্ষিত Google পরিচয়গুলিকে স্বীকৃতি দেয়৷ আইডেন্টিটি কানেক্টরগুলি আপনার এন্টারপ্রাইজের পরিচয়গুলিকে Google ক্লাউড অনুসন্ধান দ্বারা ব্যবহৃত Google পরিচয়গুলির সাথে সিঙ্ক করতে ব্যবহৃত হয়৷
Google পরিচয় সংযোগকারীর বিকাশের জন্য নিম্নলিখিত বিকল্পগুলি প্রদান করে:
আইডেন্টিটি কানেক্টর SDK। এই বিকল্পটি এমন ডেভেলপারদের জন্য যারা জাভা প্রোগ্রামিং ভাষায় প্রোগ্রামিং করছেন। আইডেন্টিটি কানেক্টর SDK হল REST API এর চারপাশে একটি মোড়ক যা আপনাকে দ্রুত সংযোগকারী তৈরি করতে দেয়। SDK ব্যবহার করে একটি পরিচয় সংযোগকারী তৈরি করতে, পরিচয় সংযোগকারী SDK ব্যবহার করে একটি পরিচয় সংযোগকারী তৈরি করুন দেখুন।
একটি নিম্ন-স্তরের REST API এবং API লাইব্রেরি। এই বিকল্পগুলি এমন ডেভেলপারদের জন্য যারা জাভাতে প্রোগ্রামিং করতে পারে না বা যাদের কোডবেস একটি REST API বা একটি লাইব্রেরিকে আরও ভালভাবে মিটমাট করে। REST API ব্যবহার করে একটি পরিচয় সংযোগকারী তৈরি করতে, ডিরেক্টরি API দেখুন: ম্যাপিং ব্যবহারকারীদের তথ্যের জন্য ব্যবহারকারী অ্যাকাউন্ট এবং ম্যাপিং গোষ্ঠীর তথ্যের জন্য ক্লাউড আইডেন্টিটি ডকুমেন্টেশন ।
আইডেন্টিটি কানেক্টর SDK ব্যবহার করে একটি আইডেন্টিটি কানেক্টর তৈরি করুন
একটি সাধারণ পরিচয় সংযোগকারী নিম্নলিখিত কাজগুলি সম্পাদন করে:
- সংযোগকারী কনফিগার করুন।
- আপনার এন্টারপ্রাইজ আইডেন্টিটি সিস্টেম থেকে সমস্ত ব্যবহারকারীকে পুনরুদ্ধার করুন এবং Google পরিচয়ের সাথে সিঙ্ক করার জন্য তাদের Google-এ পাঠান৷
- আপনার এন্টারপ্রাইজ আইডেন্টিটি সিস্টেম থেকে সমস্ত গ্রুপ পুনরুদ্ধার করুন এবং Google পরিচয়ের সাথে সিঙ্ক করার জন্য তাদের Google-এ পাঠান।
নির্ভরতা সেট আপ করুন
SDK ব্যবহার করার জন্য আপনাকে অবশ্যই আপনার বিল্ড ফাইলে কিছু নির্ভরতা অন্তর্ভুক্ত করতে হবে। আপনার বিল্ড পরিবেশের জন্য নির্ভরতা দেখতে নীচের একটি ট্যাবে ক্লিক করুন:
মাভেন
<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 ক্লাউড অনুসন্ধান SDK-এ সমস্ত সংযোগকারীর দ্বারা ব্যবহৃত Google-এর সরবরাহকৃত কনফিগারেশন প্যারামিটার রয়েছে৷ আপনার কনফিগারেশন ফাইলে আপনাকে অবশ্যই নিম্নলিখিত Google দ্বারা সরবরাহ করা প্যারামিটারগুলি ঘোষণা করতে হবে:
- একটি বিষয়বস্তু সংযোগকারীর জন্য, আপনাকে অবশ্যই
api.sourceId
এবংapi.serviceAccountPrivateKeyFile
ঘোষণা করতে হবে কারণ এই পরামিতিগুলি আপনার সংগ্রহস্থলের অবস্থান এবং সংগ্রহস্থল অ্যাক্সেস করার জন্য প্রয়োজনীয় ব্যক্তিগত কী সনাক্ত করে৷
- একটি পরিচয় সংযোজকের জন্য, আপনাকে অবশ্যই
api.identitySourceId
ঘোষণা করতে হবে কারণ এই প্যারামিটারটি আপনার বাহ্যিক পরিচয় উত্সের অবস্থান চিহ্নিত করে। আপনি যদি ব্যবহারকারীদের সিঙ্ক করে থাকেন তবে আপনাকে অবশ্যই আপনার এন্টারপ্রাইজের গুগল ওয়ার্কস্পেস অ্যাকাউন্টের জন্য অনন্য আইডি হিসাবেapi.customerId
ঘোষণা করতে হবে।
আপনি যদি অন্য গুগল-সরবরাহিত প্যারামিটারগুলির ডিফল্ট মানগুলি ওভাররাইড করতে না চান তবে আপনাকে সেগুলি আপনার কনফিগারেশন ফাইলে ঘোষণা করার দরকার নেই। গুগল-সরবরাহিত কনফিগারেশন প্যারামিটারগুলিতে অতিরিক্ত তথ্যের জন্য, যেমন নির্দিষ্ট আইডি এবং কীগুলি কীভাবে তৈরি করা যায়, গুগল-সরবরাহিত কনফিগারেশন পরামিতিগুলি দেখুন।
আপনি আপনার কনফিগারেশন ফাইলে ব্যবহারের জন্য আপনার নিজস্ব সংগ্রহস্থল-নির্দিষ্ট পরামিতিগুলিও সংজ্ঞায়িত করতে পারেন।
সংযোগকারীটিতে কনফিগারেশন ফাইলটি পাস করুন
কনফিগারেশন ফাইলটি আপনার সংযোজকের কাছে পাস করতে সিস্টেম সম্পত্তি config
সেট করুন। সংযোগকারীটি শুরু করার সময় আপনি -D
আর্গুমেন্ট ব্যবহার করে সম্পত্তি সেট করতে পারেন। উদাহরণস্বরূপ, নিম্নলিখিত কমান্ডটি MyConfig.properties
কনফিগারেশন ফাইলের সাথে সংযোগকারীটি শুরু করে:
java -classpath myconnector.jar;... -Dconfig=MyConfig.properties MyConnector
যদি এই যুক্তিটি অনুপস্থিত থাকে তবে এসডিকে connector-config.properties
নামক একটি ডিফল্ট কনফিগারেশন ফাইল অ্যাক্সেস করার চেষ্টা করে।
একটি টেম্পলেট শ্রেণি ব্যবহার করে একটি সম্পূর্ণ সিঙ্ক আইডেন্টিটি সংযোগকারী তৈরি করুন
আইডেন্টিটি সংযোগকারী এসডিকে একটি FullSyncIdentityConnector
টেম্পলেট ক্লাস রয়েছে যা আপনি গুগল পরিচয়ের সাথে পরিচয় সংগ্রহস্থল থেকে সমস্ত ব্যবহারকারী এবং গোষ্ঠীগুলিকে সিঙ্ক করতে ব্যবহার করতে পারেন। এই বিভাগটি ব্যাখ্যা করে যে কীভাবে একটি অ-গুগল আইডেন্টিটি রিপোজিটরি থেকে ব্যবহারকারী এবং গোষ্ঠীগুলির একটি সম্পূর্ণ সিঙ্ক সম্পাদনের জন্য FullSyncIdentityConnector
টেম্পলেটটি ব্যবহার করবেন।
ডক্সের এই বিভাগটি IdentityConnecorSample.java
নমুনা থেকে কোড স্নিপেটগুলি বোঝায়। এই নমুনাটি দুটি সিএসভি ফাইল থেকে ব্যবহারকারী এবং গোষ্ঠী পরিচয় পড়ে এবং গুগল পরিচয়ের সাথে সেগুলি সিঙ্ক করে।
সংযোজকের প্রবেশ পয়েন্টটি প্রয়োগ করুন
সংযোগকারীটিতে প্রবেশের পয়েন্টটি হ'ল main()
পদ্ধতি। এই পদ্ধতির প্রাথমিক কাজটি হ'ল Application
শ্রেণীর একটি উদাহরণ তৈরি করা এবং সংযোগকারীটি চালানোর জন্য এর start()
পদ্ধতিটি অনুরোধ করা।
application.start()
কল করার আগে, FullSyncIdentityConnector
কন্টেক্টর টেম্পলেটটি ইনস্ট্যান্ট করতে IdentityApplication.Builder
ক্লাসটি ব্যবহার করুন। FullSyncIdentityConnector
এমন একটি Repository
অবজেক্ট গ্রহণ করে যার পদ্ধতিগুলি আপনি প্রয়োগ করবেন। নিম্নলিখিত কোড স্নিপেটটি দেখায় যে কীভাবে main()
পদ্ধতিটি প্রয়োগ করা যায়:
পর্দার আড়ালে, এসডিকে আপনার initConfig()
main()
পদ্ধতিটি Application.build
কল করে BI initConfig()
পদ্ধতি নিম্নলিখিত কাজগুলি সম্পাদন করে:
-
Configuration
আরম্ভ করা হয়নি তা নিশ্চিত করার জন্যConfiguation.isInitialized()
পদ্ধতিটি কল করে। - গুগল-সরবরাহিত কী-মান জোড়া দিয়ে একটি
Configuration
অবজেক্টের সূচনা করে। প্রতিটি কী-মান জুটিConfiguration
অবজেক্টের মধ্যে একটিConfigValue
অবজেক্টে সংরক্ষণ করা হয়।
Repository
ইন্টারফেস প্রয়োগ করুন
Repository
অবজেক্টের একমাত্র উদ্দেশ্য হ'ল গুগল পরিচয়গুলিতে সংগ্রহস্থল পরিচয়গুলির সিঙ্কিং সম্পাদন করা। কোনও টেমপ্লেট ব্যবহার করার সময়, আপনার পরিচয় সংযোজক তৈরি করতে কেবল Repository
ইন্টারফেসের মধ্যে কিছু নির্দিষ্ট পদ্ধতি ওভাররাইড করা দরকার। FullTraversalConnector
জন্য, আপনি সম্ভবত নিম্নলিখিত পদ্ধতিগুলি ওভাররাইড করবেন:
init()
পদ্ধতি। কোনও পরিচয় সংগ্রহস্থল সেট আপ এবং সূচনা সম্পাদন করতে, `init () পদ্ধতিটি ওভাররাইড করুন।listUsers()
পদ্ধতি। গুগল ব্যবহারকারীদের সাথে পরিচয় সংগ্রহস্থলের সমস্ত ব্যবহারকারীকে সিঙ্ক করতে,listUsers()
পদ্ধতিটি ওভাররাইড করুন।listGroups()
পদ্ধতি। গুগল গ্রুপগুলির সাথে পরিচয় সংগ্রহস্থলে সমস্ত গোষ্ঠী সিঙ্ক করতে,listGroups()
পদ্ধতিটি ওভাররাইড করুন।(al চ্ছিক)
close()
পদ্ধতি। আপনার যদি সংগ্রহস্থল ক্লিনআপ সম্পাদন করতে হয় তবেclose()
পদ্ধতিটি ওভাররাইড করুন। এই পদ্ধতিটি সংযোগকারী শাটডাউন করার সময় একবার বলা হয়।
কাস্টম কনফিগারেশন পরামিতি পান
আপনার সংযোজকের কনফিগারেশন পরিচালনা করার অংশ হিসাবে, আপনাকে Configuration
অবজেক্ট থেকে কোনও কাস্টম পরামিতি পেতে হবে। এই টাস্কটি সাধারণত একটি Repository
শ্রেণীর init()
পদ্ধতিতে সঞ্চালিত হয়।
Configuration
ক্লাসে একটি কনফিগারেশন থেকে বিভিন্ন ডেটা প্রকার পাওয়ার জন্য বিভিন্ন পদ্ধতি রয়েছে। প্রতিটি পদ্ধতি একটি ConfigValue
অবজেক্ট দেয়। তারপরে আপনি প্রকৃত মানটি পুনরুদ্ধার করতে ConfigValue
অবজেক্টের get()
পদ্ধতিটি ব্যবহার করবেন। নিম্নলিখিত স্নিপেটটি দেখায় যে কীভাবে একটি Configuration
অবজেক্ট থেকে userMappingCsvPath
এবং groupMappingCsvPath
মান পুনরুদ্ধার করা যায়:
বেশ কয়েকটি মান সম্বলিত একটি প্যারামিটার পেতে এবং পার্স করতে, Configuration
শ্রেণীর একটি টাইপ পার্সার ব্যবহার করুন ডেটাগুলি পৃথক খণ্ডগুলিতে পার্স করতে। টিউটোরিয়াল সংযোজক থেকে নিম্নলিখিত স্নিপেটটি গিটহাব সংগ্রহের নামগুলির একটি তালিকা পেতে getMultiValue
পদ্ধতি ব্যবহার করে:
সমস্ত ব্যবহারকারীর জন্য ম্যাপিং পান
আপনার পরিচয় সংগ্রহস্থল থেকে সমস্ত ব্যবহারকারীর জন্য ম্যাপিংটি পুনরুদ্ধার করতে listUsers()
ওভাররাইড করুন। listUsers()
পদ্ধতিটি সিঙ্ক করার জন্য সর্বশেষ পরিচয় উপস্থাপন করে এমন একটি চেকপয়েন্ট গ্রহণ করে। প্রক্রিয়াটি বাধাগ্রস্ত হওয়া উচিত যদি চেকপয়েন্টটি আবার সিঙ্ক পুনরায় শুরু করতে ব্যবহার করা যেতে পারে। আপনার সংগ্রহস্থলে প্রতিটি ব্যবহারকারীর জন্য, আপনি এই পদক্ষেপগুলি listUsers()
পদ্ধতিতে সম্পাদন করবেন:
- গুগল পরিচয় এবং সম্পর্কিত বাহ্যিক পরিচয় সমন্বিত একটি ম্যাপিং পান।
-
listUsers()
পদ্ধতি দ্বারা ফিরে আসা একটি পুনরাবৃত্তিতে জুটি প্যাকেজ করুন।
একটি ব্যবহারকারী ম্যাপিং পান
নিম্নলিখিত কোড স্নিপেটটি সিএসভি ফাইলে সঞ্চিত পরিচয় ম্যাপিংগুলি কীভাবে পুনরুদ্ধার করবেন তা প্রদর্শন করে:
একটি ব্যবহারকারী একটি পুনরাবৃত্তিতে ম্যাপিং প্যাকেজ
listUsers()
পদ্ধতিটি IdentityUser
অবজেক্টগুলির একটি Iterator
, বিশেষত একটি CheckpointCloseableIterable
, প্রদান করে। আপনি একটি পুনরাবৃত্তিটি নির্মাণ এবং ফিরিয়ে দিতে CheckpointClosableIterableImpl.Builder
ক্লাসটি ব্যবহার করতে পারেন। নিম্নলিখিত কোড স্নিপেট দেখায় যে কীভাবে প্রতিটি ম্যাপিং তালিকায় প্যাকেজ করতে হয় সেই তালিকা থেকে পুনরাবৃত্তি তৈরি করুন:
একটি গ্রুপ পেতে
আপনার পরিচয় সংগ্রহস্থল থেকে সমস্ত গোষ্ঠী এবং তাদের সদস্যদের পুনরুদ্ধার করতে listGroups()
ওভাররাইড করুন। listGroups()
পদ্ধতিটি সিঙ্ক করার জন্য সর্বশেষ পরিচয় উপস্থাপন করে এমন একটি চেকপয়েন্ট গ্রহণ করে। প্রক্রিয়াটি বাধাগ্রস্ত হওয়া উচিত যদি চেকপয়েন্টটি আবার সিঙ্ক পুনরায় শুরু করতে ব্যবহার করা যেতে পারে। আপনার সংগ্রহস্থলে প্রতিটি ব্যবহারকারীর জন্য, আপনি এই পদক্ষেপগুলি listGroups()
পদ্ধতিতে সম্পাদন করবেন:
- গ্রুপ এবং এর সদস্যদের পান।
- প্রতিটি গ্রুপ এবং সদস্যদের একটি পুনরাবৃত্তির মধ্যে প্যাকেজ করুন
listGroups()
পদ্ধতি দ্বারা ফিরে।
গ্রুপ পরিচয় পান
নিম্নলিখিত কোড স্নিপেটটি কীভাবে একটি সিএসভি ফাইলে সঞ্চিত গ্রুপ এবং সদস্যদের পুনরুদ্ধার করতে হয় তা প্রদর্শন করে:
গ্রুপ এবং সদস্যদের একটি পুনরাবৃত্তিতে প্যাকেজ করুন
listGroups()
পদ্ধতিটি IdentityGroup
অবজেক্টগুলির একটি Iterator
, বিশেষত একটি CheckpointCloseableIterable
, প্রদান করে। আপনি একটি পুনরাবৃত্তিটি নির্মাণ এবং ফিরিয়ে দিতে CheckpointClosableIterableImpl.Builder
ক্লাসটি ব্যবহার করতে পারেন। নিম্নলিখিত কোড স্নিপেট দেখায় যে কীভাবে প্রতিটি গ্রুপ এবং সদস্যদের একটি তালিকায় প্যাকেজ করতে হবে এবং সেই তালিকা থেকে পুনরাবৃত্তকারী তৈরি করতে হবে:
পরবর্তী পদক্ষেপ
আপনি নিতে পারেন এমন কয়েকটি পরবর্তী পদক্ষেপ এখানে:
- (al চ্ছিক) শাটডাউন করার আগে যে কোনও সংস্থান প্রকাশের জন্য ক্লোজ () পদ্ধতিটি প্রয়োগ করুন।
- (al চ্ছিক) সামগ্রী সংযোগকারী এসডিকে ব্যবহার করে একটি সামগ্রী সংযোগকারী তৈরি করুন ।