Kullanıcıları Azure AD B2C'ye geçirme

Başka bir kimlik sağlayıcısından Azure Active Directory B2C'ye (Azure AD B2C) geçiş yapmak için mevcut kullanıcı hesaplarının geçirilmesi de gerekebilir. Burada geçiş öncesi ve sorunsuz geçiş olarak iki geçiş yöntemi ele alınıyor. Her iki yaklaşımda da, B2C'de kullanıcı Azure AD hesapları oluşturmak için Microsoft Graph API kullanan bir uygulama veya betik yazmanız gerekir.

Azure AD B2C kullanıcı geçiş stratejileri ve dikkate alınması gereken adımlar hakkında bilgi edinmek için bu videoyu izleyin.

Not

Geçişe başlamadan önce, Azure AD B2C kiracınızın kullanılmayan kotasının geçirmeyi beklediğiniz tüm kullanıcılara uygun olduğundan emin olun. Kiracı kullanımınızı alma hakkında bilgi edinin. Kiracınızın kota sınırını artırmanız gerekiyorsa Microsoft Desteği başvurun.

Geçiş öncesi

Geçiş öncesi akışında, geçiş uygulamanız her kullanıcı hesabı için şu adımları gerçekleştirir:

  1. Geçerli kimlik bilgileri (kullanıcı adı ve parola) dahil olmak üzere eski kimlik sağlayıcısından kullanıcı hesabını okuyun.
  2. Azure AD B2C dizininizde geçerli kimlik bilgileriyle ilgili bir hesap oluşturun.

Bu iki durumdan birinde geçiş öncesi akışı kullanın:

  • Kullanıcının düz metin kimlik bilgilerine (kullanıcı adı ve parolası) erişebilirsiniz.
  • Kimlik bilgileri şifrelenir, ancak şifrelerini çözebilirsiniz.

Program aracılığıyla kullanıcı hesapları oluşturma hakkında bilgi için bkz. Microsoft Graph ile Azure AD B2C kullanıcı hesaplarını yönetme.

Sorunsuz geçiş

Eski kimlik sağlayıcısındaki düz metin parolalara erişilemiyorsa sorunsuz geçiş akışını kullanın. Örneğin, aşağıdaki durumlarda:

  • Parola, karma işlevi gibi tek yönlü şifrelenmiş bir biçimde depolanır.
  • Parola, eski kimlik sağlayıcısı tarafından erişilemeyecek şekilde depolanır. Örneğin, kimlik sağlayıcısı bir web hizmetini çağırarak kimlik bilgilerini doğruladığında.

Sorunsuz geçiş akışı hala kullanıcı hesaplarının önceden geçirilmesini gerektirir, ancak ardından ilk oturum açmada her kullanıcının parolasını ayarlamak üzere rest API'sini (oluşturduğunuz) sorgulamak için özel bir ilke kullanır.

Sorunsuz geçiş akışı iki aşamadan oluşur: geçiş öncesi ve kimlik bilgilerini ayarlama.

1. Aşama: Geçiş öncesi

  1. Geçiş uygulamanız eski kimlik sağlayıcısından kullanıcı hesaplarını okur.
  2. Geçiş uygulaması, Azure AD B2C dizininizde ilgili kullanıcı hesaplarını oluşturur, ancak oluşturduğunuz rastgele parolaları ayarlar.

2. Aşama: Kimlik bilgilerini ayarlama

Hesapların ön geçişi tamamlandıktan sonra, kullanıcı oturum açtığında özel ilkeniz ve REST API'niz aşağıdakileri gerçekleştirir:

  1. Girilen e-posta adresine karşılık gelen Azure AD B2C kullanıcı hesabını okuyun.
  2. Boole uzantısı özniteliğini değerlendirerek hesaba geçiş için bayrak eklenip işaretlenmediğini denetleyin.
    • Uzantı özniteliği döndürürse True, eski kimlik sağlayıcısına karşı parolayı doğrulamak için REST API'nizi çağırın.
      • REST API parolanın yanlış olduğunu belirlerse, kullanıcıya kolay bir hata döndürün.
      • REST API parolanın doğru olduğunu belirlerse, parolayı Azure AD B2C hesabına yazın ve boole uzantısı özniteliğini olarak Falsedeğiştirin.
    • Boole uzantısı özniteliği döndürürse False, oturum açma işlemine normal şekilde devam edin.

