Ler em inglês

Partilhar via


Habilite o suporte para did:web:path

Neste artigo, abordamos as etapas para habilitar o suporte para did:web:path para sua autoridade.

Pré-requisitos

  • A autoridade de identificação verificada é integrada manualmente usando did:web. A configuração rápida usa um nome de domínio gerenciado pela Microsoft que não pode ser estendido.

O que é did:web:path?

Did:web:path é descrito na especificação do método did:web. Se você tem um ambiente em que é necessário usar um grande número de autoridades, adquirir nomes de domínio para elas se torna um problema administrativo. Usar um único domínio e fazer com que as diferentes autoridades apareçam como caminhos sob o domínio pode ser uma abordagem mais favorável.

Ativar domínio para suporte did:web:path

Por padrão, um locatário e uma autoridade não estão habilitados para oferecer suporte a did:web:path. Você solicita a ativação de did:web:path para sua autoridade por meio da criação de uma nova solicitação de suporte no centro de administração do Microsoft Entra.

Detalhes do ticket de suporte:

  • Tipo de problema: Technical
  • Tipo de serviço: Microsoft Entra Verified ID
  • Tipo de problema: Configuration organization and domains
  • Sumário: Enable did:web:path request
  • Descrição: Certifique-se de incluir
    • O seu Microsoft Entra tenant ID
    • O seu did (exemplo: did:web:verifiedid.contoso.com)
    • Número estimado de subcaminhos
    • Justificação Comercial

Como posso testar se a minha autoridade está ativada?

Você recebe confirmação sobre sua solicitação de suporte, mas também pode verificar se um domínio did:web está habilitado para did:web:path testando-o em um navegador normal. Ao adicionar um caminho que não existe (:do-not-exist no exemplo a seguir), você recebe uma mensagem de erro com o código discovery_service.web_method_path_not_supported se sua autoridade não estiver habilitada, mas o código discovery_service.not_found se estiver habilitado.

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

Como configuro uma autoridade usando did:web:path?

Depois que seu locatário e autoridade estiverem habilitados para did:web:path, você poderá criar uma nova autoridade no mesmo locatário que usa did:web:path. Atualmente, isso requer o uso da API de administrador, pois não há suporte no portal para isso.

  1. Obtenha informações sobre a sua autoridade existente
    • Ir para Verified ID | Overview e copiar domínio (exemplo: https://verifiedid.contoso.com/)
    • Vá para Verified ID | Organization settings e anote qual cofre da chave está sendo configurado.
    • Vá para o recurso Cofre de chaves e copie o resource group, o subscription IDe o Vault URI
  2. Chame a autoridade de criação com o seguinte corpo JSON (modifique conforme necessário). O /my-path no caminho é onde você especifica o nome do caminho a ser usado.
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. Gere o documento did para a nova autoridade chamando generateDidDocument onde newAuthorityIdForPath é o id atributo na resposta create authority:
POST /v1.0/verifiableCredentials/authorities/:newAuthorityIdForPath/generateDidDocument
  1. Salve a resposta do documento feito em um arquivo chamado did.json e carregue-o para o local em seu servidor Web que corresponda à linkedDomainUrl chamada da API para criar a autoridade. Se o caminho for https://my-domain.com/my-path, o novo arquivo did.json deverá residir nesse local.

  2. Recupere o domínio vinculado fez a configuração chamando generateWellknownDidConfiguration API com o seguinte corpo JSON (modifique conforme necessário). O domainUrl é o nome de domínio sem o caminho

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

{
    "domainUrl":"https://my-domain.com/"
}
  1. A partir da resposta, copie o token JWT dentro da linked_dids coleção.

  2. Em seu servidor web, abra o arquivo https://my-domain.com/.well-known/did.configuration.json em um editor e adicione o token JWT como uma nova entrada dentro da coleção linked_dids. Deve ser algo parecido com isso depois de adicioná-lo.

{
  "@context": "https://identity.foundation/.well-known/contexts/did-configuration-v0.0.jsonld",
  "linked_dids": [
    "eyJh...old...U7cw",
    "eyJh...new...V8dx",
  ]
}
  1. Guarde o ficheiro.

Criação de contratos usando a nova autoridade did:web:path

Os contratos precisam ser criados usando a API de administrador. Atualmente, não há suporte à interface do usuário para autoridades secundárias.

Emissão de contratos baseados em credenciais na nova autoridade did:web:path

Para que os aplicativos emitam credenciais com base em contratos na nova autoridade did:web:path, você só precisa alterar o authority campo na carga útil da solicitação para createIssuanceRequest API.

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