Varsayılan olarak, Google Cloud Search yalnızca şurada depolanan Google kimliklerini tanır: Google Cloud Directory (kullanıcılar ve gruplar). Kimlik bağlayıcıları şu amaçlarla kullanılır: kuruluşunuzun kimliklerini Google Cloud Search tarafından kullanılan Google kimlikleriyle senkronize edin.
Google, kimlik bağlayıcıları geliştirmek için aşağıdaki seçenekleri sunar:
Identity Connector SDK'sı. Bu seçenek, programlama dilinde çalıştırmaktadır. Identity Connector SDK'sı bir sarmalayıcıdır REST API'yi temel alarak hızlıca bağlayıcı oluşturabilirsiniz. Bir SDK'yı kullanan kimlik bağlayıcısı için Identity Connector SDK'sını kullanarak kimlik bağlayıcısı oluşturun.
Alt düzey bir REST API ve API kitaplıkları. Bu seçenekler, programlama dili Java'da olmayabilir veya kod tabanı bir REST API veya kitaplık. REST API kullanarak kimlik bağlayıcısı oluşturmak için - Directory API: Kullanıcı Hesapları: ve Arkadaş Bitkiler Projesi için Cloud Identity belgeleri: eşleme grupları hakkında daha fazla bilgi edinin.
Identity Connector SDK'sını kullanarak kimlik bağlayıcısı oluşturma
Tipik bir kimlik bağlayıcısı aşağıdaki görevleri gerçekleştirir:
- Bağlayıcıyı yapılandırın.
- Kurumsal kimlik sisteminizden tüm kullanıcıları alın ve Google kimlikleriyle senkronizasyon için Google.
- Kurumsal kimlik sisteminizden tüm grupları alın ve şuraya gönderin: Google kimlikleriyle senkronizasyon için Google.
Bağımlılıkları belirleme
SDK'yı kullanmak için derleme dosyanıza belirli bağımlılıkları eklemeniz gerekir. Sonraki slayta geçin bağımlılıklarını görüntülemek için aşağıdaki sekmelerden birini tıklayın:
Maven
<dependency>
<groupId>com.google.enterprise.cloudsearch</groupId>
<artifactId>google-cloudsearch-identity-connector-sdk</artifactId>
<version>v1-0.0.3</version>
</dependency>
Gradle
compile group: 'com.google.enterprise.cloudsearch',
name: 'google-cloudsearch-identity-connector-sdk',
version: 'v1-0.0.3'
Bağlayıcı yapılandırmanızı oluşturma
Her bağlayıcının,
bağlayıcınızın kimliğini girin. Parametreler şu şekilde tanımlanır:
anahtar/değer çiftleri:
api.sourceId=1234567890abcdef
.
Google Cloud Search SDK'sı, Google tarafından sağlanan çeşitli yapılandırma içerir tüm bağlayıcılar tarafından kullanılan parametrelerdir. Aşağıdakileri beyan etmeniz gerekir: Yapılandırma dosyanızdaki Google tarafından sağlanan parametreler:
- İçerik bağlayıcısı için
api.sourceId
ve Bu parametreler konumu tanımladığındanapi.serviceAccountPrivateKeyFile
deponuz ve özel anahtarınız olabilir.
- Kimlik bağlayıcısı için
api.identitySourceId
öğesini bu olarak tanımlamanız gerekir parametresi, harici kimlik kaynağınızın konumunu tanımlar. Şu durumda: kullanıcılar senkronize ediliyorsaapi.customerId
öğesini de şunlar için benzersiz kimlik olarak beyan etmeniz gerekir: kuruluşunuzun Google Workspace hesabıyla ilişkilidir.
Google tarafından sağlanan diğer parametrelerini yapılandırma dosyanızda bildirmeniz gerekmez. Google'ın sağladığı yapılandırma parametreleri (ör. hakkında bilgi edinmek için Google'ın sağladığı yapılandırma parametreleri.
Ayrıca yapılandırma dosyası.
Yapılandırma dosyasını bağlayıcıya iletme
Yapılandırma dosyasınıconfig
bağlayıcı. Özelliği, başlatırken -D
bağımsız değişkenini kullanarak ayarlayabilirsiniz
bağlayıcı. Örneğin, aşağıdaki komut,
MyConfig.properties
yapılandırma dosyasıyla:
java -classpath myconnector.jar;... -Dconfig=MyConfig.properties MyConnector
Bu bağımsız değişken eksikse SDK, varsayılan bir yapılandırmaya erişmeye çalışır
connector-config.properties
adlı dosya.
Şablon sınıfı kullanarak tam senkronizasyon kimliği bağlayıcısı oluşturma
Identity Connector SDK'sı FullSyncIdentityConnector
şablon sınıfı içeriyor
kimlikten tüm kullanıcıları ve grupları senkronize etmek için kullanabilirsiniz
Google kimliklerine sahip bir depo hizmeti sunar. Bu bölümde,
Google dışı bir kimlikteki kullanıcılar ve grupların tam senkronizasyonunu gerçekleştirmek için FullSyncIdentityConnector
şablonu
depodur.
Belgelerin bu bölümü,
IdentityConnecorSample.java
örnek. Bu örnek kullanıcı ve grubu okur
kimlikler iki CSV dosyası arasından seçilir ve Google kimlikleriyle senkronize edilir.
Bağlayıcının giriş noktasını uygulayın
Bağlayıcının giriş noktası
main()
yöntemini çağırın. Bu yöntemin birincil görevi, yeni
Application
sınıfını çağırarak
start()
yöntemini kullanın.
Aramadan önce
application.start()
her bir
IdentityApplication.Builder
sınıfını kullanarak
FullSyncIdentityConnector
şablon. FullSyncIdentityConnector
şunları kabul ediyor:
Repository
nesnesini ifade eder.
Aşağıdaki kod snippet'i, main()
yönteminin nasıl uygulanacağını gösterir:
Arka planda SDK,
initConfig()
yöntemini çağırınmain()
Application.build
.
initConfig()
yöntemi aşağıdaki görevleri yerine getirir:
-
Configuation.isInitialized()
yöntemini kullananConfiguration
henüz başlatılmadı. - Google'ın sağladığı anahtar/değer çiftiyle bir
Configuration
nesnesini başlatır çiftler. Her anahtar/değer çiftiConfigValue
Configuration
nesnesinin içindeki bir nesnedir.
Repository
arayüzünü uygulama
Repository
nesnesinin tek amacı
Google kimlikleri ile kod deposu kimliklerini senkronize etme. Bunu kullanırken
yalnızca şablondaki belirli yöntemleri geçersiz kılmanız yeterlidir.
Repository
arayüzünü kullanarak kimlik bağlayıcısı oluşturun.
FullTraversalConnector
, aşağıdaki yöntemleri büyük olasılıkla geçersiz kılarsınız:
İlgili içeriği oluşturmak için kullanılan
init()
yöntemidir. Herhangi bir kimlik deposu kurulumu ve başlatması gerçekleştirmek için `init() yöntemidir.İlgili içeriği oluşturmak için kullanılan
listUsers()
yöntemidir. Kimlik deposundaki tüm kullanıcıları Google kullanıcılarıyla senkronize etmek içinlistUsers()
yöntemi.İlgili içeriği oluşturmak için kullanılan
listGroups()
yöntemidir. Kimlik deposundaki tüm grupları Google Gruplar ile senkronize etmek için:listGroups()
yöntemini geçersiz kıl.(isteğe bağlı)
close()
yöntemidir. Depo temizleme işlemi gerçekleştirmeniz gerekiyorsaclose()
yönergesini geçersiz kılın yöntemidir. Bu yöntem, bağlayıcının kapatılması sırasında bir kez çağrılır.
Özel yapılandırma parametrelerini alma
Bağlayıcınızın yapılandırmasınıın bir parçası olarak,
özel parametrelerini içeren
Configuration
nesnesini tanımlayın. Bu görev genellikle
Repository
sınıfın
init()
yöntemidir.
Configuration
sınıfı, farklı veri türlerini almak için çeşitli yöntemler sunar.
kaldıracaktır. Her yöntem,
ConfigValue
nesnesini tanımlayın. Daha sonra ConfigValue
nesnesinin
get()
yöntemini kullanın.
Aşağıdaki snippet'te userMappingCsvPath
ve
Bir Configuration
nesnesinden groupMappingCsvPath
değeri:
Birkaç değer içeren bir parametreyi almak ve ayrıştırmak için
Configuration
sınıfının tür ayrıştırıcıları, verileri ayrı parçalara ayrıştırır.
Eğitim bağlayıcısında bulunan aşağıdaki snippet,
getMultiValue
yöntemini kullanın:
Tüm kullanıcılar için eşlemeyi alma
Geçersiz kıl
listUsers()
kullanarak kimlik deponuzdaki tüm kullanıcıların eşlemesini alabilirsiniz. İlgili içeriği oluşturmak için kullanılan
listUsers()
yöntemi, kontrol edilecek son kimliği temsil eden bir kontrol
senkronize edildi. İşlem aşağıdaki durumlarda senkronizasyonu devam ettirmek için kontrol noktası kullanılabilir:
kesintiye uğrar. Deponuzdaki her kullanıcı için bu adımları şurada gerçekleştireceksiniz:
listUsers()
yöntemi:
- Google kimliği ve ilişkilendirilmiş harici verilerden oluşan bir eşleme alın. kimliği.
- Çifti,
listUsers()
yöntemi tarafından döndürülen bir iteratörde paketleyin.
Kullanıcı eşleme alma
Aşağıdaki kod snippet'i, kimlik eşlemelerinin nasıl alınacağını gösterir. saklanır:
Kullanıcı eşlemesini bir iteratörde paketleme
listUsers()
yöntemi bir Iterator
değeri döndürür, özellikle de
CheckpointCloseableIterable
,
/
IdentityUser
nesneler'i tıklayın. URL parametrelerinin Google tarafından nasıl ele alınmasını istediğinizi belirtmek için
CheckpointClosableIterableImpl.Builder
sınıfını kullanır. Aşağıdaki kod snippet'i, sitenizin
her eşlemeyi liste halinde paketlemek için bu öğeden yinelemeyi derleyin
liste:
Grup al
Geçersiz kıl
listGroups()
ve tüm grupları ve bu grupların üyelerini kimliğinizden almak için
depodur. listGroups()
yöntemi, son
senkronize edilecek. Kontrol noktası, şu durumlarda senkronizasyonu devam ettirmek için kullanılabilir:
işlemi kesintiye uğratabilir. Deponuzdaki her kullanıcı için şu işlemleri yapacaksınız:
listGroups()
yöntemindeki adımlar:
- Grubu ve üyelerini alın.
- Her grubu ve üyeleri
listGroups()
yöntemini çağırın.
Grup kimliğini alma
Aşağıdaki kod snippet'i, grupların ve üyelerin nasıl alınacağını gösterir. depolanır:
Grubu ve üyeleri bir iteratörde paketle
listGroups()
yöntemi bir Iterator
değeri döndürür, özellikle de
CheckpointCloseableIterable
,
/
IdentityGroup
nesneler'i tıklayın.
URL parametrelerinin Google tarafından nasıl ele alınmasını istediğinizi belirtmek için
CheckpointClosableIterableImpl.Builder
sınıfını kullanır. Aşağıdaki kod snippet'i, sitenizin
her grubu ve üyeleri bir liste halinde paketleyip yinelemeyi bu liste halinden
liste:
Sonraki Adımlar
Atabileceğiniz sonraki adımlardan bazıları şunlardır:
- (isteğe bağlı) close() öğesini uygulayın yöntemini kullanın.
- (İsteğe bağlı) İçerik bağlayıcısı oluşturma nasıl kullanacağınızı göstereceğim.