다음을 통해 공유


탈중앙화 식별자에 대한 도메인 소유권 확인

이 문서에서는 DID(탈중앙화 식별자)에 사용 중인 도메인 이름의 소유권을 확인하는 데 필요한 단계를 검토합니다.

필수 조건

DID에 대한 도메인 소유권을 확인하려면 다음을 수행해야 합니다.

도메인 소유권 확인 및 did-configuration.json 파일 배포

DID에 대한 소유권을 확인하는 도메인은 개요 섹션에 정의되어 있습니다. 이 도메인의 경우 도메인을 사용자가 제어해야 하며 https://www.example.com/ 형식이어야 합니다.

  1. Azure Portal에서 확인된 ID 페이지로 이동합니다.

  2. 설치>도메인 소유권을 확인하고 도메인에 대해 확인합니다.

  3. did-configuration.json 파일을 복사하거나 다운로드합니다.

    잘 알려진 구성 다운로드를 보여 주는 스크린샷.

  4. did-configuration.json 파일을 지정된 위치에 호스트합니다. 예를 들어 도메인을 https://www.example.com(으)로 지정한 경우 파일을 https://www.example.com/.well-known/did-configuration.json에서 스트해야 합니다. URL에는 .well-known path 이름을 제외한 다른 경로가 있을 수 없습니다.

  5. did-configuration.json은(는) .well-known/did-configuration.json에서 공개적으로 사용할 수 있는 경우 새로 고침 확인 상태를 선택하여 확인합니다.

    확인된 잘 알려진 구성을 보여 주는 스크린샷.

  6. Microsoft Authenticator를 통해 발행 및 제시를 테스트하여 유효성을 검사합니다. Authenticator의 안전하지 않은 앱 설정에 대한 경고가 설정되었는지 확인합니다. 설정은 기본적으로 설정됩니다.

확인이 작동하는지 어떻게 확인할 수 있나요?

포털은 did-configuration.json 인터넷을 통해 연결할 수 있고 새로 고침 확인 상태를 선택할 때 유효한지 확인합니다. 인증자는 HTTP 리디렉션을 적용하지 않습니다. HTTPS를 사용하지 않거나, 잘못된 SSL 인증서를 사용하지 않거나, URL이 공개되지 않는 등의 오류를 방지하기 위해 브라우저에서 해당 URL을 요청할 수 있는지 확인하는 것도 고려해야 합니다. 경고나 오류 없이 브라우저나 curl과 같은 도구를 통해 did-configuration.json 파일을 익명으로 요청할 수 있는 경우 포털에서 확인 상태 새로 고침 단계를 완료할 수 없습니다.

참고 항목

확인 상태를 새로 고치는 데 문제가 발생하는 경우 Ubuntu OS를 사용하는 컴퓨터에서 curl -Iv https://yourdomain.com/.well-known/did-configuration.json을(를) 실행하여 문제를 해결할 수 있습니다. Ubuntu를 사용하는 Linux용 Windows 하위 시스템도 작동합니다. curl이 실패하면 확인 상태를 새로 고치는 작업이 작동하지 않습니다.

DID의 도메인 소유권을 확인해야 하는 이유는 무엇인가요?

DID는 기존 시스템에 고정되지 않은 식별자로 시작합니다. DID(탈중앙화 ID)는 사용자 또는 조직이 소유하고 제어할 수 있기 때문에 유용합니다. 조직과 상호 작용하는 엔터티가 DID가 속한 "사람"을 모르는 경우 DID는 그다지 유용하지 않습니다.

DID를 도메인에 연결하면 엔터티가 DID와 도메인 간의 관계를 암호화적으로 확인할 수 있도록 하여 초기 신뢰 문제가 해결됩니다.

확인된 ID는 잘 알려진 DID 구성 사양을 따라 링크를 만듭니다. 확인 가능한 자격 증명 서비스는 DID와 도메인을 연결합니다. 이 서비스에는 DID에서 제공한 도메인 정보가 포함되어 있으며 잘 알려진 구성 파일을 생성합니다.

  1. 확인된 ID는 조직 설정 중에 제공하는 도메인 정보를 사용하여 DID 문서 내에 서비스 엔드포인트를 작성합니다. DID와 상호 작용하는 모든 당사자는 DID와 연결된 도메인을 볼 수 있습니다.

    "service": [
      {
        "id": "#linkeddomains",
        "type": "LinkedDomains",
        "serviceEndpoint": {
          "origins": [
            "https://verifiedid.contoso.com/"
          ]
        }
      }
    ]
    
  2. 확인된 ID의 확인 가능한 자격 증명 서비스는 도메인에서 호스트해야 하는 잘 알려진 규격 구성 리소스를 생성합니다. 구성 파일에는 도메인의 원본이 있는 DID로 서명된 자격 증명 유형 DomainLinkageCredential자체 발급된 확인 가능한 자격 증명이 포함됩니다. 다음은 루트 도메인 URL에 저장된 구성 파일의 예입니다.

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

