Sdílet prostřednictvím


Rychlý start: Přihlášení uživatelů a volání rozhraní Microsoft Graph API z webové aplikace ASP.NET Core

V tomto rychlém startu použijete ukázkovou webovou aplikaci ASP.NET Core k přihlášení uživatelů pomocí toku autorizačního kódu a zavolání rozhraní Microsoft Graph API. Ukázka používá Microsoft Authentication Library pro .NET a Microsoft Identity Web k zajištění ověřování.

Požadavky

Registrace identifikátorů aplikace a záznamů

K dokončení registrace zadejte název aplikace a zadejte podporované typy účtů. Po registraci aplikace podokno Přehled zobrazí identifikátory potřebné ve zdrojovém kódu aplikace.

  1. Přihlaste se do centra správy Microsoft Entra .

  2. Pokud máte přístup k více tenantům, pomocí ikony Nastavení v horní nabídce přepněte do tenanta, ve kterém chcete aplikaci zaregistrovat z nabídky Adresáře a předplatná.

  3. Přejděte na Identity>Applications>Registrace aplikací, vyberte Nová registrace.

  4. Zadejte název aplikace, například identity-client-web-app.

  5. U podporovaných typů účtůvyberte pouze účty v tomto organizačním adresáři. Pokud chcete získat informace o různých typech účtů, vyberte možnost Pomozte mi zvolit možnost.

  6. Vyberte Zaregistrovat.

    Snímek obrazovky, který ukazuje, jak zadat jméno a vybrat typ účtu v Centru pro správu Microsoft Entra.

  7. Po dokončení registrace se zobrazí podokno Přehled aplikace. Poznamenejte ID adresáře (tenanta) a ID aplikace (klient), které se mají použít ve zdrojovém kódu aplikace.

    Snímek obrazovky, který zobrazuje hodnoty identifikátoru na stránce přehledu v Centru pro správu Microsoft Entra

    Poznámka

    Typy podporovaných účtů lze změnit odkazem na Upravit účty podporované aplikací.

Přidejte identifikátor URI přesměrování platformy

Pokud chcete zadat typ aplikace pro registraci aplikace, postupujte takto:

  1. V části Spravovatvyberte Ověřování.
  2. Na stránce konfigurací platformy vyberte Přidat platformua pak vyberte možnost Web.
  3. Pro přesměrovací URI zadejte https://localhost:5001/signin-oidc.
  4. Pod URL odhlášení front-kanáluzadejte https://localhost:5001/signout-callback-oidc pro odhlášení.
  5. Výběrem Konfigurace uložte změny.

Klonování nebo stažení ukázkové aplikace

Pokud chcete získat ukázkovou aplikaci, můžete ji buď naklonovat z GitHubu, nebo si ji stáhnout jako soubor .zip.

  • Pokud chcete ukázku naklonovat, otevřete příkazový řádek a přejděte do umístění, kam chcete projekt vytvořit, a zadejte následující příkaz:

    git clone https://github.com/Azure-Samples/ms-identity-docs-code-dotnet.git
    
  • Stáhněte soubor .zip. Extrahujte ho do cesty k souboru, kde délka názvu je menší než 260 znaků.

Vytvoření a nahrání certifikátu podepsaného svým držitelem

K zabezpečení aplikace přidáte do aplikace certifikát. V této části se dozvíte, jak vytvořit certifikát podepsaný svým držitelem a nahrát ho do registrace aplikace v Centru pro správu Microsoft Entra.

Poznámka

