View a markdown version of this page

設定服務登入資料 - Amazon Quick

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

設定服務登入資料

在 Amazon Quick 中建立知識庫之前,請先完成 AWS 和 Microsoft Entra ID 中的下列組態步驟。您可以建立 KMS 簽署金鑰、產生憑證、在 Entra 中註冊應用程式,以及授予 Amazon Quick 使用該金鑰的許可。

此設定涉及多個系統,可能需要組織中不同管理員之間的協調。下表摘要說明每個步驟和完成步驟所需的角色。

設定步驟和角色
步驟 您執行的動作 所需的角色
1. KMS 金鑰 在 AWS KMS 中建立非對稱簽署金鑰。 AWS 管理員 (KMS 和 IAM 主控台存取)
2. 憑證 使用 KMS 公有金鑰產生自我簽署憑證。 與步驟 1 相同 (需要AWS CLI 和 OpenSSL)
3. Entra 應用程式 在 Microsoft Entra 中註冊應用程式、指派 API 許可,以及上傳憑證。 Microsoft 365 全域管理員或特殊權限角色管理員
3b. Sites.Selected (選用) 建立臨時管理員應用程式,並透過 Microsoft Graph API 授予每個站台的許可。 Microsoft 365 全球管理員 (與步驟 3 相同)
4. KMS 金鑰存取 授予 Amazon Quick 許可,以使用 KMS 金鑰進行簽署。 Amazon Quick Administrator (Admin Pro)
5. 建立 KB 使用先前步驟中的登入資料在 Amazon Quick 中建立知識庫。 任何 Amazon Quick 使用者 (Author Pro 或 Admin Pro)
提示

在許多組織中,具有 AWS 和 Microsoft 365 管理員存取權的單一人員可以完成所有步驟。如果責任跨團隊分割,請共用此資料表來協調設定。

先決條件

開始前,請確定您有下列項目:

  • 具有作用中 Amazon Quick 執行個體 AWS 的帳戶。

  • 存取 AWS KMS 主控台 (用於建立簽署金鑰)。

  • 授予 KMS 金鑰許可的 Amazon Quick Administrator 存取 (Admin Pro 角色)。

  • 具有 SharePoint Online 的 Microsoft 365 租用戶。

  • Microsoft Entra ID 中的全域管理員或特殊權限角色管理員存取權。

  • OpenSSL 3.0 或更新版本,並在本機安裝 AWS CLI。

  • AWS 帳戶和 Amazon Quick 執行個體必須位於相同的區域。

許可

您指派的許可取決於兩個選擇:

  • 您是否計劃啟用文件層級存取控制 (ACL 爬取)。

  • 無論您想要授予對所有 SharePoint 網站或僅特定網站的存取權。

選擇您的許可範圍

根據預設,Entra 應用程式註冊會使用 Sites.Read.AllSites.FullControl.All,這會授予您租用戶中所有 SharePoint 網站的存取權。如果您的組織需要最低權限的存取,您可以Sites.Selected改為使用 。透過 Sites.Selected,應用程式只能存取您明確授予許可的網站。

許可範圍比較
Scope (範圍) 存取 其他步驟
所有網站 (預設) 應用程式可以讀取租用戶中的所有 SharePoint 網站。
Sites.Selected 應用程式只能存取您明確授予的網站。 需要每個網站的臨時管理員應用程式和 Microsoft Graph API 呼叫。請參閱 步驟 3b:授予網站層級許可 (僅限 Sites.Selected)
注意

如果您使用 Sites.Selected,則必須個別授予每個網站的存取權。未來新增至知識庫的任何新網站也需要單獨的許可授予。

所有網站 – 僅限內容 (無 ACL)

僅限內容許可
API 權限 Type
Microsoft Graph Sites.Read.All 應用程式
SharePoint REST Sites.Read.All 應用程式

所有網站 – 使用 ACL 爬取

ACL 爬取許可
API 權限 Type
Microsoft Graph Sites.Read.All 應用程式
Microsoft Graph User.Read.All 應用程式
Microsoft Graph GroupMember.Read.All 應用程式
SharePoint REST Sites.FullControl.All 應用程式
重要

