透過 Google Cloud Directory Sync (GCDS),您可以使用 LDAP 搜尋規則將您 LDAP 目錄伺服器的資料同步到貴機構的 Google 帳戶。新增搜尋規則後,系統會在下次同步處理時,將與搜尋規則相符的資料進行同步處理。不符合搜尋規則的資料則會遭到移除。
重要資訊:Google 不會針對 LDAP 查詢執行偵錯或提供支援。
基本 LDAP 查詢語法
您可以建立任何自訂的 LDAP 搜尋查詢,只要查詢內容符合 RFC 2254 規範即可。
| 運算子 | 字元 | 使用 |
|---|---|---|
| 等於 | = | 建立要求某個欄位必須含有指定值的篩選條件。 |
| 不限 | * | 表示欄位可等於空值以外的任何值。 |
| 括號 | ( ) | 分隔篩選條件,讓其他邏輯運算子運作。 |
| 和 | & | 同時套用多個篩選條件,查詢內容必須符合所有的設定條件。 |
| 或 | | | 同時套用多個篩選條件,查詢內容至少必須符合其中任何一項設定條件。 |
| 否 | ! | 將符合篩選條件的物件全部排除。 |
新增 LDAP 搜尋規則
您可以針對任何類型的搜尋規則執行以下步驟。
- 在「設定管理員」中,依序前往「使用者帳戶」
「搜尋規則」。
- 按一下「新增搜尋規則」。
- 從選單中選擇下列其中一個選項,指定搜尋規則的範圍:
- 子樹狀結構:這個搜尋規則適用於基準 DN 物件及其所有子物件。
- 單一層級:這個搜尋規則適用於基準 DN 物件的直接子項,但不包含基準 DN 本身。
- 物件:這個搜尋規則僅適用於基準 DN 物件。
- 在「規則」部分,使用 LDAP 搜尋查詢語法輸入搜尋規則。請參閱以下示例。
- 在「基準 DN」部分,選擇下列其中一個選項:
- 輸入基準 DN。
- 如要使用「LDAP Connection」(LDAP 連線) 頁面中指定的基準 DN,請將此欄位留空。
按一下「測試 LDAP 查詢」即可查看查詢結果。
您可以查看找到的物件數量和前 5 個查詢結果。查詢結果不包含沒有電子郵件地址的使用者。
按一下「確定」。
(選用) 如要新增其他搜尋規則,請重複以上步驟。
運用搜尋規則排除資料
排除規則
如果 LDAP 目錄伺服器中有您不想同步處理至貴機構 Google 帳戶的資料,可以使用排除規則排除這些資料。舉例來說,您可以使用 LDAP 搜尋規則指定應同步處理的所有電子郵件地址,並使用排除規則忽略開頭為特定字串的所有電子郵件地址。
使用者搜尋查詢
GCDS 可以透過使用者搜尋查詢,找出 Google 帳戶中符合查詢結果的內容。如果 Google 使用者與查詢結果不符,GCDS 會在將該使用者視為不存在的情況下執行同步作業。
在您執行使用者搜尋查詢時,請確保 LDAP 搜尋規則不會傳回存在於 Google 中,但未納入查詢結果的使用者。否則,GCDS 會在每次同步處理時嘗試建立該使用者。
舉例來說,yuri@altostrat.com 存在於您的 Google 帳戶中,同時也會在 LDAP 搜尋規則中傳回。如果您使用 email:m* 做為使用者搜尋查詢,則 GCDS 會在每次同步處理時嘗試建立 yuri@altostrat.com,因為 yuri@altostrat.com 開頭不是字母 m。
詳情請參閱「運用排除規則和查詢略過資料」。
LDAP 查詢和搜尋規則範例
以下為一般情況下的範例,不一定適用於您的環境。所有換行符號僅用於設定網頁格式。
基本 LDAP 查詢
- 所有物件 (可能導致載入問題)
objectClass=*
- 所有指定為「person」的使用者物件
(&(objectClass=user)(objectCategory=person))
- 僅郵寄清單
(objectCategory=group)
- 僅公用資料夾
(objectCategory=publicfolder)
- 除了主要電子郵件地址開頭為「test」以外的所有使用者物件
(&(&(objectClass=user)(objectCategory=person))(!(mail=test*)))
- 除了主要電子郵件地址結尾為「test」以外的所有使用者物件
(&(&(objectClass=user)(objectCategory=person))(!(mail=*test)))
- 除了主要電子郵件地址包含「test」以外的所有使用者物件
&(&(objectClass=user)(objectCategory=person))(!(mail=*test*)))
特定 LDAP 查詢
- 所有指定為「person」且屬於某個群組或通訊群組清單的使用者和別名物件
(|(&(objectClass=user)(objectCategory=person))(objectCategory=group))
- 所有指定為「person」的使用者物件,以及所有的群組物件和聯絡人,但排除任一值定義為「extensionAttribute9」的物件
(&(|(|(&(objectClass=user)(objectCategory=person))(objectCategory=group))(objectClass=contact))(!(extensionAttribute9=*)))
- 所有經「CN=Group,OU=Users,DC=Domain,DC=com」這個 DN 辨識為群組成員的使用者
(&(objectClass=user)(objectCategory=person)(memberof=CN=Group,OU=Users,DC=Domain,DC=com))
- 傳回所有使用者
- Active Directory:(&(objectCategory=person)(objectClass=user))
- OpenLDAP:(objectClass=inetOrgPerson)
- HCL Domino:(objectClass=dominoPerson)
- Domino LDAP 目錄中所有電子郵件地址指定為「person」或「group」的物件
(&(|(objectClass=dominoPerson)(objectClass=dominoGroup)(objectClass=dominoServerMailInDatabase))(mail=*))
- Active Directory 中所有擁有電子郵件地址的活躍使用者 (亦即未停用的使用者)
(&(objectCategory=person)(objectClass=user)(mail=*)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
- 所有經 Group DN 定義為 Group_1 或 Group_2 成員的使用者
(&(objectClass=user)(objectCategory=person)(|(memberof=CN=Group_1,cn=Users,DC=Domain,DC=com)(memberof=CN=Group_2,cn=Users,DC=Domain,DC=com)))
- 所有 extensionAttribute1 值為「Engineering」或「Sales」的使用者
(&(objectCategory=user)(|(extensionAttribute1=Engineering)(extensionAttribute1=Sales)))
- 在 Active Directory 中以遞迴方式擷取指定群組底下的巢狀群組成員
(&(objectCategory=person)(objectClass=user)(memberOf:1.2.840.113556.1.4.1941:=CN=MyGroup,CN=Users,DC=domain,DC=com))
- 在 Active Directory 中使用 ObjectGUID 進行群組成員資格查詢。群組 ObjectGUID 屬性的十六進位值是 4e542fe785b1bb274e542fe785b1bb27
(&(objectCategory=person)(objectClass=user)(memberOf=GUID=4e542fe785b1bb274e542fe785b1bb27))
對搜尋規則進行最佳化調整
您可以對搜尋規則進行最佳化調整,藉此提升同步處理效能。
| 範例 1:傳回特定電子郵件地址的使用者 | 用途 |
|---|---|
| 使用者搜尋規則:(&(objectClass=user)(objectCategory=person)(mail=*)) | 使用 mail= 查詢對規則進行最佳化調整,而不使用基本規則傳回所有使用者。由於 LDAP 伺服器和 GCDS 不必處理會遭到捨棄的項目,因此執行同步處理時會更有效率。 |
| 示例 2:傳回電子郵件地址與字串相符的使用者 | 用途 |
|---|---|
| 使用者搜尋規則:(&(objectClass=user)(objectCategory=person)(mail=*)(!(mail=sales*))) | 使用最佳化規則,透過相符字串來傳回電子郵件地址不含 Sales 的使用者,而不是使用基本規則和排除規則。因此 LDAP 伺服器和 GCDS 不必處理會遭到捨棄的項目。您不必設定排除規則或考慮優先順序。 |
相關主題
Google、Google Workspace 和其他相關符號及標誌均為 Google LLC 的商標,所有其他公司和產品名稱則是與個別公司關聯的商標。