Hızlı Başlangıç: Evrensel Windows Platformu (UWP) uygulamasından Microsoft Graph API'sini çağırma

Hoş geldiniz! Bu muhtemelen beklediğiniz sayfa değildir. Bir düzeltme üzerinde çalışırken bu bağlantı sizi doğru makaleye götürmelidir:

Hızlı Başlangıç: Evrensel Windows Platformu uygulamasında kullanıcılarda oturum açma ve Microsoft Graph'ı çağırma

Bu sorun için özür dileriz ve bu sorunu çözmek için çalışırken sabrınızı takdir ediyoruz.

Bu hızlı başlangıçta, bir Evrensel Windows Platformu (UWP) uygulamasının kullanıcılarda nasıl oturum açabileceğini ve Microsoft Graph API'sini çağırmak için erişim belirteci alabileceğini gösteren bir kod örneği indirip çalıştıracaksınız.

Bkz. Örnek bir çizim için nasıl çalışır ?

Önkoşullar

1. Adım: Uygulamayı yapılandırma

Bu hızlı başlangıçtaki kod örneğinin çalışması için öğesinin Yeniden Yönlendirme URI'sinihttps://login.microsoftonline.com/common/oauth2/nativeclientekleyin.

Already configured Uygulamanız bu özniteliklerle yapılandırıldı.

2. Adım: Visual Studio projesini indirme

Visual Studio 2019 kullanarak projeyi çalıştırın.

İpucu

Windows'ta yol uzunluğu sınırlamalarından kaynaklanan hataları önlemek için, arşivi ayıklamanızı veya depoyu sürücünüzün köküne yakın bir dizine kopyalamanızı öneririz.

3. Adım: Uygulamanız yapılandırılmış ve çalışmaya hazır

Projenizi uygulamanızın özelliklerinin değerleriyle yapılandırdık ve çalışmaya hazır.

4. Adım: Uygulamayı çalıştırma

Örnek uygulamayı yerel makinenizde çalıştırmak için:

  1. Visual Studio araç çubuğunda doğru platformu seçin (arm değil muhtemelen x64 veya x86). Hedef cihaz, Cihaz'dan Yerel Makine'ye değiştirilmelidir.

  2. Hata Ayıklama>Hata Ayıklamadan Başlat’ı seçin.

    Bunu yapmanız istenirse, uygulamayı başlatmak için önce Geliştirici Modu'nu etkinleştirmeniz ve ardından Hata Ayıklama Olmadan Yeniden Başlatmanız gerekebilir.

Uygulamanın penceresi görüntülendiğinde Microsoft Graph API'sini Ara düğmesini seçebilir, kimlik bilgilerinizi girebilir ve uygulama tarafından istenen izinleri onaylayabilirsiniz. Başarılı olursa uygulama, Microsoft Graph API'sine yapılan çağrıdan alınan bazı belirteç bilgilerini ve verileri görüntüler.

Örnek nasıl çalışır?

Shows how the sample app generated by this quickstart works

MSAL.NET

MSAL (Microsoft.Identity.Client), kullanıcılarda oturum açmak ve güvenlik belirteçleri istemek için kullanılan kitaplıktır. Güvenlik belirteçleri, Microsoft Identity platformu tarafından korunan bir API'ye erişmek için kullanılır. MSAL kitaplığını Visual Studio'nun Paket Yöneticisi Konsolu'nda aşağıdaki komutu çalıştırarak yükleyebilirsiniz:

Install-Package Microsoft.Identity.Client

MSAL başlatma

Şu kodu ekleyerek MSAL başvurusunu ekleyebilirsiniz:

using Microsoft.Identity.Client;

Ardından MSAL aşağıdaki kod kullanılarak başlatılır:

public static IPublicClientApplication PublicClientApp;
PublicClientApp = PublicClientApplicationBuilder.Create(ClientId)
                                                .WithRedirectUri("https://login.microsoftonline.com/common/oauth2/> nativeclient")
                                                    .Build();

değeri ClientId , Azure portalına kaydettiğiniz uygulamanın Uygulama (istemci) kimliğidir . Bu değeri Azure portalda uygulamanın Genel bakış sayfasında bulabilirsiniz.

Belirteç isteme

MSAL,UWP uygulamasında belirteç almak için iki yönteme sahiptir: AcquireTokenInteractive ve AcquireTokenSilent.

Etkileşimli olarak kullanıcı belirteci alma

Bazı durumlarda, kullanıcıların kimlik bilgilerini doğrulamak veya onay vermek için bir açılır pencere aracılığıyla Microsoft kimlik platformu etkileşime zorlanması gerekir. Bazı Örnekler:

  • Kullanıcılar uygulamada ilk kez oturum açar
  • Parolanın süresi dolduğundan kullanıcıların kimlik bilgilerini yeniden girmesi gerektiğinde
  • Uygulamanız bir kaynağa erişim istediğinde, kullanıcının buna onay vermesi gerekir
  • İki öğeli kimlik doğrulama gerektiğinde
authResult = await App.PublicClientApp.AcquireTokenInteractive(scopes)
                      .ExecuteAsync();

scopes parametresi, Microsoft Graph veya { "api://<Application ID>/access_as_user" } özel web API'leri gibi { "user.read" } istenen kapsamları içerir.

Kullanıcı belirtecini sessizce alma

İlk AcquireTokenInteractive yöntemden AcquireTokenSilent sonra korumalı kaynaklara erişmek için belirteçleri almak için yöntemini kullanın. Bir kaynağa her erişmesi gerektiğinde kullanıcının kimlik bilgilerini doğrulamasını istemek istemezsiniz. Çoğu zaman, kullanıcı etkileşimi olmadan belirteç almaları ve yenilemeleri istersiniz

var accounts = await App.PublicClientApp.GetAccountsAsync();
var firstAccount = accounts.FirstOrDefault();
authResult = await App.PublicClientApp.AcquireTokenSilent(scopes, firstAccount)
                                      .ExecuteAsync();
  • scopesMicrosoft Graph veya { "api://<Application ID>/access_as_user" } özel web API'leri gibi { "user.read" } istenen kapsamları içerir.
  • firstAccount önbellekteki ilk kullanıcı hesabını belirtir (MSAL, tek bir uygulamada birden çok kullanıcıyı destekler).

Yardım ve destek 

Yardıma ihtiyacınız varsa, bir sorunu bildirmek veya destek seçenekleriniz hakkında bilgi edinmek istiyorsanız bkz . Geliştiriciler için yardım ve destek.

Sonraki adımlar

Bu hızlı başlangıcın tam bir açıklamasının da içinde olduğu yeni özellikleri ve uygulamaları oluşturma hakkında eksiksiz adım adım kılavuz için Windows masaüstü öğreticisini deneyin.