Jumio'yi Azure Active Directory B2C ile yapılandırma öğreticisi
Bu öğreticide Azure Active Directory B2C'yi (Azure AD B2C) müşteri verilerini korumaya yardımcı olmak için gerçek zamanlı otomatik kimlik doğrulamasını etkinleştiren bir kimlik doğrulama hizmeti olan Jumio ile tümleştirmeyi öğreneceksiniz.
Önkoşullar
Başlamak için şunları yapmanız gerekir:
Bir Azure aboneliği
- Hesabınız yoksa ücretsiz Azure hesabı alabilirsiniz
- Azure aboneliğinize bağlı bir Azure AD B2C kiracısı
Senaryo açıklaması
Jumio tümleştirmesi aşağıdaki bileşenleri içerir:
- Azure AD B2C - Kimlik sağlayıcısı (IdP) olarak da bilinen kullanıcı kimlik bilgilerini doğrulayan yetkilendirme sunucusu
- Jumio - Kullanıcı kimliği ayrıntılarını doğrular
- Ara REST API - Azure AD B2C ve Jumio tümleştirmesi uygulamak için bu api'yi kullanın
- Azure Blob depolama - Azure AD B2C ilkelerine yönelik özel kullanıcı arabirimi dosyalarını almak için bu dosyayı kullanın
Aşağıdaki mimari diyagramında uygulama gösterilmektedir.
- Kullanıcı oturum açar veya kaydolup bir hesap oluşturur. Azure AD B2C kullanıcı özniteliklerini toplar.
- Azure AD B2C, orta katman API'sini çağırır ve kullanıcı özniteliklerini geçirir.
- Orta katman API'si, kullanıcı özniteliklerini Jumio API biçimine dönüştürür ve öznitelikleri Jumio'ya gönderir.
- Jumio öznitelikleri işler ve sonuçları orta katman API'sine döndürür.
- Orta katman API sonuçları işler ve ilgili bilgileri Azure AD B2C'ye gönderir.
- Azure AD B2C bilgileri alır. Yanıt başarısız olursa bir hata iletisi görüntülenir. Yanıt başarılı olursa, kullanıcının kimliği doğrulanır ve dizine yazılır.
Jumio hesabı oluşturma
Jumio hesabı oluşturmak için jumio.com Kişi sayfasına gidin.
Jumio ile Azure AD B2C'yi yapılandırma
Jumio hesabı oluşturduktan sonra B2C Azure AD yapılandırmak için bu hesabı kullanın.
API'yi dağıtma
Samples/Jumio/API/Jumio.Api/'den kodu bir Azure hizmetine dağıtın. Kodu Visual Studio'dan yayımlayabilirsiniz.
Not
Microsoft Entra kimliğini yapılandırmak için dağıtılan hizmet URL'sine ihtiyacınız vardır.
İstemci sertifikasını dağıtma
İstemci sertifikası Jumio API çağrısının korunmasına yardımcı olur.
Aşağıdaki PowerShell örnek kodunu kullanarak otomatik olarak imzalanan bir sertifika oluşturun:
$cert = New-SelfSignedCertificate -Type Custom -Subject "CN=Demo-SigningCertificate" -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.3") -KeyUsage DigitalSignature -KeyAlgorithm RSA -KeyLength 2048 -NotAfter (Get-Date).AddYears(2) -CertStoreLocation "Cert:\CurrentUser\My" $cert.Thumbprint $pwdText = "Your password" $pwd = ConvertTo-SecureString -String $pwdText -Force -AsPlainText Export-PfxCertificate -Cert $Cert -FilePath "{your-local-path}\Demo-SigningCertificate.pfx" -Password $pwd.
Sertifika için
{your-local-path}
belirtilen konuma aktarılır.Sertifikayı Azure App Service'a aktarmak için bkz. Özel sertifikayı karşıya yükleme.
İmzalama/şifreleme anahtarı oluşturma
Uzunluğu 64 karakterden büyük rastgele bir dize oluşturun (yalnızca harfler ve sayılar).
Örnek:
C9CB44D98642A7062A0D39B94B6CDC1E54276F2E7CFFBF44288CEE73C08A8A65
Dizeyi oluşturmak için aşağıdaki PowerShell betiğini kullanın:
-join ((0x30..0x39) + ( 0x41..0x5A) + ( 0x61..0x7A) + ( 65..90 ) | Get-Random -Count 64 | % {[char]$_})
API'yi yapılandırma
Uygulama ayarlarını Azure App Service bir depoya denetlemeden yapılandırabilirsiniz. REST API'ye aşağıdaki ayarları sağlamanız gerekir:
Uygulama ayarları | Kaynak | Notlar |
---|---|---|
JumioSettings:AuthUsername | Jumio hesap yapılandırması | Yok |
JumioSettings:AuthPassword | Jumio hesap yapılandırması | Yok |
AppSettings:SigningCertThumbprint | Oluşturulan otomatik olarak imzalanan sertifika parmak izi | Yok |
AppSettings:IdTokenSigningKey | PowerShell kullanılarak oluşturulan imzalama anahtarı | Yok |
AppSettings:IdTokenEncryptionKey | PowerShell kullanılarak oluşturulan şifreleme anahtarı | Yok |
AppSettings:IdTokenIssuer | JWT belirteci için veren (GUID değeri tercih edilir) | Yok |
AppSettings:IdTokenAudience | JWT belirtecinin hedef kitlesi (GUID değeri tercih edilir) | Yok |
AppSettings:BaseRedirectUrl | B2C ilkesi temel URL'sini Azure AD | https://{your-tenant-name}.b2clogin.com/{your-application-id} |
WEBSITE_LOAD_CERTIFICATES | Oluşturulan otomatik olarak imzalanan sertifika parmak izi | Yok |
Kullanıcı arabirimini dağıtma
- Depolama hesabınızda bir blob depolama kapsayıcısı ayarlayın.
- Blob kapsayıcınızda /samples/Jumio/UI/ kullanıcı arabirimi dosyalarını depolayın.
Kullanıcı arabirimi dosyalarını güncelleştirme
- Kullanıcı arabirimi dosyalarında /samples/Jumio/UI/ocean_blue/ adresine gidin.
- Her HTML dosyasını açın.
- Öğesini bulun ve yerine blob kapsayıcı URL'nizi ekleyin
{your-ui-blob-container-url}
. - öğesini bulun ve öğesini ara API uygulama hizmeti URL'si ile değiştirin
{your-intermediate-api-url}
.
Not
Öznitelik koleksiyonu sayfasına onay bildirimi eklemenizi öneririz. Kullanıcılara bilgilerin kimlik doğrulaması için üçüncü taraf hizmetlere gittiğini bildirin.
Azure AD B2C ilkesini yapılandırma
- /samples/Jumio/Policies/ içindeki Azure AD B2C ilkesine gidin.
- LocalAccountsbaşlangıç paketini indirmek için Özel ilke başlangıç paketi'ndeki yönergeleri kullanın.
- Azure AD B2C kiracısı için ilkeyi yapılandırın.
Not
İlkeleri kiracınızla ilişkilendirecek şekilde güncelleştirin.
Kullanıcı akışını test edin
- Azure AD B2C kiracısını açın.
- İlkeler'in altında Kimlik Deneyimi Çerçevesi'ne tıklayın.
- Oluşturduğunuz SignUpSignIn öğesini seçin.
- Kullanıcı akışını çalıştır'ı seçin.
- Uygulama için kayıtlı uygulamayı seçin (örneğin JWT).
- Yanıt URL'si için yeniden yönlendirme URL'sini seçin.
- Kullanıcı akışını çalıştır'ı seçin.
- Kaydolma akışını tamamlayın.
- Bir hesap oluşturun.
- Kullanıcı özniteliği oluşturulduktan sonra Jumio çağrılır.
İpucu
Akış tamamlanmamışsa, kullanıcının dizine kaydedildiğini veya kaydedilmediğini onaylayın.