Örnek bir özel ilkeyi ve REST API'yi görmek için GitHub'da sorunsuz kullanıcı geçişi örneğine bakın.

Kullanıcı geçişine sorunsuz geçiş yaklaşımının akış çizelgesi diyagramı

Güvenlik

Sorunsuz geçiş yaklaşımı, kullanıcının kimlik bilgilerini eski kimlik sağlayıcısına karşı doğrulamak için kendi özel REST API'nizi kullanır.

REST API'nizi deneme yanılma saldırılarına karşı korumanız gerekir. Saldırgan, sonunda kullanıcının kimlik bilgilerini tahmin etme umuduyla birkaç parola gönderebilir. Bu tür saldırıların yenlenmesine yardımcı olmak için, oturum açma girişimlerinin sayısı belirli bir eşiği geçtiğinde istekleri REST API'nize sunmamaya devam edin. Ayrıca Azure AD B2C ile REST API'niz arasındaki iletişimin güvenliğini sağlayın. RESTful API'lerinizin üretim için güvenliğini sağlamayı öğrenmek için bkz. RESTful API'sini güvenlileştirme.

Kullanıcı öznitelikleri

Eski kimlik sağlayıcısındaki tüm bilgiler Azure AD B2C dizininize geçirilmemelidir. Geçiş yapmadan önce Azure AD B2C'de depolanması gereken uygun kullanıcı özniteliklerini belirleyin.

  • Azure AD B2C'de DO mağazası:
    • Kullanıcı adı, parola, e-posta adresleri, telefon numaraları, üyelik numaraları/tanımlayıcılar.
    • Gizlilik ilkesi ve son kullanıcı lisans sözleşmeleri için onay işaretleri.
  • Azure AD B2C'de depolama:
    • Kredi kartı numaraları, sosyal güvenlik numaraları (SSN), tıbbi kayıtlar veya devlet ya da sektör uyumluluk kuruluşları tarafından düzenlenen diğer veriler gibi hassas veriler.
    • Pazarlama veya iletişim tercihleri, kullanıcı davranışları ve içgörüler.

Dizin temizleme

Geçiş işlemine başlamadan önce dizininizi temizleme fırsatından faydalanın.

  • Azure AD B2C'de depolanacak kullanıcı öznitelikleri kümesini belirleyin ve yalnızca ihtiyacınız olanları geçirin. Gerekirse, kullanıcı hakkında daha fazla veri depolamak için özel öznitelikler oluşturabilirsiniz.
  • Birden çok kimlik doğrulama kaynağına (örneğin, her uygulamanın kendi kullanıcı dizini vardır) sahip bir ortamdan geçiş gerçekleştiriyorsanız, Azure AD B2C'de birleşik bir hesaba geçin.
  • Birden çok uygulamanın farklı kullanıcı adları varsa, kimlik koleksiyonunu kullanarak bunların tümünü bir Azure AD B2C kullanıcı hesabında depolayabilirsiniz. Parola hakkında, kullanıcının bir parola seçmesine ve dizinde ayarlamasına izin verin. Örneğin sorunsuz geçişle, Azure AD B2C hesabında yalnızca seçilen parola depolanmalıdır.
  • Kullanılmayan kullanıcı hesaplarını kaldırın veya eski hesapları geçirmeyin.

Parola ilkesi

Geçiş yaptığınız hesaplar, Azure AD B2C tarafından zorlanan güçlü parola gücünden daha zayıf parola gücüne sahipse, güçlü parola gereksinimini devre dışı bırakabilirsiniz. Daha fazla bilgi için bkz . Parola ilkesi özelliği.

Sonraki adımlar

azure-ad-b2c/user-migration GitHub'daki depo sorunsuz bir geçiş özel ilkesi örneği ve REST API kod örneği içerir:

Sorunsuz kullanıcı geçişi özel ilkesi ve REST API kod örneği