Hızlı Başlangıç: Kullanıcıları oturum açma ve Node.js web uygulamasından Microsoft Graph API'sini çağırma
Bu hızlı başlangıçta, yetkilendirme kodu akışını kullanarak kullanıcıların nasıl oturum açacağınızı ve Microsoft Graph API'sini nasıl çağıracağınızı göstermek için örnek bir Node.js web uygulaması kullanılmaktadır. Örnek, kimlik doğrulamasını işlemek için MSAL Düğümünü kullanır.
Önkoşullar
- Azure aboneliği. Ücretsiz bir Azure aboneliği oluşturun.
- Node.js
- Visual Studio Code veya başka bir kod düzenleyicisi
Uygulama ve kayıt tanımlayıcılarını kaydetme
Kaydı tamamlamak için uygulamaya bir ad verin ve desteklenen hesap türlerini belirtin. Kaydedildikten sonra, uygulamaya Genel Bakış bölmesinde uygulama kaynak kodunda gereken tanımlayıcılar görüntülenir.
Microsoft Entra yönetim merkezinde oturum açın.
Birden çok kiracıya erişiminiz varsa, Dizinler + abonelikler menüsünden uygulamayı kaydetmek istediğiniz kiracıya geçmek için üst menüdeki Ayarlar simgesini kullanın.
Kimlik>Uygulamaları'na> göz atın Uygulama kayıtları Yeni kayıt'ı seçin.
Uygulama için identity-client-web-app gibi bir Ad girin.
Desteklenen hesap türleri için Yalnızca bu kuruluş dizinindeki Hesaplar'ı seçin. Farklı hesap türleri hakkında bilgi için Bana yardım et seçeneğini belirleyin.
Kaydet'i seçin.
Kayıt tamamlandığında uygulamanın Genel Bakış bölmesi görüntülenir. Uygulama kaynak kodunuzda kullanılacak Dizin (kiracı) kimliğini ve Uygulama (istemci) kimliğini kaydedin.
Not
Desteklenen hesap türleri, Uygulama tarafından desteklenen hesapları değiştirme konusuna başvurarak değiştirilebilir.
Platform yeniden yönlendirme URI'sini ekleme ve istemci gizli dizisi oluşturma
Uygulama kaydınıza uygulama türünüzü belirtmek için şu adımları izleyin:
- Yönet'in altında Kimlik Doğrulama'yı seçin.
- Platform yapılandırmaları sayfasında Platform ekle'yi ve ardından Web seçeneğini belirleyin.
- Yeniden Yönlendirme URI'leri için girin
http://localhost:3000/auth/redirect
. - Ön kanal oturumu kapatma URL'si altında oturumu kapatma için girin
https://localhost:5001/signout-callback-oidc
. - Değişikliklerinizi kaydetmek için Yapılandır'ı seçin.
- Yönet'in altında Sertifikalar ve gizli diziler İstemci gizli>dizileri Yeni istemci gizli dizisi'ni> seçin. Bir açıklama seçin ve ardından Ekle'yi seçin.
- Daha sonra kullanmak üzere İstemci gizli dizisinin değerini not edin. Bu değer yalnızca bir kez görüntülenir.
Örnek uygulamayı kopyalama veya indirme
Örnek uygulamayı edinmek için GitHub'dan kopyalayabilir veya .zip dosyası olarak indirebilirsiniz.
Örneği kopyalamak için bir komut istemi açın ve projeyi oluşturmak istediğiniz yere gidin ve aşağıdaki komutu girin:
git clone https://github.com/Azure-Samples/ms-identity-node.git
.zip dosyasını indirin. Adın uzunluğu 260 karakterden az olan bir dosya yoluna ayıklayın.
Projeyi yapılandırma
Projeyi ayıklayın, ms-identity-node-main klasörünü açın ve ardından Uygulama klasörünün altında .env dosyasını açın. Yukarıdaki değerleri aşağıdaki gibi değiştirin:
Değişken | Açıklama | Örnekler |
---|---|---|
Enter_the_Cloud_Instance_Id_Here |
Uygulamanızın kayıtlı olduğu Azure bulut örneği | https://login.microsoftonline.com/ (sondaki eğik çizgiyi dahil et) |
Enter_the_Tenant_Info_here |
Kiracı Kimliği veya Birincil etki alanı | contoso.microsoft.com veya aaaabbbb-0000-cccc-1111-dddd2222eeee |
Enter_the_Application_Id_Here |
Kaydettiğiniz uygulamanın istemci kimliği | 00001111-aaaa-2222-bbbb-3333cccc4444 |
Enter_the_Client_Secret_Here |
Kaydettiğiniz uygulamanın gizli dizisi | A1b-C2d_E3f.H4i,J5k?L6m!N7o-P8q_R9s.T0u |
Enter_the_Graph_Endpoint_Here |
Uygulamanızın çağıracağı Microsoft Graph API bulut örneği | https://graph.microsoft.com/ (sondaki eğik çizgiyi dahil et) |
Enter_the_Express_Session_Secret_Here |
Express oturum tanımlama bilgisini imzalamak için kullanılan rastgele bir karakter dizesi | A1b-C2d_E3f.H4... |
Dosyanız aşağıdakine benzer olmalıdır:
CLOUD_INSTANCE=https://login.microsoftonline.com/
TENANT_ID=aaaabbbb-0000-cccc-1111-dddd2222eeee
CLIENT_ID=00001111-aaaa-2222-bbbb-3333cccc4444
CLIENT_SECRET=A1b-C2d_E3f.H4...
REDIRECT_URI=http://localhost:3000/auth/redirect
POST_LOGOUT_REDIRECT_URI=http://localhost:3000
GRAPH_API_ENDPOINT=https://graph.microsoft.com/
EXPRESS_SESSION_SECRET=6DP6v09eLiW7f1E65B8k
Uygulamayı çalıştırma ve oturum açma
Node.js kullanarak projeyi çalıştırın.
Sunucuyu başlatmak için proje dizininden aşağıdaki komutları çalıştırın:
cd App npm install npm start
Şuraya git:
http://localhost:3000/
.Oturum açma işlemini başlatmak için Oturum aç'ı seçin.
İlk kez oturum açtığınızda, uygulamanın oturum açmasına ve profilinize erişmesine izin vermek için onay vermeniz istenir. Başarıyla oturum açtıktan sonra uygulamanın giriş sayfasına yeniden yönlendirilirsiniz.
Daha Fazla Bilgi
Örnek nasıl çalışır?
Örnek, localhost, bağlantı noktası 3000 üzerinde bir web sunucusu barındırıyor. Bir web tarayıcısı bu adrese eriştiğinde, uygulama giriş sayfasını işler. Kullanıcı Oturum aç'ı seçtikten sonra uygulama, MSAL Node kitaplığı tarafından oluşturulan URL aracılığıyla tarayıcıyı Microsoft Entra oturum açma ekranına yönlendirir. Kullanıcı onay verdikten sonra tarayıcı, kullanıcıyı kimlik ve erişim belirteci ile birlikte uygulama giriş sayfasına geri yönlendirir.
MSAL Düğümü
MSAL Düğümü kitaplığı, kullanıcılarda oturum açar ve Microsoft kimlik platformu tarafından korunan bir API'ye erişmek için kullanılan belirteçleri istemektedir. Node.js Paket Yöneticisi (npm) kullanarak en son sürümü indirebilirsiniz:
npm install @azure/msal-node
Sonraki adım
Aşağıdaki çok bölümlü öğretici serisinde kullanıcıların oturumunu kapatan bir ASP.NET Core web uygulaması oluşturarak daha fazla bilgi edinin: