本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
依使用者內容篩選
注意
功能支援會因索引類型和正在使用的搜尋 API 而有所不同。若要查看您所使用的索引類型和搜尋 API 是否支援此功能,請參閱索引類型。
您可以根據使用者或其群組對文件的存取來篩選使用者的搜尋結果。您可以使用使用者字符、使用者 ID 或使用者屬性來篩選文件。
使用者內容篩選是一種個人化搜尋,具有控制文件存取的優點。例如,並非所有搜尋公司入口網站資訊的團隊都應該存取最機密的公司文件,這些文件也與所有使用者無關。只有授予最高機密文件存取權的特定使用者或團隊群組,才能在其搜尋結果中看到這些文件。
當文件索引為 時 Amazon Kendra,會擷取大多數文件對應的存取控制清單 (ACL)。ACL 會指定允許或拒絕哪些使用者名稱和群組名稱存取文件。沒有 ACL 的文件是公有文件。
Amazon Kendra 可以擷取與大多數資料來源的每個文件相關聯的使用者或群組資訊。例如,Quip 中的文件可以包含 'share' 清單,其中包含可存取該文件的特定使用者。如果您使用 S3 儲存貯體做為資料來源,您可以為 ACL 提供 JSON 檔案,並包含此檔案的 S3 路徑做為資料來源組態的一部分。如果您將文件直接新增至索引,您可以在 BatchPutDocument API 中指定主體物件中的 ACL,做為文件物件的一部分。
如果您使用的是 Amazon Kendra Enterprise 或 Developer Edition 索引,您可以使用 CreateAccessControlConfiguration API 來重新設定現有的文件層級存取控制,而無需再次編製所有文件的索引。例如,您的索引包含僅特定員工或使用者應存取的最機密公司文件。其中一個使用者離開公司或切換到應該封鎖存取最機密文件的團隊。使用者仍然可以存取最機密的文件,因為使用者在先前編製文件索引時可以存取。您可以為拒絕存取的使用者建立特定的存取控制組態。您可以稍後更新存取控制組態,以便在使用者返回公司並重新加入「頂端機密」團隊時允許存取。您可以在情況變更時重新設定文件的存取控制。
若要將您的存取控制組態套用至特定文件,請呼叫 BatchPutDocument API,其中包含文件物件AccessControlConfigurationId
中的 。如果您使用 S3 儲存貯體做為資料來源,您可以使用 更新 .metadata.json
AccessControlConfigurationId
並同步資料來源。 Amazon Kendra 目前僅支援使用 BatchPutDocument
API 編製索引之 S3 資料來源和文件的存取控制組態。
依使用者字符篩選
重要
Amazon Kendra GenAI Enterprise Edition 索引不支援以字符為基礎的使用者存取控制。
當您查詢索引時,您可以使用使用者字符,根據使用者或其群組對文件的存取來篩選搜尋結果。當您發出查詢時, 會 Amazon Kendra 擷取和驗證權杖、提取和檢查使用者和群組資訊,並執行查詢。系統會傳回使用者可存取的所有文件,包括公有文件。如需詳細資訊,請參閱以字符為基礎的使用者存取控制。
您可以在 UserContext 物件中提供使用者權杖,並在查詢 API 中傳遞此權杖。
以下說明如何包含使用者字符。
response = kendra.query( QueryText = query, IndexId = index, UserToken = { Token = "
token
" })
您可以將使用者映射到群組。當您使用使用者內容篩選時,不需要包含使用者在發出查詢時所屬的所有群組。使用 PutPrincipalMapping API,您可以將使用者映射到其群組。如果您不想使用 PutPrincipalMapping
API,則必須在發出查詢時提供使用者名稱和使用者所屬的所有群組。您也可以使用 UserGroupResolutionConfiguration 物件,擷取 IAM Identity Center 身分來源中群組和使用者的存取層級。
依使用者 ID 和群組篩選
當您查詢索引時,您可以使用使用者 ID 和群組,根據使用者或其群組對文件的存取來篩選搜尋結果。當您發出查詢時, 會 Amazon Kendra 檢查使用者和群組資訊,並執行查詢。系統會傳回與使用者可存取之查詢相關的所有文件,包括公有文件。
您也可以依使用者和群組可存取的資料來源來篩選搜尋結果。如果群組繫結至多個資料來源,但您只希望該群組存取特定資料來源的文件,則指定資料來源非常有用。例如,「研究」、「工程」和「銷售和行銷」群組都與存放在 Confluence 和 Salesforce 資料來源中的公司文件相關聯。不過,「銷售和行銷」團隊只需要存取儲存在 Salesforce 中的客戶相關文件。因此,當銷售和行銷使用者搜尋客戶相關文件時,他們可以在結果中看到 Salesforce 的文件。不在銷售和行銷部門工作的使用者不會在搜尋結果中看到 Salesforce 文件。
您可以在 UserContext 物件中提供使用者、群組和資料來源資訊,並在查詢 API 中傳遞此資訊。使用者 ID 和群組和資料來源清單應與您在主體物件中指定的名稱相符,以識別使用者、群組和資料來源。使用 Principal
物件,您可以將使用者、群組或資料來源新增至允許清單或拒絕清單,以存取文件。
您必須提供下列其中一項:
-
使用者和群組資訊,以及 (選用) 資料來源資訊。
-
只有在您使用 PutPrincipalMapping API 將使用者映射到群組和資料來源時,才需要使用者資訊。您也可以使用 UserGroupResolutionConfiguration 物件,擷取 IAM Identity Center 身分來源中群組和使用者的存取層級。
如果此資訊不包含在查詢中, 會 Amazon Kendra 傳回所有文件。如果您提供此資訊,則只會傳回具有相符使用者 IDs、群組和資料來源的文件。
以下說明如何包含使用者 ID、群組和資料來源。
response = kendra.query( QueryText = query, IndexId = index, UserContext={'Token': '
string
', 'UserId': 'string
', 'Groups': [ 'string
', ], 'DataSourceGroups': [ { 'GroupId': 'string
', 'DataSourceId': 'string
' }, ] },)
依使用者屬性篩選
當您查詢索引時,您可以使用內建屬性_user_id
_group_id
,並根據使用者及其群組對文件的存取來篩選搜尋結果。您最多可以設定 100 個群組識別符。當您發出查詢時, 會 Amazon Kendra 檢查使用者和群組資訊,並執行查詢。與使用者可存取的查詢相關的所有文件都會傳回,包括公有文件。
您可以在 AttributeFilter 物件中提供使用者和群組屬性,並在查詢 API 中傳遞此屬性。
下列範例顯示根據使用者 ID 和使用者所屬的群組 "HR" 和 "IT" 篩選查詢回應的請求。查詢將傳回允許清單中具有使用者或 "HR" 或 "IT" 群組的任何文件。如果使用者或任一群組在文件的拒絕清單中,則不會傳回文件。
response = kendra.query( QueryText = query, IndexId = index, AttributeFilter = { "OrAllFilters": [ { "EqualsTo": { "Key": "_user_id", "Value": { "StringValue": "user1" } } }, { "EqualsTo": { "Key": "_group_ids", "Value": { "StringListValue": ["HR", "IT"] } } } ] } )
您也可以指定群組可以在 Principal
物件中存取的資料來源。
注意
使用者內容篩選不是內容的身分驗證或授權控制。它不會對傳送至 Query
API 的使用者和群組執行使用者身分驗證。取決於您的應用程式,以確保傳送至 Query
API 的使用者和群組資訊已經過身分驗證和授權。
每個資料來源都有使用者內容篩選的實作。下節說明每個實作。
直接新增至索引之文件的使用者內容篩選
當您使用 BatchPutDocument API 將文件直接新增至索引時, 會從文件的 AccessControlList
欄位 Amazon Kendra 取得使用者和群組資訊。您可以為文件提供存取控制清單 (ACL),ACL 會擷取到您的文件。
您可以在主要物件中指定 ACL,做為 BatchPutDocument
API 中文件物件的一部分。您提供以下資訊:
-
使用者或群組應擁有的存取權。您可以說
ALLOW
或DENY
。 -
實體的類型。您可以說
USER
或GROUP
。 -
使用者或群組的名稱。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
常見問答集的使用者內容篩選
當您將常見問答集新增至索引時, 會從常見問答集 JSON 檔案的AccessControlList
物件/欄位 Amazon Kendra 取得使用者和群組資訊。您也可以使用具有自訂欄位或屬性的常見問答集 CSV 檔案進行存取控制。
您提供以下資訊:
-
使用者或群組應擁有的存取權。您可以說
ALLOW
或DENY
。 -
實體的類型。您可以說
USER
或GROUP
。 -
使用者或群組的名稱。
如需詳細資訊,請參閱常見問答集檔案。
資料來源的使用者內容篩選
Amazon Kendra 也會從支援的資料來源連接器中擷取使用者和群組存取控制清單 (ACL) 資訊。這對於使用者內容篩選很有用,其中搜尋結果會根據使用者或其群組對文件的存取進行篩選。
重要
Amazon Kendra GenAI Enterprise Edition 索引僅支援 v2.0 Amazon Kendra 資料來源連接器。
主題
Adobe Experience Manager 資料來源的使用者內容篩選
當您使用 Adobe Experience Manager 資料來源時, 會從 Adobe Experience Manager 執行個體 Amazon Kendra 取得使用者和群組資訊。
群組和使用者 IDs對應如下:
-
_group_ids
- 群組 IDs存在於 Adobe Experience Manager 內容中,其中有設定存取許可。它們是從 Adobe Experience Manager 中的群組名稱映射。 -
_user_id
- 使用者 IDs存在於 Adobe Experience Manager 內容中,其中有設定存取許可。它們會從使用者電子郵件映射為 Adobe Experience Manager IDs。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Alfresco 資料來源的使用者內容篩選
當您使用 Alfresco 資料來源時, 會從 Alfresco 執行個體 Amazon Kendra 取得使用者和群組資訊。
群組和使用者 IDs對應如下:
-
_group_ids
- 群組 IDs存在於 Alfresco 中具有設定存取許可的檔案。它們是從 Alfresco 中群組的系統名稱 (而非顯示名稱) 映射。 -
_user_id
- 使用者 IDs存在於 Alfresco 中具有設定存取許可的檔案。它們會從使用者電子郵件映射為 Alfresco IDs。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Aurora (MySQL) 資料來源的使用者內容篩選
當您使用 a Aurora (MySQL) 資料來源時, 會從來源資料表中的資料欄 Amazon Kendra 取得使用者和群組資訊。您可以在主控台中或使用 TemplateConfiguration 物件做為 CreateDataSource API 的一部分來指定此欄。
A Aurora (MySQL) 資料庫資料來源有下列限制:
-
您只能指定資料庫資料來源的允許清單。您無法指定拒絕清單。
-
您只能指定群組。您無法為允許清單指定個別使用者。
-
資料庫資料欄應為字串,其中包含以分號分隔的群組清單。
Aurora (PostgreSQL) 資料來源的使用者內容篩選
當您使用 a Aurora (PostgreSQL) 資料來源時, Amazon Kendra 會從來源資料表中的資料欄取得使用者和群組資訊。您可以在主控台中或使用 TemplateConfiguration 物件做為 CreateDataSource API 的一部分來指定此欄。
A Aurora (PostgreSQL) 資料庫資料來源有下列限制:
-
您只能指定資料庫資料來源的允許清單。您無法指定拒絕清單。
-
您只能指定群組。您無法為允許清單指定個別使用者。
-
資料庫資料欄應為字串,其中包含以分號分隔的群組清單。
Amazon FSx 資料來源的使用者內容篩選
當您使用 Amazon FSx 資料來源時, 會從執行個體的 Amazon FSx 目錄服務 Amazon Kendra 取得使用者和群組資訊。
Amazon FSx 群組和使用者 IDs對應如下:
-
_group_ids
- 群組 IDs存在於具有設定存取許可的檔案上 Amazon FSx 。它們是從 目錄服務中的系統群組名稱映射 Amazon FSx。 -
_user_id
- 具有設定存取許可的檔案 Amazon FSx 上存在 中的使用者 IDs。它們是從 目錄服務中的系統使用者名稱映射 Amazon FSx。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
資料庫資料來源的使用者內容篩選
當您使用資料庫資料來源時,例如 Amazon Aurora PostgreSQL, 會從來源資料表中的資料欄 Amazon Kendra 取得使用者和群組資訊。您可以在 AclConfiguration 物件中指定此欄,做為 CreateDataSource API 中 DatabaseConfiguration 物件的一部分。
資料庫資料來源有下列限制:
-
您只能指定資料庫資料來源的允許清單。您無法指定拒絕清單。
-
您只能指定群組。您無法為允許清單指定個別使用者。
-
資料庫資料欄應為字串,其中包含以分號分隔的群組清單。
Amazon RDS (Microsoft SQL Server) 資料來源的使用者內容篩選
當您使用 Amazon RDS (Microsoft SQL Server) 資料來源時, 會從來源資料表中的資料欄 Amazon Kendra 取得使用者和群組資訊。您可以在主控台中或使用 TemplateConfiguration 物件做為 CreateDataSource API 的一部分來指定此欄。
A Amazon RDS (Microsoft SQL Server) 資料庫資料來源有下列限制:
-
您只能指定資料庫資料來源的允許清單。您無法指定拒絕清單。
-
您只能指定群組。您無法為允許清單指定個別使用者。
-
資料庫資料欄應為字串,其中包含以分號分隔的群組清單。
Amazon RDS (MySQL) 資料來源的使用者內容篩選
當您使用 a Amazon RDS (MySQL) 資料來源時, 會從來源資料表中的資料欄 Amazon Kendra 取得使用者和群組資訊。您可以在 主控台中或使用 TemplateConfiguration 物件做為 CreateDataSource API 的一部分來指定此欄。
A Amazon RDS (MySQL) 資料庫資料來源有下列限制:
-
您只能指定資料庫資料來源的允許清單。您無法指定拒絕清單。
-
您只能指定群組。您無法為允許清單指定個別使用者。
-
資料庫資料欄應為字串,其中包含以分號分隔的群組清單。
Amazon RDS (Oracle) 資料來源的使用者內容篩選
當您使用 a Amazon RDS (Oracle) 資料來源時, Amazon Kendra 會從來源資料表中的資料欄取得使用者和群組資訊。您可以在主控台中或使用 TemplateConfiguration 物件做為 CreateDataSource API 的一部分來指定此欄。
A Amazon RDS (Oracle) 資料庫資料來源有下列限制:
-
您只能指定資料庫資料來源的允許清單。您無法指定拒絕清單。
-
您只能指定群組。您無法為允許清單指定個別使用者。
-
資料庫資料欄應為字串,其中包含以分號分隔的群組清單。
Amazon RDS (PostgreSQL) 資料來源的使用者內容篩選
當您使用 a Amazon RDS (PostgreSQL) 資料來源時, Amazon Kendra 會從來源資料表中的資料欄取得使用者和群組資訊。您可以在主控台中或使用 TemplateConfiguration 物件做為 CreateDataSource API 的一部分來指定此欄。
A Amazon RDS (PostgreSQL) 資料庫資料來源有下列限制:
-
您只能指定資料庫資料來源的允許清單。您無法指定拒絕清單。
-
您只能指定群組。您無法為允許清單指定個別使用者。
-
資料庫資料欄應為字串,其中包含以分號分隔的群組清單。
資料來源的使用者內容篩選 Amazon S3
您可以使用與文件相關聯的中繼資料檔案,將使用者內容篩選新增至 Amazon S3 資料來源中的文件。您可以將資訊新增至 JSON 文件中的 AccessControlList
欄位。如需將中繼資料新增至從 Amazon S3 資料來源編製索引的文件的詳細資訊,請參閱 S3 文件中繼資料。
您提供三種資訊:
-
實體應擁有的存取權。您可以說出
ALLOW
或DENY
。 -
實體的類型。您可以說
USER
或GROUP
。 -
實體的名稱。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Amazon WorkDocs 資料來源的使用者內容篩選
當您使用 Amazon WorkDocs 資料來源時, 會從 Amazon WorkDocs 執行個體 Amazon Kendra 取得使用者和群組資訊。
Amazon WorkDocs 群組和使用者 IDs對應如下:
-
_group_ids
- 群組 IDs存在於具有設定存取許可的檔案 Amazon WorkDocs 上。它們是從 中群組的名稱映射 Amazon WorkDocs。 -
_user_id
- 具有設定存取許可的檔案 Amazon WorkDocs 上存在 中的使用者 IDs。它們是從 中的使用者名稱映射 Amazon WorkDocs。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Box 資料來源的使用者內容篩選
當您使用 Box 資料來源時, 會從 Box 執行個體 Amazon Kendra 取得使用者和群組資訊。
Box 群組和使用者 IDs對應如下:
-
_group_ids
- 群組 IDs存在於具有設定存取許可的檔案的 Box 中。它們是從 Box 中群組的名稱映射。 -
_user_id
- 使用者 IDs存在於具有設定存取許可的檔案上的 Box 中。它們會從使用者電子郵件映射為 Box 中的使用者 IDs。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Confluence 資料來源的使用者內容篩選
當您使用 Confluence 資料來源時, 會從 Confluence 執行個體 Amazon Kendra 取得使用者和群組資訊。
您可以使用空間許可頁面設定使用者和群組對空間的存取。對於頁面和部落格,您可以使用限制頁面。如需空間許可的詳細資訊,請參閱 Confluence Support 網站上的空間許可概觀
Confluence 群組和使用者名稱對應如下:
-
_group_ids
- 群組名稱存在於有限制的空格、頁面和部落格上。它們是從 Confluence 中群組的名稱映射。群組名稱一律為小寫。
-
_user_id
- 有限制的空間、頁面或部落格上會顯示使用者名稱。它們會根據您使用的 Confluence 執行個體類型進行映射。適用於 Confluence 連接器 v1.0
-
Server -
_user_id
是使用者名稱。使用者名稱一律為小寫。 -
Cloud -
_user_id
是 使用者的帳戶 ID。
適用於 Confluence 連接器 v2.0
-
Server -
_user_id
是使用者名稱。使用者名稱一律為小寫。 -
Cloud -
_user_id
是使用者的電子郵件 ID。
重要
若要讓使用者內容篩選能夠正確運作,您需要確保將 Confluence 頁面的使用者授予存取權的可見性設為任何人。如需詳細資訊,請參閱在 Atlassian 開發人員文件中設定您的電子郵件可見
性。 -
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Dropbox 資料來源的使用者內容篩選
當您使用 Dropbox 資料來源時, 會從 Dropbox 執行個體 Amazon Kendra 取得使用者和群組資訊。
群組和使用者 IDs對應如下:
-
_group_ids
- 群組 IDs存在於 Dropbox 中具有設定存取許可的檔案。它們是從 Dropbox 中群組的名稱映射。 -
_user_id
- 使用者 IDs存在於 Dropbox 中具有設定存取許可的檔案。它們會從使用者電子郵件映射為 Dropbox IDs。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Drupal 資料來源的使用者內容篩選
當您使用 Drupal 資料來源時, 會從 Drupalinstance Amazon Kendra 取得使用者和群組資訊。
群組和使用者 IDs對應如下:
-
_group_ids
– IDs 存在於 Drupal 中,在具有設定存取許可的檔案上。它們是從 Drupal 中群組的名稱映射。 -
_user_id
– 使用者 IDs存在於 Drupal 中,在具有設定存取許可的檔案上。它們會從使用者電子郵件映射為 Drupal IDs。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
GitHub 資料來源的使用者內容篩選
當您使用 GitHub 資料來源時, 會從 GitHub 執行個體 Amazon Kendra 取得使用者資訊。
GitHub 使用者 IDs映射方式如下:
-
_user_id
- 使用者 IDs存在於 GitHub 中具有設定存取許可的檔案。它們會從使用者電子郵件映射為 GitHub IDs。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Gmail 資料來源的使用者內容篩選
當您使用 Gmail 資料來源時, 會從 Gmail 執行個體 Amazon Kendra 取得使用者資訊。
使用者 IDs 的映射方式如下:
-
_user_id
– 使用者 IDs存在於 Gmail 中具有設定存取許可的檔案。它們會從使用者電子郵件映射為 Gmail IDs。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Google Drive 資料來源的使用者內容篩選
Google Workspace Drive 資料來源會傳回 Google Drive 使用者和群組的使用者和群組資訊。群組和網域成員資格會對應至_group_ids
索引欄位。Google Drive 使用者名稱會映射到 _user_id
欄位。
當您在 Query
API 中提供一或多個使用者電子郵件地址時,只會傳回已與這些電子郵件地址共用的文件。下列AttributeFilter
參數只會傳回與 "martha@example.com" 共用的文件。
"AttributeFilter": { "EqualsTo":{ "Key": "_user_id", "Value": { "StringValue": "martha@example.com" } } }
如果您在查詢中提供一或多個群組電子郵件地址,則只會傳回與群組共用的文件。下列AttributeFilter
參數只會傳回與 "hr@example.com" 群組共用的文件。
"AttributeFilter": { "EqualsTo":{ "Key": "_group_ids", "Value": { "StringListValue": ["hr@example.com"] } } }
如果您在查詢中提供網域,則會傳回與網域共用的所有文件。下列AttributeFilter
參數會傳回與 "example.com" 網域共用的文件。
"AttributeFilter": { "EqualsTo":{ "Key": "_group_ids", "Value": { "StringListValue": ["example.com"] } } }
您最多可以在 AccessControlList
欄位中新增 200 個項目。
IBM DB2 資料來源的使用者內容篩選
當您使用 IBM DB2 資料來源時, 會從來源資料表中的資料欄 Amazon Kendra 取得使用者和群組資訊。您可以在主控台中或使用 TemplateConfiguration 物件做為 CreateDataSource API 的一部分來指定此欄。
IBM DB2 資料庫資料來源有下列限制:
-
您只能指定資料庫資料來源的允許清單。您無法指定拒絕清單。
-
您只能指定群組。您無法為允許清單指定個別使用者。
-
資料庫資料欄應為字串,其中包含以分號分隔的群組清單。
Jira 資料來源的使用者內容篩選
當您使用 Jira 資料來源時, 會從 Jira 執行個體 Amazon Kendra 取得使用者和群組資訊。
Jira 使用者 IDs的映射方式如下:
-
_user_id
- 使用者 IDs存在於 Jira 中具有設定存取許可的檔案。它們會從使用者電子郵件映射為 Jira 中的使用者 IDs。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Microsoft Exchange 資料來源的使用者內容篩選
當您使用 Microsoft Exchange 資料來源時, 會從 Microsoft Exchange 執行個體 Amazon Kendra 取得使用者資訊。
Microsoft Exchange 使用者 IDs對應如下:
-
_user_id
- 使用者 IDs存在於 Microsoft Exchange 許可中,讓使用者存取特定內容。它們會從使用者名稱映射為 Microsoft Exchange IDs。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Microsoft OneDrive 資料來源的使用者內容篩選
Amazon Kendra 從 Microsoft OneDrive 擷取使用者和群組資訊,當其為網站上的文件編製索引時。使用者和群組資訊取自託管 OneDrive 的基礎 Microsoft SharePoint 網站。
當您使用 OneDrive 使用者或群組篩選搜尋結果時,請計算 ID,如下所示:
-
取得網站名稱。例如
https://host.onmicrosoft.com/sites/siteName.
-
取得網站名稱的 MD5 雜湊。例如:
430a6b90503eef95c89295c8999c7981
。 -
建立使用者電子郵件或群組 ID,方法是將 MD5 雜湊與垂直列 (|) 和 ID 串連。例如,如果群組名稱為 "localGroupName",則群組 ID 將為:
"
430a6b90503eef95c89295c8999c7981 | localGroupName
"注意
在垂直長條之前和之後包含空格。垂直長條用於
localGroupName
識別其 MD5 雜湊。對於使用者名稱 "someone@host.onmicrosoft.com",使用者 ID 如下:
"
430a6b90503eef95c89295c8999c7981 | someone@host.onmicrosoft.com
"
當您呼叫查詢 API 時,將使用者或群組 ID Amazon Kendra 做為 _group_id
_user_id
或 屬性傳送至 。例如,使用 群組來篩選搜尋結果的 AWS CLI 命令如下所示:
aws kendra query \ --index-id
index ID
--query-text "query text
" --attribute-filter '{ "EqualsTo":{ "Key": "_group_id", "Value": {"StringValue": "430a6b90503eef95c89295c8999c7981 | localGroupName"} }}'
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Microsoft OneDrive v2.0 資料來源的使用者內容篩選
Microsoft OneDrive v2.0 資料來源會從 OneDrive 存取控制清單 (ACL) 實體傳回區段和頁面資訊。 Amazon Kendra 會使用 OneDrive 租用戶網域連線至 OneDrive 執行個體,然後可以根據使用者或群組存取區段和檔案名稱來篩選搜尋結果。
對於標準物件, _user_id
和 _group_id
的使用方式如下:
-
_user_id
— 您的 Microsoft OneDrive 使用者電子郵件 ID 會映射到_user_id
欄位。 -
_group_id
— 您的 Microsoft OneDrive 群組電子郵件會映射到_group_id
欄位。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Microsoft SharePoint 資料來源的使用者內容篩選
Amazon Kendra 會在將網站文件編製索引時,從 Microsoft SharePoint 擷取使用者和群組資訊。若要根據使用者或群組存取篩選搜尋結果,請在呼叫 Query
API 時提供使用者和群組資訊。
若要使用使用者名稱進行篩選,請使用使用者的電子郵件地址。例如,johnstiles@example.com。
當您使用 SharePoint 群組篩選搜尋結果時,請計算群組 ID,如下所示:
對於本機群組
-
取得網站名稱。例如
https://host.onmicrosoft.com/sites/siteName.
-
取得網站名稱的 SHA256 雜湊。例如:
430a6b90503eef95c89295c8999c7981
。 -
透過將 SHA256 雜湊與垂直長條 (|) 和群組名稱串連來建立群組 ID。例如,如果群組名稱為 "localGroupName",則群組 ID 將為:
"
430a6b90503eef95c89295c8999c7981 | localGroupName
"注意
在垂直長條之前和之後包含空格。垂直長條用於
localGroupName
識別其 SHA256 雜湊。
當您呼叫查詢 API 時,請將群組 ID Amazon Kendra 做為 _group_id
屬性傳送至 。例如, AWS CLI 命令看起來像這樣:
aws kendra query \ --index-id
index ID
--query-text "query text
" --attribute-filter '{ "EqualsTo":{ "Key": "_group_id", "Value": {"StringValue": "430a6b90503eef95c89295c8999c7981 | localGroupName"} }}'
對於 AD 群組
-
使用 AD 群組 ID 來設定搜尋結果的篩選。
當您呼叫查詢 API 時,請將群組 ID Amazon Kendra 做為 屬性傳送至 _group_id
。例如, AWS CLI 命令看起來像這樣:
aws kendra query \ --index-id
index ID
--query-text "query text
" --attribute-filter '{ "EqualsTo":{ "Key": "_group_id", "Value": {"StringValue": "AD group"} }}'
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Microsoft SQL Server 資料來源的使用者內容篩選
當您使用 Microsoft SQL Server 資料來源時, 會從來源資料表中的資料欄 Amazon Kendra 取得使用者和群組資訊。您可以在主控台中或使用 TemplateConfiguration 物件做為 CreateDataSource API 的一部分來指定此欄。
Microsoft SQL Server 資料庫資料來源有下列限制:
-
您只能指定資料庫資料來源的允許清單。您無法指定拒絕清單。
-
您只能指定群組。您無法為允許清單指定個別使用者。
-
資料庫資料欄應為字串,其中包含以分號分隔的群組清單。
Microsoft Teams 資料來源的使用者內容篩選
Amazon Kendra 從 Microsoft Teams 中擷取使用者資訊,當其為文件編製索引時。使用者資訊取自基礎 Microsoft Teams 執行個體。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Microsoft Yammer 資料來源的使用者內容篩選
Amazon Kendra 從 Microsoft Yammer 中擷取使用者資訊,當其為文件編製索引時。使用者和群組資訊取自基礎 Microsoft Yammer 執行個體。
Microsoft Yammer 使用者 IDs對應如下:
-
_email_id
— 映射至_user_id
欄位的 Microsoft 電子郵件 ID。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
MySQL 資料來源的使用者內容篩選
當您使用 MySQL 資料來源時, 會從來源資料表中的資料欄 Amazon Kendra 取得使用者和群組資訊。您可以在主控台中或使用 TemplateConfiguration 物件做為 CreateDataSource API 的一部分來指定此欄。
MySQL 資料庫資料來源有下列限制:
-
您只能指定資料庫資料來源的允許清單。您無法指定拒絕清單。
-
您只能指定群組。您無法為允許清單指定個別使用者。
-
資料庫資料欄應為字串,其中包含以分號分隔的群組清單。
Oracle 資料庫資料來源的使用者內容篩選
當您使用 Oracle 資料庫資料來源時, 會從來源資料表中的資料欄 Amazon Kendra 取得使用者和群組資訊。您可以在主控台中或使用 TemplateConfiguration 物件做為 CreateDataSource API 的一部分來指定此欄。
Oracle 資料庫資料庫資料來源有下列限制:
-
您只能指定資料庫資料來源的允許清單。您無法指定拒絕清單。
-
您只能指定群組。您無法為允許清單指定個別使用者。
-
資料庫資料欄應為字串,其中包含以分號分隔的群組清單。
PostgreSQL 資料來源的使用者內容篩選
當您使用 PostgreSQL 資料來源時, 會從來源資料表中的資料欄 Amazon Kendra 取得使用者和群組資訊。您可以在主控台中或使用 TemplateConfiguration 物件做為 CreateDataSource API 的一部分來指定此欄。
PostgreSQL 資料庫資料來源有下列限制:
-
您只能指定資料庫資料來源的允許清單。您無法指定拒絕清單。
-
您只能指定群組。您無法為允許清單指定個別使用者。
-
資料庫資料欄應為字串,其中包含以分號分隔的群組清單。
Quip 資料來源的使用者內容篩選
當您使用 Quip 資料來源時, 會從 Quip 執行個體 Amazon Kendra 取得使用者資訊。
Quip 使用者 IDs對應如下:
-
_user_id
- 具有設定存取許可的檔案上,Quip 中存在使用者 IDs。它們會從使用者電子郵件映射為 Quip IDs。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Salesforce 資料來源的使用者內容篩選
Salesforce 資料來源會從 Salesforce 存取控制清單 (ACL) 實體傳回使用者和群組資訊。您可以將使用者內容篩選套用至 Salesforce 標準物件和聊天器摘要。使用者內容篩選不適用於 Salesforce 知識文章。
如果您將任何 Salesforce 欄位映射至 Amazon Kendra 文件標題和文件本文欄位,Amazon Kendra 將使用來自文件標題和本文欄位的資料進行搜尋回應。
對於標準物件, _user_id
和 _group_ids
的使用方式如下:
-
_user_id
- Salesforce 使用者的使用者名稱。 -
_group_ids
—-
Salesforce 的名稱
Profile
-
Salesforce 的名稱
Group
-
Salesforce 的名稱
UserRole
-
Salesforce 的名稱
PermissionSet
-
對於頻繁饋送, _user_id
和 _group_ids
的使用方式如下:
-
_user_id
- Salesforce 使用者的使用者名稱。只有在項目張貼在使用者摘要中時才能使用。 -
_group_ids
- 群組 IDs的使用方式如下。只有在摘要項目張貼在聊天器或協同合作群組中時才能使用。-
聊天器或協作群組的名稱。
-
如果群組是公有的,則為
PUBLIC:ALL
。
-
您最多可以在 AccessControlList
欄位中新增 200 個項目。
ServiceNow 資料來源的使用者內容篩選
只有 TemplateConfiguration API 和 ServiceNow Connector v2.0 才支援 ServiceNow 的使用者內容篩選。ServiceNowConfiguration API 和 ServiceNow Connector v1.0。 不支援使用者內容篩選。
當您使用 ServiceNow 資料來源時, 會從 ServiceNow 執行個體 Amazon Kendra 取得使用者和群組資訊。
群組和使用者 IDs對應如下:
-
_group_ids
- 群組 IDs存在於 ServiceNow 中具有設定存取許可的檔案。它們是從 ServiceNowsys_ids
中 的角色名稱映射。 -
_user_id
- 使用者 IDs存在於 ServiceNow 中具有設定存取許可的檔案。它們會從使用者電子郵件映射為 ServiceNow IDs。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Slack 資料來源的使用者內容篩選
當您使用 Slack 資料來源時, 會從 Slack 執行個體 Amazon Kendra 取得使用者資訊。
Slack 使用者 IDs的映射方式如下:
-
_user_id
- 使用者 IDs存在於具有設定存取許可的訊息和頻道上的 Slack 中。它們會從使用者電子郵件映射為 Slack IDs。
您最多可以在 AccessControlList
欄位中新增 200 個項目。
Zendesk 資料來源的使用者內容篩選
當您使用 Zendesk 資料來源時, 會從 Zendesk 執行個體 Amazon Kendra 取得使用者和群組資訊。
群組和使用者 IDs對應如下:
-
_group_ids
- 群組 IDs存在於具有設定存取許可的 Zendesk 票證和文章中。它們是從 Zendesk 中群組的名稱映射。 -
_user_id
- 群組 IDs存在於具有設定存取許可的 Zendesk 票證和文章中。它們會從使用者電子郵件映射為 Zendesk IDs。
您最多可以在 AccessControlList
欄位中新增 200 個項目。