選擇上述資料表中的所有站台許可或下表中的Sites.Selected許可。請勿合併兩者。如果您不確定,請從所有網站開始。如有需要,您可以Sites.Selected稍後使用 建立新的 Entra 應用程式註冊。

Sites.Selected – 僅限內容 (無 ACL)

Sites.Selected 內容限定許可
API 權限 Type
Microsoft Graph Sites.Selected 應用程式
SharePoint REST Sites.Selected 應用程式

Sites.Selected – 使用 ACL 爬取

Sites.Selected ACL 爬取許可
API 權限 Type
Microsoft Graph Sites.Selected 應用程式
Microsoft Graph User.Read.All 應用程式
Microsoft Graph GroupMember.Read.All 應用程式
SharePoint REST Sites.Selected 應用程式
注意

管理員受管設定不支援 OneNote 爬取 (Notes.Read.All)。Microsoft 已於 2025 年 3 月 31 日淘汰 OneNote APIs 的應用程式限定權杖。針對 OneNote 內容使用者受管設定使用 。

在設定期間收集的值

下表摘要說明您在設定期間建立或收集的值,以及您使用這些值的位置。

值參考
Value 在步驟 中建立 用於步驟
KMS 金鑰 ARN 1 (KMS) 2 (憑證)、4 (IAM)、快速設定
憑證檔案 (certificate.cer) 2 (憑證) 3 (額外上傳)
憑證指紋 (base64url) 2 (憑證) 快速設定
應用程式 (用戶端) ID 3 (Entra) 快速設定
目錄 (租戶) ID 3 (Entra) 快速設定
SharePoint 網域 URL 您的 M365 租用戶 快速設定

步驟 1:建立 AWS KMS 非對稱簽署金鑰

使用 Microsoft Entra ID 驗證時,Amazon Quick 會使用 AWS KMS 非對稱金鑰簽署 OAuth 聲明。私有金鑰永遠不會離開 KMS。只有公有金鑰會匯出並內嵌在上傳到 Entra 應用程式註冊的憑證中。

建立 KMS 金鑰

  1. 開啟 AWS KMS 主控台

  2. 在左側導覽列中,選擇客戶自管金鑰

  3. 選擇建立金鑰

設定金鑰

設定金鑰頁面上,設定下列值:

KMS 金鑰組態
設定 Value
Key type 非對稱
金鑰用途 簽署和驗證
金鑰規格 RSA_2048
金鑰資料來源 KMS (建議)
區域性 單一區域金鑰 (預設)。不支援多區域金鑰。

新增標籤

新增標籤頁面上,輸入金鑰的別名。例如:quick-sharepoint-service-auth

注意

以下頁面上的金鑰管理員和金鑰使用許可是選用的。預設值足以進行此設定。您可以在步驟 4 中分別授予 Amazon Quick 對金鑰的存取權。

選擇略過以檢閱,然後選擇完成以建立金鑰。

記錄金鑰 ARN

建立金鑰後,開啟金鑰詳細資訊頁面並記錄金鑰 ARN。ARN 採用下列格式:

arn:aws:kms:us-west-2:123456789012:key/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

當您在 Quick 中建立知識庫時,您需要在步驟 2、4 和 中使用此值。

步驟 2:產生自我簽署憑證

Microsoft Entra ID 需要 X.509 憑證來驗證已簽署的聲明。由於 KMS 私有金鑰永遠不會離開 AWS KMS,因此您無法直接將其與 OpenSSL 搭配使用。反之,您會產生臨時本機金鑰對並建立憑證簽署請求。然後,使用 OpenSSL -force_pubkey選項將 KMS 公有金鑰插入最終憑證。結果是自我簽署的憑證,其公有金鑰符合 KMS 金鑰對。

先決條件

  • AWS 已安裝並設定 CLI。

  • OpenSSL 3.0 或更新版本。

  • 步驟 1 中的 KMS 金鑰 ARN。

產生憑證

在終端機中執行下列命令。將預留位置值取代為您自己的值。