지갑의 사용자 환경

사용자가 발급 흐름을 진행하거나 확인 가능한 자격 증명을 제공하는 경우 조직 및 조직의 DID에 대한 정보를 알고 있어야 합니다. 인증자는 DID 문서의 도메인과 DID의 관계를 확인하고 결과에 따라 두 가지 환경이 있는 사용자를 제공합니다.

확인된 도메인

인증자가 확인된 아이콘을 표시하기 전에 몇 가지 사항이 true여야 합니다.

  • 자체 발급된 SIOP(Open ID) 요청에 서명하는 DID에는 연결된 도메인에 대한 서비스 엔드포인트가 있어야 합니다.
  • 루트 도메인은 리디렉션을 사용하지 않으며 HTTPS를 사용합니다.
  • DID 문서에 나열된 도메인에는 잘 알려진 해결 가능한 리소스가 있습니다.
  • 잘 알려진 리소스의 확인 가능한 자격 증명은 Authenticator가 흐름을 시작하는 데 사용한 SIOP에 서명하는 데 사용된 것과 동일한 DID로 서명됩니다.

앞에서 언급한 모든 점이 true이면 Authenticator는 확인된 페이지를 표시하고 유효성이 검사된 도메인을 포함합니다.

새 권한 요청을 보여 주는 스크린샷

확인되지 않은 도메인

위의 점 중 하나라도 true가 아닌 경우 Authenticator는 도메인이 확인되지 않았음을 나타내는 전체 페이지 경고를 표시합니다. 사용자에게 잠재적인 위험한 트랜잭션의 중간에 있다는 경고가 표시되고 신중하게 진행해야 합니다. 다음과 같은 이유로 이 경로를 선택했을 수 있습니다.

  • DID는 도메인에 고정되지 않습니다.
  • 구성이 제대로 설정되지 않았습니다.
  • 사용자가 상호 작용하는 DID는 악의적일 수 있으며 실제로 연결된 도메인을 소유하고 있음을 증명할 수 없습니다.

DID를 사용자에게 인식할 수 있는 도메인에 연결하는 것이 매우 중요합니다.

자격 증명 추가 화면에서 확인되지 않은 도메인 경고를 보여 주는 스크린샷

DID에서 연결된 도메인을 업데이트하려면 어떻게 해야 하나요?

웹 트러스트 시스템을 사용하면 연결된 도메인을 업데이트할 수 없습니다. 옵트아웃하고 다시 등록해야 합니다.

개발자가 쉽게 만든 연결된 도메인

참고 항목

DID 등록이 성공하려면 DID 문서를 공개적으로 사용할 수 있어야 합니다.

개발자가 연결된 도메인에 사용할 도메인을 가져오는 가장 쉬운 방법은 Azure Storage 정적 웹 사이트 기능을 사용하는 것입니다. 도메인 이름이 호스트 이름의 일부로 스토리지 계정 이름을 포함하고 있다는 점을 제외하고는 도메인 이름을 제어할 수 없습니다.

연결된 도메인에 사용할 도메인을 빠르게 설정하려면 다음을 수행합니다.

  1. 스토리지 계정 만들기 만드는 동안 StorageV2 (범용 v2 계정) 및 LRS(로컬 중복 스토리지)를 선택합니다.
  2. 스토리지 계정으로 이동하여 맨 왼쪽 메뉴에서 Static 웹 사이트를 선택하고 Static 웹 사이트를 사용하도록 설정합니다. 정적 웹 사이트 메뉴 항목이 표시되지 않으면 V2 스토리지 계정을 만들지 않은 것입니다.
  3. 저장 후 나타나는 기본 엔드포인트 이름을 복사합니다. 이 값은 도메인 이름입니다. https://<your-storageaccountname>.z6.web.core.windows.net/과 같이 표시됩니다.

did-configuration.json 파일을 업로드할 때:

  1. 스토리지 계정으로 이동하여 맨 왼쪽 메뉴에서 컨테이너를 선택합니다. 그런 다음, $web이라는 컨테이너를 선택합니다.
  2. 업로드 선택하고 폴더 아이콘을 선택하여 파일을 찾습니다.
  3. 업로드하기 전에 고급 섹션을 열고 폴더 업로드 텍스트 상자에 .well-known으로 지정합니다.
  4. 파일을 업로드합니다.

이제 https://<your-storageaccountname>.z6.web.core.windows.net/.well-known/did-configuration.json과 같은 URL에서 파일을 공개적으로 사용할 수 있습니다.

다음 단계