Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:
İş gücü kiracıları
Dış kiracılar (daha fazla bilgi edinin)
Bu hızlı başlangıçta, Kod Değişimi için Kanıt Anahtarı (PKCE) ile yetkilendirme kodu akışını kullanarak ve Microsoft Graph API'sini çağırarak kullanıcıların nasıl oturum açtığını göstermek için örnek bir tek sayfalık uygulama (SPA) kullanacaksınız. Örnek, kimlik doğrulamasını işlemek için Microsoft Kimlik Doğrulama Kitaplığı kullanır.
Önkoşullar
- Etkin aboneliği olan bir Azure hesabı. Henüz bir hesabınız yoksa, ücretsiz bir hesap oluşturun .
- Bu Azure hesabının uygulamaları yönetme izinleri olmalıdır. Aşağıdaki Microsoft Entra rollerinden herhangi biri gerekli izinleri içerir:
- Uygulama Yöneticisi
- Uygulama Geliştirici
- Çalışma amaçlı kiracı. Varsayılan Dizininizi kullanabilir veya yeni bir kiracı ayarlayabilirsiniz.
- Visual Studio Code veya başka bir kod düzenleyicisi.
-
Microsoft Entra yönetim merkezine, yalnızca bu kuruluş dizinindeki Hesaplar için yapılandırılmış yeni bir uygulama kaydedin. Daha fazla bilgi için Bir uygulamayı kaydetme bölümüne bakın. Daha sonra kullanmak üzere uygulamaya Genel Bakış sayfasından aşağıdaki değerleri kaydedin:
- Uygulama (istemci) kimliği
- Dizin (kullanıcı) kimliği
-
Tek sayfalı uygulama platformu yapılandırmasını kullanarak aşağıdaki yeniden yönlendirme URI'lerini ekleyin. Diğer ayrıntılar için bkz. Uygulamanıza yeniden yönlendirme URI'sini ekleme .
-
Yönlendirme URI'si:
http://localhost:3000/
-
Yönlendirme URI'si:
- Node.js
Ö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-docs-code-javascript.git.zip dosyasınıindirin. Adın uzunluğu 260 karakterden az olan bir dosya yoluna dosyayı ayıklayın.
Projeyi yapılandırma
IDE'nizde, örneği içeren ms-identity-docs-code-javascript proje klasörünü açın.
vanillajs-spa/App/public/authConfig.js açın ve yönetim merkezinde kaydedilen bilgilerle aşağıdaki değerleri güncelleştirin.
/** * Configuration object to be passed to MSAL instance on creation. * For a full list of MSAL.js configuration parameters, visit: * https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-browser/docs/configuration.md */ const msalConfig = { auth: { clientId: "Enter_the_Application_Id_Here", // WORKFORCE TENANT authority: "https://login.microsoftonline.com/Enter_the_Tenant_Info_Here", // Replace the placeholder with your tenant info // EXTERNAL TENANT // authority: "https://Enter_the_Tenant_Subdomain_Here.ciamlogin.com/", // Replace the placeholder with your tenant subdomain redirectUri: '/', // You must register this URI on App Registration. Defaults to window.location.href e.g. http://localhost:3000/ navigateToLoginRequestUrl: true, // If "true", will navigate back to the original request location before processing the auth code response. }, cache: { cacheLocation: 'sessionStorage', // Configures cache location. "sessionStorage" is more secure, but "localStorage" gives you SSO. storeAuthStateInCookie: false, // set this to true if you have to support IE }, system: { loggerOptions: { loggerCallback: (level, message, containsPii) => { if (containsPii) { return; } switch (level) { case msal.LogLevel.Error: console.error(message); return; case msal.LogLevel.Info: console.info(message); return; case msal.LogLevel.Verbose: console.debug(message); return; case msal.LogLevel.Warning: console.warn(message); return; } }, }, }, }; /** * Scopes you add here will be prompted for user consent during sign-in. * By default, MSAL.js will add OIDC scopes (openid, profile, email) to any login request. * For more information about OIDC scopes, visit: * https://learn.microsoft.com/en-us/entra/identity-platform/permissions-consent-overview#openid-connect-scopes */ const loginRequest = { scopes: ["User.Read"], }; /** * An optional silentRequest object can be used to achieve silent SSO * between applications by providing a "login_hint" property. */ // const silentRequest = { // scopes: ["openid", "profile"], // loginHint: "example@domain.net" // }; // exporting config object for jest if (typeof exports !== 'undefined') { module.exports = { msalConfig: msalConfig, loginRequest: loginRequest, }; }-
clientId- İstemci olarak da adlandırılan uygulamanın tanımlayıcısı. Tırnak işareti içindeki yazıyı daha önce kaydedilmiş Uygulama (istemci) kimliği değeriyle değiştirin. -
authority- Yetki, MSAL'nin token talep edebileceği bir dizini gösteren bir URL'dir. Enter_the_Tenant_Info_Here ifadesini, daha önce kaydedilmiş olan Dizin (kiracı) kimliği değeriyle değiştirin. -
redirectUri- Uygulamanın yönlendirme URI'si. Gerekirse, tırnak içindeki metni daha önce kaydedilmiş yeniden yönlendirme URI'siyle değiştirin.
-
Uygulamayı çalıştırın, oturum açın ve çıkış yapın
Node.jskullanarak projeyi bir web sunucusuyla çalıştırın:
Sunucuyu başlatmak için proje dizininden aşağıdaki komutları çalıştırın:
cd vanillajs-spa/App npm install npm startTerminalde görüntülenen
httpsURL'sini (örneğin,https://localhost:3000) kopyalayın ve bir tarayıcıya yapıştırın. Özel veya gizli bir tarayıcı oturumu kullanmanızı öneririz.Adımları izleyin ve Microsoft hesabınızla oturum açmak için gerekli ayrıntıları girin. Size tek seferlik bir geçiş kodu gönderebilmek için bir e-posta adresi istenir. İstendiğinde kodu girin.
Uygulama, erişim verdiğiniz verilere erişimi korumak ve oturum açıp profilinizi okumak için izin isteyecektir. SeçKabul Et Uygulamada oturum açtığınızı ve Profil ayrıntılarınıza Microsoft Graph API'sinden eriştiğnizi gösteren aşağıdaki ekran görüntüsü görüntülenir.
Önkoşullar
- Etkin aboneliği olan bir Azure hesabı. Henüz bir hesabınız yoksa, ücretsiz bir hesap oluşturun .
- Bu Azure hesabının uygulamaları yönetme izinleri olmalıdır. Aşağıdaki Microsoft Entra rollerinden herhangi biri gerekli izinleri içerir:
- Uygulama Yöneticisi
- Uygulama Geliştirici
- Dış kiracı. Oluşturmak için aşağıdaki yöntemlerden birini seçin:
- Dış kiracıyı doğrudan Visual Studio Code'da ayarlamak için Microsoft Entra Dış Kimlik uzantısını kullanın. (Önerilen)
- Microsoft Entra yönetim merkezinde Yeni bir dış kiracı oluşturun.
- Kullanıcı akışı. Daha fazla bilgi için dış kiracılardaki uygulamalar için self servis kullanıcı kaydolma akışları oluşturma konusuna bakın. Bu kullanıcı akışı birden çok uygulama için kullanılabilir.
- Visual Studio Code veya başka bir kod düzenleyicisi.
-
Microsoft Entra yönetim merkezine, yalnızca bu kuruluş dizinindeki Hesaplar için yapılandırılmış yeni bir uygulama kaydedin. Daha fazla bilgi için Bir uygulamayı kaydetme bölümüne bakın. Daha sonra kullanmak üzere uygulamaya Genel Bakış sayfasından aşağıdaki değerleri kaydedin:
- Uygulama (istemci) kimliği
- Dizin (kullanıcı) kimliği
-
Tek sayfalı uygulama platformu yapılandırmasını kullanarak aşağıdaki yeniden yönlendirme URI'lerini ekleyin. Diğer ayrıntılar için bkz. Uygulamanıza yeniden yönlendirme URI'sini ekleme .
-
Yönlendirme URI'si:
http://localhost:3000/
-
Yönlendirme URI'si:
- Uygulamanızı kullanıcı akışına ekleme
- Node.js
Örnek SPA'yı 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-ciam-javascript-tutorial.gitÖrneğiindirin. Adın uzunluğu 260 karakterden az olan bir dosya yoluna dosyayı ayıklayın.
Örnek SPA'yi yapılandırma
App/public/authConfig.jsaçın ve aşağıdaki değerleri Microsoft Entra yönetim merkezinden alınan değerlerle değiştirin:-
Enter_the_Application_Id_Hereve daha önce kaydettiğiniz uygulamanın Uygulama (istemci) kimliğiyle değiştirin. -
Enter_the_Tenant_Subdomain_Here'u, Dizinin (kiracının) alt etki alanıyla değiştirin. Örneğin, kiracınızın birincil alan adıcontoso.onmicrosoft.comise,contosokullanın. Eğer kiracı adınız yoksa, kiracı ayrıntılarınızı nasıl okuyacağınızıöğrenin.
-
Dosyayı kaydedin.
Projenizi çalıştırma ve oturum açma
Sunucuyu başlatmak için proje dizininden aşağıdaki komutları çalıştırın:
cd 1-Authentication\0-sign-in-vanillajs\App npm install npm startTerminalde görüntülenen
httpsURL'sini (örneğin,https://localhost:3000) kopyalayın ve bir tarayıcıya yapıştırın. Özel veya gizli bir tarayıcı oturumu kullanmanızı öneririz.Kiracıya kayıtlı bir hesapla oturum açın.
Uygulamada oturum açtığınızı ve Profil ayrıntılarınıza Microsoft Graph API'sinden eriştiğnizi gösteren aşağıdaki ekran görüntüsü görüntülenir.
Uygulama oturumunu kapatma
- Sayfada Oturumu kapat düğmesini bulun ve seçin.
- Oturumunu kapatmak için bir hesap seçmeniz istenir. Oturum açmak için kullandığınız hesabı seçin.
Oturumunuz kapatıldığını belirten bir ileti görüntülenir. Artık tarayıcı penceresini kapatabilirsiniz.
İlgili içerik
- Hızlı Başlangıç: microsoft kimlik platformuile ASP.NET Core web API'sini koruma.
- Aşağıdaki çok bölümlü öğretici serisinde kullanıcıların oturum açtığı bir React SPA oluşturarak daha fazla bilgi edinin.
- Parola sıfırlamayı etkinleştir.
- Varsayılan markalamaözelleştirin.
- Googleile oturum açmayı yapılandırma.