確認您分散式識別碼的網域擁有權

在本文中,我們會檢閱驗證您用於分散式標識碼 (DID) 之域名擁有權所需的步驟。

必要條件

若要確認您 DID 的網域擁有權,您需要:

確認網域擁有權並散發did-configuration.json檔案

您在概觀區段中定義了您驗證 DID 擁有權的網域。 網域必須是您控制件下的網域,且其格式 https://www.example.com/應為 。

  1. 從 Azure 入口網站,移至 [已驗證的標識符] 頁面。

  2. 選取 [設定>驗證網域擁有權],然後選取 [驗證網域]。

  3. 複製或下載 did-configuration.json 檔案。

    顯示下載已知組態的螢幕快照。

  4. did-configuration.json 檔案裝載在指定的位置。 例如,如果您指定網域 https://www.example.com,則檔案必須載入在 https://www.example.com/.well-known/did-configuration.json。 除了名稱之外 .well-known path ,URL 中沒有其他路徑。

  5. 在 URL 公開提供時did-configuration.json,請選取 [重新整理驗證狀態] 來確認.well-known/did-configuration.json它。

    顯示已驗證已知組態的螢幕快照。

  6. 測試向 Microsoft Authenticator 發出或呈現以驗證。 請確定 [ 驗證器中關於不安全的應用程式 警告] 設定已開啟。 設定預設為開啟。

如何確認驗證是否正常運作?

當您選取 [重新整理驗證狀態] 時,did-configuration.json入口網站會確認可透過因特網連線並有效。 驗證器不接受 HTTP 重新導向。 您也應該考慮確認您可以在瀏覽器中要求該 URL,以避免使用 HTTPS、不正確的 SSL 憑證或 URL 未公開的錯誤。 did-configuration.json如果無法在瀏覽器中或透過之類的curl工具匿名要求檔案,而沒有警告或錯誤,入口網站就無法完成重新整理驗證狀態步驟。

注意

如果您在重新整理驗證狀態時遇到問題,您可以在具有UbuntuOS的電腦上執行 curl -Iv https://yourdomain.com/.well-known/did-configuration.json ,進行疑難解答。 Windows 子系統 Linux 版 與Ubuntu也一起運作。 如果 curl 失敗,重新整理驗證狀態將無法運作。

為什麼我需要驗證我們 DID 的網域擁有權?

DID 會以未錨定至現有系統的標識碼開始。 DID 很有用,因為使用者或組織可以擁有並控制它。 如果與組織互動的實體不知道 DID 所屬的「誰」,則 DID 並不那麼有用。

將 DID 連結到網域可藉由允許任何實體以密碼編譯方式驗證 DID 與網域之間的關聯性,來解決初始信任問題。

已驗證的標識碼會 遵循已知的 DID 組態 規格來建立連結。 可驗證的認證服務會連結您的 DID 和網域。 此服務包含您在 DID 中提供的網域資訊,並產生已知的組態檔:

  1. 驗證的標識碼會使用您在組織設定期間提供的網域資訊,在 DID 檔中撰寫服務端點。 與 DID 互動的各方都可以看到您的 DID 宣稱要與其建立關聯的網域。

    "service": [
      {
        "id": "#linkeddomains",
        "type": "LinkedDomains",
        "serviceEndpoint": {
          "origins": [
            "https://verifiedid.contoso.com/"
          ]
        }
      }
    ]
    
  2. [已驗證標識符] 中的可驗證認證服務會產生您必須在網域上裝載的相容已知組態資源。 組態檔包含認證類型的自我發行可驗證認證,該認證類型 DomainLinkageCredential是使用您的 DID 簽署,其來源為網域。 以下是儲存在根域 URL 的組態檔範例。

    {
      "@context": "https://identity.foundation/.well-known/contexts/did-configuration-v0.0.jsonld",
      "linked_dids": [
        "jwt..."
      ]
    }
    

錢包中的用戶體驗

當使用者進行發行流程或呈現可驗證的認證時,他們應該知道組織及其 DID 的相關信息。 驗證器會驗證 DID 與 DID 檔中網域的關聯性,並根據結果向使用者呈現兩種不同的體驗。

已驗證的網域

在 Authenticator 顯示 已驗證的 圖示之前,必須有一些點為 true:

  • DID 簽署自我發行的開啟識別碼 (SIOP) 要求必須具有連結網域的服務端點。
  • 根域不會使用重新導向並使用 HTTPS。
  • DID 檔中所列的網域具有可解析的已知資源。
  • 已知資源的可驗證認證會以用來簽署驗證器用來啟動流程的 SIOP 的相同 DID 簽署。

如果先前提及的所有點都為 true,則 Authenticator 會顯示已驗證的頁面,並包含已驗證的網域。

顯示新許可權要求的螢幕快照。

未驗證的網域

如果上述任何點都不是 true,Authenticator 會顯示完整頁面警告,指出網域未驗證。 使用者被警告,他們處於潛在的風險交易中間,應該謹慎行事。 他們可能已選擇採用此路由,因為:

  • DID 未錨定至網域。
  • 設定未正確設定。
  • 與用戶互動的 DID 可能是惡意的,實際上無法證明他們擁有已連結的網域。

請務必將 DID 連結到使用者可辨識的網域。

顯示 [新增認證] 畫面上未驗證網域警告的螢幕快照。

如何? 更新我 DID 上連結的網域嗎?

使用 Web 信任系統時,不支援更新連結網域。 您必須退出宣告並再次上線。

連結網域可供開發人員輕鬆使用

注意

DID 檔必須公開可供 DID 註冊成功。

開發人員取得連結網域使用網域最簡單的方式,就是使用 Azure 儲存體 靜態網站功能。 您無法控制功能變數名稱是什麼,不同之處在於它包含記憶體帳戶名稱做為其主機名的一部分。

若要快速設定要用於連結網域的網域:

  1. 建立儲存體帳戶。 在建立期間,選取 [儲存體 V2(一般用途 v2 帳戶)和本地備援記憶體 (LRS)。
  2. 移至記憶體帳戶,然後選取 最左邊功能表上的 [靜態網站 ],然後啟用 [靜態網站]。 如果您看不到 靜態網站 功能表項,則未建立 V2 儲存器帳戶。
  3. 複製儲存後顯示的主要端點名稱。 此值是您功能變數名稱。 其看起來像 https://<your-storageaccountname>.z6.web.core.windows.net/

是時候上傳 did-configuration.json 檔案了:

  1. 移至記憶體帳戶,然後選取 最左邊功能表上的 [容器 ]。 然後選取名為 $web 的容器。
  2. 選取 [上傳 ],然後選取資料夾圖示以尋找您的檔案。
  3. 在您上傳之前,請先開啟 [進階] 區段,然後在 [上傳至資料夾] 文本框中指定 .known
  4. 上傳 檔案。

您現在已在類似的 URL https://<your-storageaccountname>.z6.web.core.windows.net/.well-known/did-configuration.json中公開提供您的檔案。

下一步