Rövid útmutató: Védett webes API-t elérő .NET-konzolalkalmazás
Ez a rövid útmutató egy minta .NET-konzolalkalmazást használ a védett webes API-k saját identitásként való eléréséhez a .NET-hez készült Microsoft Authentication Library (MSAL) használatával. Az alkalmazás egy démonalkalmazás, amely egy bizalmas ügyfélalkalmazás, és az ügyfél hitelesítő adatainak OAuth-folyamatával lekér egy hozzáférési jogkivonatot a Microsoft Graph API meghívásához.
Előfeltételek
- Egy Azure-fiók, aktív előfizetéssel. Ha még nem rendelkezik ilyen fiókkal, hozzon létre ingyenes fiókot.
- A .NET 6.0 SDK minimális követelménye
- Visual Studio 2022 vagy Visual Studio Code
Az alkalmazás és a rekordazonosítók regisztrálása
A regisztráció befejezéséhez adjon meg egy nevet az alkalmazásnak, és adja meg a támogatott fióktípusokat. A regisztrációt követően az Alkalmazás áttekintése panel megjeleníti az alkalmazás forráskódjában szükséges azonosítókat.
Jelentkezzen be a Microsoft Entra felügyeleti központjába.
Ha több bérlőhöz is hozzáfér, a felső menü Gépház ikonjával válthat arra a bérlőre, amelyben regisztrálni szeretné az alkalmazást a Könyvtárak + előfizetések menüből.
Keresse meg az Identitásalkalmazások>> Alkalmazásregisztrációk lehetőséget, és válassza az Új regisztráció lehetőséget.
Adja meg az alkalmazás nevét, például az identity-client-daemon-app nevet.
Támogatott fióktípusok esetén csak ebben a szervezeti címtárban válassza a Fiókok lehetőséget. A különböző fióktípusokkal kapcsolatos információkért válassza a Súgó kiválasztása lehetőséget.
Válassza ki a pénztárgépet.
A regisztráció befejezésekor megjelenik az alkalmazás Áttekintés panelje. Jegyezze fel a címtár (bérlő) azonosítóját, az alkalmazás (ügyfél) azonosítóját és az alkalmazás forráskódjában használandó objektumazonosítót .
Feljegyzés
A támogatott fióktípusok módosíthatók az alkalmazás által támogatott fiókok módosításával.
Titkos ügyfélkód létrehozása
- A Microsoft Entra Felügyeleti központban keresse meg az Identitásalkalmazások>> Alkalmazásregisztrációk lehetőséget.
- Válassza ki a korábban regisztrált alkalmazást.
- Az alkalmazás Áttekintés paneljén válassza a Tanúsítványok > titkos>kódok új ügyféltitkot.
- Adja meg a titkos kód leírását a Leírás mezőben.
- Válassza ki a titkos kód lejárati idejét.
- Válassza a Hozzáadás lehetőséget.
- Jegyezze fel az ügyfélkulcs értékét . Az érték csak egyszer jelenik meg, ezért mindenképpen jegyezze fel.
A mintaalkalmazás klónozása vagy letöltése
A mintaalkalmazás beszerzéséhez klónozhatja a GitHubról, vagy letöltheti .zip fájlként.
A minta klónozásához nyisson meg egy parancssort, és keresse meg a projektet, és írja be a következő parancsot:
git clone https://github.com/Azure-Samples/ms-identity-docs-code-dotnet.git
Töltse le a .zip fájlt. Bontsa ki egy fájl elérési útjára, ahol a név hossza kevesebb, mint 260 karakter.
A projekt konfigurálása
Az IDE-ben nyissa meg a mintát tartalmazó ms-identity-docs-code-dotnet/console-daemon projektmappát.
Nyissa meg Program.cs , és cserélje le a fájl tartalmát a következő kódrészletre;
// Full directory URL, in the form of https://login.microsoftonline.com/<tenant_id> Authority = " https://login.microsoftonline.com/Enter_the_tenant_ID_obtained_from_the_Microsoft_Entra_admin_center", // 'Enter the client ID obtained from the Microsoft Entra admin center ClientId = "Enter the client ID obtained from the Microsoft Entra admin center", // Client secret 'Value' (not its ID) from 'Client secrets' in the Microsoft Entra admin center ClientSecret = "Enter the client secret value obtained from the Microsoft Entra admin center", // Client 'Object ID' of app registration in Microsoft Entra admin center - this value is a GUID ClientObjectId = "Enter the client Object ID obtained from the Microsoft Entra admin center"
Authority
- A szolgáltató egy URL-cím, amely egy olyan könyvtárat jelöl, amelytől az MSAL jogkivonatokat kérhet. Cserélje le a Enter_the_tenant_ID a címtár (bérlő) azonosítójának korábban rögzített értékére.ClientId
- Az alkalmazás azonosítója, más néven az ügyfél. Cserélje le az idézőjelek szövegét aApplication (client) ID
regisztrált alkalmazás áttekintő oldaláról korábban rögzített értékre.ClientSecret
– Az alkalmazáshoz a Microsoft Entra felügyeleti központban létrehozott ügyfélkód. Adja meg az ügyfél titkos kódjának értékét .ClientObjectId
- Az ügyfélalkalmazás objektumazonosítója. Cserélje le az idézőjelek szövegét aObject ID
regisztrált alkalmazás áttekintő oldaláról korábban rögzített értékre.
Az alkalmazás futtatása
Egy terminálban keresse meg az ms-identity-docs-code-dotnet/console-daemon nevű projektkönyvtárat.
Futtassa a következő parancsot az alkalmazás létrehozásához és futtatásához:
dotnet run
Az alkalmazás fut, és a következőhöz hasonló választ jelenít meg (rövidítve a rövidítéshez):
{ "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#applications/$entity", "id": "00001111-aaaa-2222-bbbb-3333cccc4444", "deletedDateTime": null, "appId": "00001111-aaaa-2222-bbbb-3333cccc4444", "applicationTemplateId": null, "disabledByMicrosoftStatus": null, "createdDateTime": "2021-01-17T15:30:55Z", "displayName": "identity-dotnet-console-app", "description": null, "groupMembershipClaims": null, ... }
Kapcsolódó tartalom
- Ebből a ASP.NET webalkalmazásból a következő oktatóanyagból tájékozódhat: Alkalmazás regisztrálása a Microsoft Identitásplatform.
- Rövid útmutató: A ASP.NET Core webes API védelme a Microsoft Identitásplatform.
- Rövid útmutató: ASP.NET webalkalmazás üzembe helyezése Azure-alkalmazás Szolgáltatásban