Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Mile widziany! Prawdopodobnie nie jest to oczekiwana strona. Chociaż pracujemy nad poprawką, ten link powinien podjąć Cię do odpowiedniego artykułu:
Przepraszamy za niedogodności i doceniamy cierpliwość, podczas gdy pracujemy nad rozwiązaniem tego problemu.
W tym przewodniku Szybki start pobierzesz i uruchomisz przykładowy kod, który pokazuje, jak aplikacja Windows Presentation Foundation (WPF) może logować użytkowników i uzyskiwać token dostępu w celu wywołania interfejsu API programu Microsoft Graph.
Aby zobaczyć ilustrację, sprawdź jak działa próbka.
Krok 1. Konfigurowanie aplikacji w witrynie Azure Portal
Aby przykładowy kod w tym szybkim starcie działał, dodaj identyfikator URI przekierowania oraz https://login.microsoftonline.com/common/oauth2/nativeclientms-appx-web://microsoft.aad.brokerplugin/{client_id}.
Aplikacja jest skonfigurowana przy użyciu tych atrybutów.
Krok 2. Pobieranie projektu programu Visual Studio
Uruchom projekt przy użyciu programu Visual Studio 2019.
Wskazówka
Aby uniknąć błędów spowodowanych ograniczeniami długości ścieżki w systemie Windows, zalecamy wyodrębnienie archiwum lub sklonowanie repozytorium do katalogu w pobliżu katalogu głównego dysku.
Krok 3. Aplikacja jest skonfigurowana i gotowa do uruchomienia
Skonfigurowaliśmy projekt z wartościami właściwości aplikacji i wszystko jest gotowe do uruchomienia.
Uwaga / Notatka
Enter_the_Supported_Account_Info_Here
Więcej informacji
Jak działa przykład
MSAL.NET
Biblioteka MSAL (Microsoft.Identity.Client) jest używana do logowania użytkowników i żądania tokenów niezbędnych do uzyskiwania dostępu do interfejsu API chronionego przez platformę tożsamości Microsoft. Bibliotekę MSAL można zainstalować, uruchamiając następujące polecenie w konsoli menedżera pakietów programu Visual Studio:
Install-Package Microsoft.Identity.Client -IncludePrerelease
Inicjowanie MSAL
Aby dodać odwołanie do biblioteki MSAL, dodaj następujący kod:
using Microsoft.Identity.Client;
Następnie zainicjuj bibliotekę MSAL przy użyciu następującego kodu:
IPublicClientApplication publicClientApp = PublicClientApplicationBuilder.Create(ClientId)
.WithRedirectUri("https://login.microsoftonline.com/common/oauth2/nativeclient")
.WithAuthority(AzureCloudInstance.AzurePublic, Tenant)
.Build();
| Gdzie: | Opis |
|---|---|
ClientId |
Jest identyfikatorem aplikacji (klienta) dla aplikacji zarejestrowanej w witrynie Azure Portal. Tę wartość można znaleźć na stronie Przegląd aplikacji w witrynie Azure Portal. |
Żądanie tokenów
MSAL ma dwie metody uzyskiwania tokenów: AcquireTokenInteractive i AcquireTokenSilent.
Interaktywne pobieranie tokenu użytkownika
Niektóre sytuacje wymagają wymuszenia interakcji użytkowników z platformą tożsamości firmy Microsoft za pośrednictwem okna podręcznego w celu zweryfikowania ich poświadczeń lub wyrażenia zgody. Oto kilka przykładów:
- Przy pierwszym logowaniu użytkowników do aplikacji
- Gdy użytkownicy mogą wymagać ponownego podania poświadczeń, ponieważ hasło wygasło
- Gdy aplikacja żąda dostępu do zasobu, użytkownik musi wyrazić zgodę na
- Gdy wymagane jest uwierzytelnianie dwuskładnikowe
authResult = await App.PublicClientApp.AcquireTokenInteractive(_scopes)
.ExecuteAsync();
| Gdzie: | Opis |
|---|---|
_scopes |
Zawiera żądane zakresy, takie jak { "user.read" } dla programu Microsoft Graph lub { "api://<Application ID>/access_as_user" } dla niestandardowych interfejsów API dla sieci web. |
Dyskretne pobieranie tokenu użytkownika
Nie chcesz wymagać, aby użytkownik weryfikował swoje poświadczenia za każdym razem, gdy musi uzyskać dostęp do zasobu. W większości przypadków potrzebujesz pozyskiwania i odnawiania tokenów bez interakcji z użytkownikiem. Możesz użyć metody AcquireTokenSilent, aby uzyskać tokeny w celu uzyskania dostępu do chronionych zasobów po początkowej metodzie AcquireTokenInteractive:
var accounts = await App.PublicClientApp.GetAccountsAsync();
var firstAccount = accounts.FirstOrDefault();
authResult = await App.PublicClientApp.AcquireTokenSilent(scopes, firstAccount)
.ExecuteAsync();
| Gdzie: | Opis |
|---|---|
scopes |
Zawiera żądane zakresy, takie jak { "user.read" } dla programu Microsoft Graph lub { "api://<Application ID>/access_as_user" } dla niestandardowych interfejsów API dla sieci web. |
firstAccount |
Określa pierwszego użytkownika w pamięci podręcznej (biblioteka MSAL obsługuje wielu użytkowników w ramach jednej aplikacji). |
Pomoc i wsparcie
Jeśli potrzebujesz pomocy, chcesz zgłosić problem lub poznać opcje pomocy technicznej, zobacz Pomoc i obsługa techniczna dla deweloperów.
Dalsze kroki
Wypróbuj samouczek dotyczący pulpitu systemu Windows, aby uzyskać kompletny przewodnik krok po kroku dotyczący tworzenia aplikacji i nowych funkcji, w tym pełne objaśnienie tego szybkiego startu.