閱讀英文

共用方式為


啟用 did:web:path 支援

在本文中,我們會探討為您的授權單位啟用 did:web:path 支援的步驟。

必要條件

  • 受驗證的識別碼授權單位是使用 did:web 手動上線的。 快速設定會使用由無法擴充且由 Microsoft 管理的功能網域名稱。

什麼是 did:web:path?

did:web:path 在<did:web 方法規格>中描述。 如果您有需要使用大量授權單位的環境,取得它們的網域名稱會成為系統管理問題。 使用單一網域並讓不同的授權單位顯示為網域下的路徑可能是較有利的方法。

啟用支援 did:web:path 的網域

根據預設,租用戶和授權單位不會啟用支援 did:web:path。 您可以透過在 Microsoft Entra 系統管理中心建立新的支援要求,以要求授權單位啟用 did:web:path。

支援票證詳細資料:

  • 問題類型:Technical
  • 服務類型:Microsoft Entra Verified ID
  • 問題類型:Configuration organization and domains
  • 摘要:Enable did:web:path request
  • 描述:請務必包括
    • 您的 Microsoft Entra tenant ID
    • 您的 did (範例:did:web:verifiedid.contoso.com)
    • 預估的子路徑數目
    • 業務理由

如何測試我的授權單位是否已啟用?

您的支援要求得到確認,但您也可以在一般瀏覽器中驗證是否已啟用 did:web 網域。 藉由新增不存在的路徑(:do-not-exist在下列範例中),如果授權單位未啟用,則會收到具有程式代碼的錯誤訊息,但如果已啟用,則為程序代碼discovery_service.web_method_path_not_supporteddiscovery_service.not_found

https://discover.did.msidentity.com/v1.0/identifiers/did:web:my-domain.com:do-not-exist

如何使用 did:web:path 設定授權單位?

為您的租用戶和授權單位啟用 did:web:path 之後,您可以在使用 did:web:path 的相同租用戶中建立新的授權單位。 目前需要使用管理員 API,因為入口網站中不支援它。

  1. 取得現有授權單位的詳細資料
    • 移至 Verified ID | Overview 並複製網域 (範例:https://verifiedid.contoso.com/)
    • 移至 Verified ID | Organization settings 並記下正在設定的金鑰保存庫。
    • 移至金鑰保存庫資源,並複製 resource groupsubscription IDVault URI
  2. 使用下列 JSON 主體 (視需要修改) 呼叫建立授權單位。 路徑中的 /my-path 是指定要使用的路徑名稱的位置。
POST /v1.0/verifiableCredentials/authorities

{
  "name":"ExampleNameForPath",
  "linkedDomainUrl":"https://my-domain.com/my-path",
  "didMethod": "web",
  "keyVaultMetadata":
  {
    "subscriptionId":"aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
    "resourceGroup":"verifiablecredentials",
    "resourceName":"vccontosokv",
    "resourceUrl": "https://vccontosokv.vault.azure.net/"
  }
}
  1. 呼叫 generateDidDocument,其中 newAuthorityIdForPath 為建立授權單位回覆中的 id 屬性,以產生新授權單位的 did 文件:
POST /v1.0/verifiableCredentials/authorities/:newAuthorityIdForPath/generateDidDocument
  1. 將文件回覆儲存至名為 did.json 的檔案,並將它上傳至與用於建立授權單位的 API 呼叫中的 linkedDomainUrl 相符的 Web 伺服器位置。 如果您的路徑是 https://my-domain.com/my-path,新的 did.json 檔案必須位於該位置。

  2. 透過使用下列 JSON 主體 (視需要修改) 呼叫 generateWellknownDidConfiguration API 來擷取連結網域的設定。 domainUrl 是沒有路徑的網域名稱

POST /v1.0/verifiableCredentials/authorities/:newAuthorityIdForPath/generateWellknownDidConfiguration

{
    "domainUrl":"https://my-domain.com/"
}
  1. 從回覆中,複製 linked_dids 集合內的 JWT 權杖。

  2. 在您的 Web 伺服器上,在編輯器中開啟檔案 https://my-domain.com/.well-known/did.configuration.json ,並將 JWT 權杖新增為 linked_dids 集合內的新項目。 新增後,其外觀應該如下所示。

{
  "@context": "https://identity.foundation/.well-known/contexts/did-configuration-v0.0.jsonld",
  "linked_dids": [
    "eyJh...old...U7cw",
    "eyJh...new...V8dx",
  ]
}
  1. 儲存檔案。

使用新的 did:web:path 授權單位建立合約

必須使用系統管理 API 來建立合約。 次要授權單位目前沒有使用者介面支援。

在新的 did:web:path 授權單位中發行基於認證的合約

若要讓應用程式根據新 did:web:path 授權單位中的合約發出認證,您只需要變更要求酬載中的 authority 字段為 createIssuanceRequest API。

{
  "authority": "did:web:my-domain.com:my-path",
  "includeQRCode": false,
  ... the rest is the same...
}