Habilite o suporte para did:web:path
Neste artigo, abordamos as etapas para habilitar o suporte para did:web:path para sua autoridade.
- 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.
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.
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
- O seu Microsoft Entra
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
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.
- 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
, osubscription ID
e oVault URI
- Ir para
- 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/"
}
}
- Gere o documento did para a nova autoridade chamando generateDidDocument onde
newAuthorityIdForPath
é oid
atributo na resposta create authority:
POST /v1.0/verifiableCredentials/authorities/:newAuthorityIdForPath/generateDidDocument
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 forhttps://my-domain.com/my-path
, o novo arquivo did.json deverá residir nesse local.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/"
}
A partir da resposta, copie o token JWT dentro da
linked_dids
coleção.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",
]
}
- Guarde o ficheiro.
Os contratos precisam ser criados usando a API de administrador. Atualmente, não há suporte à interface do usuário para autoridades secundárias.
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...
}