驗證 OpenSSL 版本

openssl version

確認輸出顯示 3.0 版或更新版本。

匯出 KMS 公有金鑰

aws kms get-public-key \ --key-id KMS_KEY_ARN \ --region REGION \ --output text \ --query PublicKey | base64 --decode > public_key.der
注意

在 macOS 上,base64 -D根據您的 shell 環境使用 base64 --decode或 。

將公有金鑰轉換為 PEM 格式

openssl rsa -pubin -inform DER -in public_key.der -outform PEM -out kms_public_key.pem

產生臨時本機金鑰對

openssl genrsa -out temp_private_key.pem 2048

建立憑證簽署請求

openssl req -new \ -key temp_private_key.pem \ -out cert.csr \ -subj "/CN=QuickSharePointServiceAuth/O=YourOrganization/C=US"

使用 KMS 公有金鑰產生憑證

openssl x509 -req \ -in cert.csr \ -signkey temp_private_key.pem \ -out certificate.pem \ -days 730 \ -force_pubkey kms_public_key.pem
注意

OpenSSL 會顯示警告 Signature key and public key of cert do not match。這是預期的,因為憑證是以臨時本機金鑰簽署,但包含 KMS 公有金鑰。憑證有效且能正確搭配 Microsoft Entra 使用。

轉換為 DER 格式以進行 Entra 上傳

openssl x509 -in certificate.pem -outform DER -out certificate.cer

清除暫存檔案

rm -f temp_private_key.pem cert.csr public_key.der kms_public_key.pem certificate.pem
重要

保留 certificate.cer 檔案。您可以在步驟 3 中將其上傳至 Microsoft Entra ID。

計算憑證指紋

執行下列命令來計算憑證的 base64url 編碼 SHA-1 指紋:

openssl dgst -sha1 -binary certificate.cer | base64 | tr '+/' '-_' | tr -d '='

記錄此值。當您在 Quick 中建立知識庫時,請輸入它。

注意

base64url 編碼的指紋與 Microsoft Entra 入口網站中顯示的十六進位指紋不同。Quick 需要 base64url 格式。

步驟 3:在 Microsoft Entra ID 中註冊應用程式

無論您是否使用全站許可或 ,都需要此步驟Sites.Selected。唯一的差別是您在 設定 API 許可區段中指派的 API 許可。

註冊應用程式

  1. 登入 Microsoft Entra 管理中心

  2. 在左側導覽中,展開 Entra ID,然後選擇應用程式註冊

  3. 選擇新增註冊

  4. 對於名稱,輸入 QuickSharePointServiceAuth

  5. 對於支援的 帳戶類型僅選取此組織目錄中的帳戶 (單一租戶)

  6. 重新導向 URI 保留空白。不需要重新導向 URI,因為應用程式使用用戶端登入資料流程,而不是互動式登入流程。

  7. 選擇註冊

記錄應用程式詳細資訊

在應用程式概觀頁面上,記錄下列值:

應用程式詳細資訊
Value Location
應用程式 (用戶端) ID 顯示在 Essentials 下的概觀頁面上。
目錄 (租戶) ID 顯示在 Essentials 下的概觀頁面上。

設定 API 許可

新增符合您使用案例的許可。從 許可區段中的資料表選擇許可。根據許可範圍 (所有網站或 Site.Selected) 以及是否啟用 ACL 爬取來選擇。

僅限內容 – Microsoft Graph

  • Sites.Read.All

僅限內容 – SharePoint

  • Sites.Read.All

ACL 爬取 – Microsoft Graph (額外)

  • Sites.Read.All

  • User.Read.All

  • GroupMember.Read.All

ACL 爬取 – SharePoint

  • Sites.FullControl.All

注意

