Problém s Ověřené ID Microsoft Entra přihlašovacími údaji z aplikace
V tomto kurzu spustíte ukázkovou aplikaci z místního počítače, který se připojí k vašemu tenantovi Microsoft Entra. Pomocí aplikace vydáte a ověříte ověřenou kartu odborníka na přihlašovací údaje.
V tomto článku získáte informace o těchto tématech:
- Vytvořte ověřenou kartu odborníka na přihlašovací údaje v Azure.
- Shromážděte přihlašovací údaje a podrobnosti o prostředí pro nastavení ukázkové aplikace.
- Stáhněte si vzorový kód aplikace do místního počítače.
- Aktualizujte ukázkovou aplikaci pomocí ověřené karty expertů na přihlašovací údaje a podrobností o prostředí.
- Spusťte ukázkovou aplikaci a zadejte první ověřenou kartu odborníka na přihlašovací údaje.
- Ověřte ověřenou kartu odborníka na přihlašovací údaje.
Následující diagram znázorňuje architekturu Ověřené ID Microsoft Entra a komponentu, kterou nakonfigurujete.
Požadavky
- Nastavte tenanta pro Ověřené ID Microsoft Entra.
- Pokud chcete naklonovat úložiště, které je hostitelem ukázkové aplikace, nainstalujte GIT.
- Visual Studio Code, Visual Studio nebo podobný editor kódu.
- .NET 7.0.
- Stáhněte si ngrok a zaregistrujte si bezplatný účet. Pokud ve vaší organizaci nemůžete použít
ngrok
, přečtěte si tyto nejčastější dotazy. - Mobilní zařízení s nejnovější verzí aplikace Microsoft Authenticator.
Vytvoření ověřené karty expertů na přihlašovací údaje v Azure
Tip
Postup v tomto článku se může mírně lišit v závislosti na portálu, od který začínáte.
V tomto kroku vytvoříte ověřenou kartu odborníka na přihlašovací údaje pomocí Ověřené ID Microsoft Entra. Jakmile vytvoříte přihlašovací údaje, může ho váš tenant Microsoft Entra vydat uživatelům, kteří proces zahájili.
Přihlaste se do Centra pro správu Microsoft Entra jako globální správce.
Vyberte Ověřitelné přihlašovací údaje.
Po nastavení tenanta by se měly zobrazit přihlašovací údaje Vytvořit. Případně můžete v nabídce vlevo vybrat Přihlašovací údaje a vybrat + Přidat přihlašovací údaje.
V Vytvořit přihlašovací údajevyberte Vlastní přihlašovací údaje a vyberte Další:
Jako název přihlašovacích údajů zadejte VerifiedCredentialExpert. Tento název se používá na portálu k identifikaci ověřitelných přihlašovacích údajů. Je součástí ověřitelné smlouvy s přihlašovacími údaji.
Zkopírujte následující JSON a vložte ho do textového pole Definice zobrazení .
{ "locale": "en-US", "card": { "title": "Verified Credential Expert", "issuedBy": "Microsoft", "backgroundColor": "#000000", "textColor": "#ffffff", "logo": { "uri": "https://didcustomerplayground.z13.web.core.windows.net/VerifiedCredentialExpert_icon.png", "description": "Verified Credential Expert Logo" }, "description": "Use your verified credential to prove to anyone that you know all about verifiable credentials." }, "consent": { "title": "Do you want to get your Verified Credential?", "instructions": "Sign in with your account to get your card." }, "claims": [ { "claim": "vc.credentialSubject.firstName", "label": "First name", "type": "String" }, { "claim": "vc.credentialSubject.lastName", "label": "Last name", "type": "String" } ] }
Zkopírujte následující JSON a vložte ho do textového pole Definice pravidel.
{ "attestations": { "idTokenHints": [ { "mapping": [ { "outputClaim": "firstName", "required": true, "inputClaim": "$.given_name", "indexed": false }, { "outputClaim": "lastName", "required": true, "inputClaim": "$.family_name", "indexed": true } ], "required": false } ] }, "validityInterval": 2592000, "vc": { "type": [ "VerifiedCredentialExpert" ] } }
Vyberte Vytvořit.
Následující snímek obrazovky ukazuje, jak vytvořit nové přihlašovací údaje:
Shromáždění přihlašovacích údajů a podrobností o prostředí
Teď, když máte nové přihlašovací údaje, shromáždíte některé informace o vašem prostředí a přihlašovacích údaji, které jste vytvořili. Tyto informace použijete při nastavování ukázkové aplikace.
V části Ověřitelné přihlašovací údaje vyberte Problém s přihlašovacími údaji.
Zkopírujte autoritu, což je decentralizovaný identifikátor, a poznamenejte si ji pro pozdější použití.
Zkopírujte adresu URL manifestu. Jedná se o adresu URL, kterou Authenticator vyhodnotí, než se zobrazí požadavkům na ověření přihlašovacích údajů uživatele. Poznamenejte si ho pro pozdější použití.
Zkopírujte ID tenanta a poznamenejte si ho pro pozdější použití. ID tenanta je identifikátor GUID v adrese URL manifestu zvýrazněné červeně nahoře.
Stažení ukázkového kódu
Ukázková aplikace je k dispozici v .NET a kód se udržuje v úložišti GitHub. Stáhněte si ukázkový kód z GitHubu nebo naklonujte úložiště do místního počítače:
git clone https://github.com/Azure-Samples/active-directory-verifiable-credentials-dotnet.git
Konfigurace ověřitelné aplikace s přihlašovacími údaji
Vytvořte tajný klíč klienta pro zaregistrovanou aplikaci, kterou jste vytvořili. Ukázková aplikace používá tajný klíč klienta k prokázání své identity při žádosti o tokeny.
Přihlaste se do Centra pro správu Microsoft Entra jako globální správce.
Vyberte Microsoft Entra ID.
Přejděte na stránku Aplikace> Registrace aplikací.
Vyberte ověřitelnou aplikaci aplikace přihlašovacích údajů, kterou jste vytvořili dříve.
Výběrem jména přejděte do podrobností o registraci.
Zkopírujte ID aplikace (klienta) a uložte ho pro pozdější použití.
V hlavní nabídce v části Spravovat vyberte Certifikáty a tajné kódy.
Vyberte Nový tajný klíč klienta a postupujte takto:
Do popisu zadejte popis tajného klíče klienta (například vc-sample-secret).
V části Konec platnosti vyberte dobu, po kterou je tajný klíč platný (například šest měsíců). Pak vyberte Přidat.
Poznamenejte si hodnotu tajného kódu. Tuto hodnotu použijete pro konfiguraci v pozdějším kroku. Hodnota tajného kódu se znovu nezobrazí a není k dispozici žádným jiným způsobem. Poznamenejte si ho, jakmile bude vidět.
V tomto okamžiku byste měli mít všechny požadované informace, které potřebujete k nastavení ukázkové aplikace.
Aktualizace ukázkové aplikace
Teď provedete úpravy kódu vystavitele ukázkové aplikace, abyste ho aktualizovali pomocí ověřitelné adresy URL přihlašovacích údajů. Tento krok umožňuje vydávat ověřitelné přihlašovací údaje pomocí vlastního tenanta.
Ve složce active-directory-verifiable-credentials-dotnet-main otevřete Visual Studio Code a vyberte projekt uvnitř složky 1-asp-net-core-api-idtokenhint.
V kořenové složce projektu otevřete soubor appsettings.json . Tento soubor obsahuje informace o vašem prostředí Ověřené ID Microsoft Entra. Aktualizujte následující vlastnosti s informacemi, které jste si poznamenali v předchozích krocích:
- ID tenanta: ID tenanta
- ID klienta: ID klienta
- Tajný klíč klienta: tajný klíč klienta
- DidAuthority: Váš decentralizovaný identifikátor
- Manifest přihlašovacích údajů: Adresa URL manifestu
CredentialType je potřeba jenom pro prezentaci, takže pokud chcete jenom vystavování udělat, není to nezbytně nutné.
Uložte soubor appsettings.json.
Následující json ukazuje úplný soubor appsettings.json :
{
"VerifiedID": {
"Endpoint": "https://verifiedid.did.msidentity.com/v1.0/verifiableCredentials/",
"VCServiceScope": "3db474b9-6a0c-4840-96ac-1fceb342124f/.default",
"Instance": "https://login.microsoftonline.com/",
"TenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"ClientId": "00001111-aaaa-2222-bbbb-3333cccc4444",
"ClientSecret": "123456789012345678901234567890",
"CertificateName": "[Or instead of client secret: Enter here the name of a certificate (from the user cert store) as registered with your application]",
"DidAuthority": "did:web:...your-decentralized-identifier...",
"CredentialType": "VerifiedCredentialExpert",
"CredentialManifest": "https://verifiedid.did.msidentity.com/v1.0/00001111-aaaa-2222-bbbb-3333cccc4444/verifiableCredentials/contracts/VerifiedCredentialExpert"
}
}
Vydání první ověřené karty odborníka na přihlašovací údaje
Teď jste připraveni vydat první ověřenou kartu odborníka na přihlašovací údaje spuštěním ukázkové aplikace.
V editoru Visual Studio Code spusťte projekt Verifiable_credentials_DotNet . Nebo z příkazového řádku operačního systému spusťte:
cd active-directory-verifiable-credentials-dotnet\1-asp-net-core-api-idtokenhint dotnet build "AspNetCoreVerifiableCredentials.csproj" -c Debug -o .\bin\Debug\net6. dotnet run
V jiném okně příkazového řádku spusťte následující příkaz. Tento příkaz spustí nástroj ngrok , který nastaví adresu URL na 5000 a zpřístupní ji veřejně na internetu.
ngrok http 5000
Poznámka:
V některých počítačích může být nutné spustit příkaz v tomto formátu:
./ngrok http 5000
.Otevřete adresu URL HTTPS vygenerovanou ngrokem.
Ve webovém prohlížeči vyberte Získat přihlašovací údaje.
Pomocí mobilního zařízení naskenujte kód QR pomocí aplikace Authenticator. Další informace o skenování kódu QR naleznete v části nejčastější dotazy.
V tuto chvíli se zobrazí zpráva s upozorněním, že tato aplikace nebo web může být riziková. Vyberte Upřesnit.
V upozornění na rizikový web vyberte Přesto pokračovat (nebezpečné). Toto upozornění se zobrazuje, protože vaše doména není propojená s vaším decentralizovaným identifikátorem (DID). Pokud chcete ověřit doménu, postupujte podle odkazu na vaši doménu s decentralizovaným identifikátorem (DID). Pro účely tohoto kurzu můžete registraci domény přeskočit a přesto vybrat Pokračovat (nebezpečné).
Zobrazí se výzva k zadání kódu PIN, který se zobrazí na obrazovce, na které jste kód QR naskenovali. Pin kód přidá do vystavování další vrstvu ochrany. Kód PIN se náhodně vygeneruje při každém zobrazení kódu QR vystavení.
Po zadání čísla PIN se zobrazí obrazovka Přidat přihlašovací údaje . V horní části obrazovky se zobrazí neověřená zpráva (červeně). Toto upozornění souvisí s upozorněním na ověření domény, které jsme zmínili dříve.
Pokud chcete přijmout nové ověřitelné přihlašovací údaje, vyberte Přidat .
Gratulujeme! Teď máte ověřené ověřitelné přihlašovací údaje odborníka na přihlašovací údaje.
Vraťte se do ukázkové aplikace. Ukazuje, že přihlašovací údaje byly úspěšně vydány.
Ověřitelné názvy přihlašovacích údajů
Ověřitelné přihlašovací údaje obsahují Megan Bowen pro hodnoty křestní jména a příjmení v přihlašovacích údajích. Tyto hodnoty byly pevně zakódovány v ukázkové aplikaci a byly přidány k ověřitelným přihlašovacím údajům v době vystavení v datové části.
V reálných scénářích vaše aplikace načítá podrobnosti o uživateli od zprostředkovatele identity. Následující fragment kódu ukazuje, kde je název nastavený v ukázkové aplikaci.
//file: IssuerController.cs
[HttpGet("/api/issuer/issuance-request")]
public async Task<ActionResult> issuanceRequest()
{
...
// Here you could change the payload manifest and change the first name and last name.
payload["claims"]["given_name"] = "Megan";
payload["claims"]["family_name"] = "Bowen";
...
}
Další kroky
V dalším kroku se dozvíte, jak aplikace třetí strany, označovaná také jako aplikace předávající strany, může ověřit vaše přihlašovací údaje pomocí vlastní služby rozhraní API ověřitelných přihlašovacích údajů tenanta Microsoft Entra.