View a markdown version of this page

文件層級存取控制 - Amazon Bedrock

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

文件層級存取控制

ACL 意識不是授權

Bedrock 受管知識庫提供 ACL 感知篩選,而不是安全界限。Bedrock 受管知識庫不會驗證最終使用者 — 您的應用程式負責驗證使用者並傳遞已驗證的身分內容。由於 Bedrock 受管知識庫無法驗證您提供的使用者內容的真實性,因此此功能會根據您提供的身分篩選結果,但不會構成真正的授權。在沒有上游身分驗證的情況下,您不得依賴此功能做為唯一存取控制機制。

Confluence 資料來源可選擇性地支援文件層級存取控制。啟用時,Bedrock 受管知識庫會在每個網路爬取期間同步 Confluence 的存取控制清單 (ACLs),並在查詢時驗證每個使用者的許可,因此使用者只會看到他們獲授權在 Confluence 中存取的文件結果。如需所有連接器的 ACL 意識概觀,請參閱 存取控制清單意識啟用

運作方式

當使用者查詢使用啟用 ACL 的 Confluence 資料來源的知識庫時,Bedrock 受管知識庫會分兩個階段強制執行存取控制:

  • 擷取前篩選 — Bedrock 受管知識庫會套用上次網路爬取期間從 Confluence 同步的存取控制清單,只傳回允許使用者 (或其群組) 存取的候選文件。

  • 即時驗證 — Bedrock 受管知識庫透過在 Confluence 中查詢使用者目前的存取權,即時驗證候選文件。只有使用者目前獲授權存取的文件才會包含在回應中。

這種兩階段方法提供文件層級的存取控制,即使 Confluence 許可在同步之間變更,也能保持最新狀態。

爬取的內容

啟用 ACLs時,Bedrock 受管知識庫會從 Confluence 爬取下列許可結構:

  • 空間 — 預設情況下,空間許可會套用至空間中的所有文件。

  • 頁面 — 頁面可以限制為特定使用者和群組。巢狀頁面會從父頁面繼承限制。

  • 部落格 — 部落格文章可以限制為特定使用者和群組。

  • 附件 — 連接至頁面或部落格文章的檔案會繼承其父文件的存取控制。

啟用 ACL 意識

若要啟用 Confluence 資料來源的 ACL 意識,請在 true中將 aclEnabled設定為 BASIC connectorParameters,並使用 身分驗證類型。除了標準電子郵件和 API 字符之外,秘密還必須包含 Atlassian 組織管理員憑證。身分爬取需要這些管理員登入資料。

重要

ACL 組態是永久的。您無法在無 ACLs 支援的情況下建立的資料來源上啟用 ACL,而且一旦啟用,就無法停用 ACLs。

除了標準 usernamepassword(API 字符) 和 hostUrl 欄位, AWS Secrets Manager 秘密必須包含下列組織管理員欄位。如需取得這些值step-by-step說明,請參閱 設定 Confluence 的基本身分驗證

  • adminApiKey — 具有 read:directories:adminread:workspaces:admin範圍的 Atlassian 組織 API 金鑰。

  • organizationId — 您 Atlassian 組織的 UUID。

  • directoryId — Confluence 工作區的使用者目錄 UUID。

注意

啟用 ACL 的 Confluence 資料來源不支援 OAUTH2身分驗證類型。您必須在秘密中使用 BASIC搭配 Atlassian 組織管理員登入資料。

即時存取驗證

Bedrock 受管知識庫使用秘密中設定的 Atlassian Admin API 字符,在查詢時間完全伺服器端針對 Confluence 驗證每個候選文件 — 沒有最終使用者登入。管理員權杖會檢查查詢使用者目前的空間、頁面和部落格限制,因此遵守自上次爬蟲以來所做的存取變更。

驗證您的組態

您可以獨立於擷取請求來驗證您的登入資料。執行下列各項檢查:

  1. Confluence 內容存取 (爬蟲)

    • 使用秘密中的 username和 API 字符 (password),呼叫 Confluence REST API (例如,列出空格) 並確認傳回 HTTP 200。

  2. Atlassian Admin API (身分爬取和即時驗證)

    • 確認 adminApiKey具有 read:directories:adminread:workspaces:admin範圍。

    • 使用 adminApiKey,呼叫您 的 Atlassian 管理員目錄 APIdirectoryIdorganizationId並確認它傳回您組織的使用者和群組。

疑難排解

注意

ACL 設定錯誤不會在擷取期間產生明確的錯誤。擷取失敗關閉:已無提示地省略受影響的文件,因此查詢會傳回較少或零的結果,而不是錯誤。使用上述驗證檢查來診斷這些問題。

啟用 ACL 的 Confluence 症狀、原因和修正
徵狀 可能原因 修正
擷取會傳回 0 個結果,但使用者在 Confluence 中具有存取權。 Atlassian Admin API 金鑰缺少範圍,或 organizationId/directoryId 錯誤,因此無法解析使用者和群組限制。 確認 adminApiKey具有 read:directories:adminread:workspaces:admin,以及 organizationIddirectoryId 是正確的。
爬取或同步失敗。 username 或 API 字符 (password) 無效。 驗證秘密中的BASIC使用者名稱和 API 字符。
所有使用者在先前運作後都會遭到拒絕。 API 字符或管理員 API 金鑰已過期或已撤銷。 在秘密中輪換受影響的登入資料。