Sites.FullControl.All ACL 爬取需要 ,因為 SharePoint REST API 需要完全控制許可才能讀取網站層級和項目層級許可指派。如果您使用的是 Sites.Selected,請參閱 步驟 3b:授予網站層級許可 (僅限 Sites.Selected) 以取得替代許可集。

  1. 在應用程式註冊的左側導覽中,選擇 API 許可

  2. 選擇新增許可

  3. 選擇 Microsoft 圖形

  4. 選擇應用程式許可

  5. 搜尋並選擇使用案例所需的 Microsoft Graph 許可,然後選擇新增許可

  6. 再次選擇新增許可

  7. 選擇 SharePoint (在 Microsoft APIs下)。

  8. 選擇應用程式許可

  9. 搜尋並選擇使用案例所需的 SharePoint 許可,然後選擇新增許可

重要

選取應用程式許可索引標籤,而非委派許可。管理員受管設定使用用戶端登入資料流程,這需要應用程式許可。

  1. API 許可頁面上,選擇授予 【您的組織】 的管理員同意

  2. 出現提示時確認同意。

重要

應用程式許可需要管理員同意。如果沒有它,應用程式就無法存取 SharePoint 資料。

上傳憑證

  1. 在應用程式註冊的左側導覽中,選擇憑證和秘密

  2. 選擇 Certificates (憑證) 索引標籤。

  3. 選擇上傳憑證

  4. 選取您在步驟 2 中產生的certificate.cer檔案。

  5. 選擇新增

注意

Entra 入口網站會以十六進位格式顯示憑證指紋。這與您在步驟 2 中計算的 base64url 編碼指紋不同。當您在 Quick 中設定知識庫時,請使用 base64url 值。

步驟 3b:授予網站層級許可 (僅限 Sites.Selected)

如果您選擇 Sites.Selected作為許可範圍,則必須明確授予 Amazon Quick Entra 應用程式存取每個 SharePoint 網站的權限。這需要具有呼叫 Microsoft Graph API Sites.FullControl.All許可的臨時管理員應用程式。

如果您使用全站台許可範圍 (Sites.Read.All 或 ),請略過此步驟Sites.FullControl.All

取得每個 SharePoint 網站的網站 ID