Certifikáty podepsané svým držitelem by se měly používat jenom při vývoji. V produkčním prostředí byste měli použít certifikát od důvěryhodné certifikační autority.

  1. Pomocí terminálu pomocí následujících příkazů přejděte k vytvoření certifikátu podepsaného svým držitelem v adresáři projektu.

    cd ms-identity-docs-code-dotnet\web-app-aspnet\
    dotnet dev-certs https -ep ./certificate.crt --trust
    
  2. Vraťte se do Centra pro správu Microsoft Entra a v části Spravovatvyberte Certifikáty & tajných kódů>Nahrát certifikát.

  3. Vyberte kartu Certifikáty (0), a pak vyberte Nahrát certifikát.

  4. Zobrazí se podokno Nahrát certifikát. Pomocí ikony přejděte k souboru certifikátu, který jste vytvořili v předchozím kroku, a vyberte Otevřít.

  5. Zadejte popis certifikátu, například Certifikát pro aspnet-web-app, a vyberte Přidat.

  6. Poznamenejte si hodnotu otisku palce pro použití v dalším kroku.

Konfigurace projektu

  1. V integrovaném vývojovém prostředí otevřete složku projektu ms-identity-docs-code-dotnet\web-app-aspnetobsahující ukázku.

  2. Otevřete appsettings.json a nahraďte obsah souboru následujícím fragmentem kódu;

    {
    "AzureAd": {
      "Instance": "https://login.microsoftonline.com/",
      "TenantId": "Enter the tenant ID obtained from the Microsoft Entra admin center",
      "ClientId": "Enter the client ID obtained from the Microsoft Entra admin center",
      "ClientCertificates": [
        {
          "SourceType": "StoreWithThumbprint",
          "CertificateStorePath": "CurrentUser/My",
          "CertificateThumbprint": "Enter the certificate thumbprint obtained the Microsoft Entra admin center"
        }   
      ],
      "CallbackPath": "/signin-oidc"
    },
      "DownstreamApi": {
        "BaseUrl": "https://graph.microsoft.com/v1.0/",
        "RelativePath": "me",
        "Scopes": [ 
          "user.read" 
        ]
      },
      "Logging": {
        "LogLevel": {
          "Default": "Information",
          "Microsoft.AspNetCore": "Warning"
        }
      },
      "AllowedHosts": "*"
    }
    
    • TenantId – identifikátor tenanta, ve kterém je aplikace zaregistrovaná. Nahraďte text v uvozovkách Directory (tenant) ID, který byl zaznamenán dříve ze stránky přehledu registrované aplikace.
    • ClientId – identifikátor aplikace, označovaný také jako klient. Nahraďte text v uvozovkách hodnotou Application (client) ID, která byla zaznamenána dříve ze stránky přehledu registrované aplikace.
    • ClientCertificates – Certifikát podepsaný svým držitelem se používá k ověřování v aplikaci. Nahraďte text CertificateThumbprint kryptografickým otiskem certifikátu, který byl dříve zaznamenán.

Spuštění aplikace a přihlášení

  1. V adresáři projektu pomocí terminálu zadejte následující příkaz;

    dotnet run
    
  2. Zkopírujte https adresu URL, která se zobrazí v terminálu, například https://localhost:5001a vložte ji do prohlížeče. Doporučujeme použít soukromou nebo anonymní relaci prohlížeče.

  3. Postupujte podle pokynů a zadejte potřebné podrobnosti pro přihlášení pomocí účtu Microsoft. Požadujete, abyste zadali e-mailovou adresu, aby vám bylo možné poslat jednorázové heslo. Po zobrazení výzvy zadejte kód.

  4. Aplikace požaduje oprávnění k údržbě přístupu k datům, ke kterým jste jim udělili přístup, a k přihlášení a čtení profilu. Vyberte Přijmout.

  5. Zobrazí se následující snímek obrazovky, který označuje, že jste se přihlásili k aplikaci a že jste z rozhraní Microsoft Graph API přistupovali k podrobnostem profilu.

    snímek obrazovky znázorňující výsledky volání rozhraní API

Odhlaste se z aplikace

  1. Najděte odkaz Odhlásit se v pravém horním rohu stránky a vyberte ho.
  2. Zobrazí se výzva k výběru účtu, ze kterém se chcete odhlásit. Vyberte účet, který jste použili k přihlášení.
  3. Zobrazí se zpráva s oznámením, že jste se odhlásili. Teď můžete okno prohlížeče zavřít.