您需要要授予存取權的每個 SharePoint 網站的網站 ID。若要取得站台 ID:

  1. 在您的瀏覽器中,導覽至 SharePoint 網站 (例如 https://yourcompany.sharepoint.com/sites/SiteName)。

  2. 附加/_api/site/id至 URL 並按下 Enter。例如:https://yourcompany.sharepoint.com/sites/SiteName/_api/site/id

  3. 此頁面會顯示包含站台 ID (GUID) 的 XML 回應。記錄此值。

針對您要包含在知識庫中的每個網站重複此步驟。

建立臨時管理員應用程式

管理員應用程式僅用於將網站層級許可授予您的 Amazon Quick 應用程式。您可以在完成此步驟後將其刪除。

  1. Microsoft Entra 管理中心,前往應用程式註冊並選擇新增註冊

  2. 針對名稱,輸入描述性名稱,例如 Quick-SharePoint-PermissionGranter

  3. 對於支援的 帳戶類型僅選取此組織目錄中的帳戶 (單一租戶)

  4. 重新導向 URI 保留空白,然後選擇註冊

  5. 從概觀頁面記錄應用程式 (用戶端) ID

  6. 選擇 API 許可,然後選擇新增許可

  7. 選擇 Microsoft Graph,然後選擇應用程式許可。搜尋並選取 Sites.FullControl.All。選擇新增許可

  8. 選擇授予 【您的組織】 的管理員同意並確認。

  9. 選擇憑證和秘密,然後選擇新用戶端秘密。輸入描述,選擇過期期間,然後選擇新增

  10. 立即記錄秘密。此值只會顯示一次。

重要

複製秘密,而不是秘密 ID。值是用於身分驗證的較長字串。

取得存取字符

使用管理員應用程式登入資料從 Microsoft Entra 擷取 OAuth 權杖。將預留位置值取代為管理員應用程式的用戶端 ID、秘密值和租用戶 ID。

macOS 和 Linux (bash)

curl -s --location "https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/token" \ --header "Content-Type: application/x-www-form-urlencoded" \ --data-urlencode "grant_type=client_credentials" \ --data-urlencode "client_id=ADMIN_APP_CLIENT_ID" \ --data-urlencode "client_secret=ADMIN_APP_SECRET_VALUE" \ --data-urlencode "scope=https://graph.microsoft.com/.default"

Windows (PowerShell)

$tokenResponse = Invoke-RestMethod ` -Uri "https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/token" ` -Method Post ` -ContentType "application/x-www-form-urlencoded" ` -Body @{ grant_type = "client_credentials" client_id = "ADMIN_APP_CLIENT_ID" client_secret = "ADMIN_APP_SECRET_VALUE" scope = "https://graph.microsoft.com/.default" } $adminToken = $tokenResponse.access_token

回應包含 access_token 欄位。記錄下一個步驟的此值。

授予網站層級許可

使用 管理員字符授予 Amazon Quick Entra 應用程式fullcontrol存取每個 SharePoint 網站的權限。將預留位置值取代為您的站台 ID、管理員字符,以及來自步驟 3 的用戶端應用程式 ID 和顯示名稱。

macOS 和 Linux (bash)

curl -s --location "https://graph.microsoft.com/v1.0/sites/SITE_ID/permissions" \ --header "Content-Type: application/json" \ --header "Authorization: Bearer ADMIN_TOKEN" \ --data '{ "roles": ["fullcontrol"], "grantedToIdentities": [{ "application": { "id": "CLIENT_APP_ID", "displayName": "CLIENT_APP_NAME" } }] }'

Windows (PowerShell)

$body = @{ roles = @("fullcontrol") grantedToIdentities = @( @{ application = @{ id = "CLIENT_APP_ID" displayName = "CLIENT_APP_NAME" } } ) } | ConvertTo-Json -Depth 10 Invoke-RestMethod ` -Uri "https://graph.microsoft.com/v1.0/sites/SITE_ID/permissions" ` -Method Post ` -Headers @{ "Content-Type" = "application/json" "Authorization" = "Bearer $adminToken" } ` -Body $body

成功的回應包含 "roles": ["fullcontrol"]grantedToIdentities 欄位中的用戶端應用程式 ID。

重要

針對您要包含在知識庫中的每個 SharePoint 網站重複此命令。未來新增的任何新網站也需要單獨的許可授予。

清除

授予所有必要網站的許可後,您可以從 Microsoft Entra 管理中心刪除臨時管理員應用程式。您授予的網站層級許可會獨立於管理員應用程式保持有效。

注意

暫時管理員應用程式僅用於您的本機環境,以呼叫 Microsoft Graph API。Amazon Quick 永遠不會看到或存取管理員應用程式或其登入資料。建立知識庫時,只會將用戶端應用程式登入資料提供給 Amazon Quick。

步驟 4:授予 Amazon Quick 許可給 KMS 金鑰

Amazon Quick 需要許可,才能使用 KMS 金鑰簽署 OAuth 聲明。您可以從 Amazon Quick admin 主控台授予此許可。

注意

此步驟需要 Amazon Quick 管理員存取權 (Admin Pro 角色)。如果您不是管理員,請要求 Amazon Quick admin 使用步驟 1 的 KMS 金鑰 ARN 完成此步驟。

重要

如果您的組織管理自己的 Amazon Quick IAM 服務角色,則可能不適用下列主控台步驟。反之,請確保角色具有步驟 1 中 KMS 金鑰 ARN 的kms:Sign許可。

  1. 在 Amazon Quick 中,從左側導覽窗格中選擇管理帳戶

  2. 許可下,選擇AWS 資源

  3. 在 AWS 資源頁面上,捲動至 AWS Key Management Service 並選取核取方塊。

  4. 選擇選取金鑰

  5. 選取 KMS 金鑰對話方塊中,輸入您在步驟 1 中記錄的 KMS 金鑰 ARN,然後選擇新增

  6. 金鑰 ARN 會出現在清單中。選擇完成

  7. 選擇資源頁面底部的 AWS 儲存

後續步驟

完成設定後,請在 Amazon Quick 中建立 SharePoint Online 知識庫連線。如需說明,請參閱在 Amazon Quick 中建立知識庫