SAP HANA için SSO için Kerberos kullanma

Önemli

SAP artık OpenSSL'yi desteklemediğinden Microsoft da desteğini sonlandırmıştır. Mevcut bağlantılarınız çalışmaya devam ediyor, ancak artık yeni bağlantılar oluşturamayasınız. Bunun yerine SAP Şifreleme Kitaplığı (CommonCryptoLib) veya sapcrypto kullanın.

Bu makalede, SAP HANA veri kaynağınızı Power BI hizmeti çoklu oturum açmayı (SSO) etkinleştirecek şekilde yapılandırma açıklanmaktadır.

Not

Kerberos SSO kullanan SAP HANA tabanlı bir raporu yenilemeye çalışmadan önce, hem bu makaledeki hem de Kerberos SSO'sunu yapılandırma makalesindeki adımları tamamlayın.

SAP HANA için SSO'nun etkinleştirilmesi

SAP HANA için SSO'nun etkinleştirilmesi için aşağıdaki adımları uygulayın:

  1. SAP HANA sunucusunun, SAP HANA sunucu platform düzeyinize bağlı olarak gerekli en düşük sürümü çalıştırdığından emin olun:

  2. Ağ geçidi bilgisayarında en son SAP HANA ODBC sürücüsünü yükleyin. En düşük sürüm, Ağustos 2017'den itibaren HANA ODBC sürüm 2.00.020.00'dır.

  3. SAP HANA sunucusunun Kerberos tabanlı SSO için yapılandırıldığından emin olun. Kerberos kullanarak SAP HANA için SSO ayarlama hakkında daha fazla bilgi için bkz . Kerberos kullanarak çoklu oturum açma. Ayrıca, özellikle SAP Note 1837331 – HOWTO HANA DBSSO Kerberos/Active Directory olmak üzere bu sayfadaki bağlantılara da bakın.

Ayrıca, küçük bir performans artışına neden olabilecek şu ek adımların izlenmesini öneririz:

  1. Ağ geçidi yükleme dizininde şu yapılandırma dosyasını arayın ve açın: Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config.

  2. özelliğini arayın FullDomainResolutionEnabled ve değerini olarak Truedeğiştirin.

    <setting name=" FullDomainResolutionEnabled " serializeAs="String">
          <value>True</value>
    </setting>
    
  3. Power BI raporu çalıştırma.

Sorun giderme

Bu bölümde, Power BI hizmeti SAP HANA'da çoklu oturum açma (SSO) için Kerberos kullanarak sorun giderme yönergeleri sağlanır. Bu sorun giderme adımlarını kullanarak karşılaşabileceğiniz birçok sorunu kendi kendine tanılayabilir ve düzeltebilirsiniz.

Bu bölümdeki adımları izlemek için ağ geçidi günlüklerini toplamanız gerekir.

TLS/SSL hatası (sertifika)

Bu sorunun birden çok belirtisi vardır.

  • Yeni bir veri kaynağı eklemeye çalıştığınızda aşağıdaki iletiye benzer bir hata görebilirsiniz:

    Unable to connect: We encountered an error while trying to connect to.
    Details: "We could not register this data source for any gateway
    instances within this cluster.
    Please find more details below about specific errors for each gateway instance."
    
  • Bir rapor oluşturmaya veya yenilemeye çalıştığınızda aşağıdaki hata iletisini görebilirsiniz:

    Screenshot of a 'Cannot load model' troubleshooting TLS/SSL error window.

  • Mashup[date]*.log araştırdığınızda aşağıdaki hata iletisini görürsünüz:

    A connection was successfully established with the server, 
    but then an error occurred during the login process and 
    the certificate chain was issued by an authority that is not trusted.
    

Çözüm

Bu TLS/SSL hatasını çözmek için veri kaynağı bağlantısına gidin ve aşağıdaki görüntüde gösterildiği gibi Sunucu Sertifikasını Doğrula bölümünde ayarı devre dışı bırakın:

 Screenshot of resolving TLS/SSL error window by disabling the certificate.

Bu ayarı devre dışı bırakdıktan sonra hata iletisi artık görüntülenmez.

Kimliğe bürünme

Kimliğe bürünme için günlük girdileri şuna benzer girdiler içerir:

About to impersonate user DOMAIN\User (IsAuthenticated: True, ImpersonationLevel: Impersonation).

Bu günlük girdisindeki önemli öğe, girdiden sonra ImpersonationLevel: görüntülenen bilgilerdir. Değerinden Impersonation farklı herhangi bir değer, kimliğe bürünme özelliğinin düzgün gerçekleşmediğini gösterir.

Çözüm

Ağ geçidinde ağ geçidi hizmet hesabına yerel ilke hakları verme başlığı altında yer alan yönergeleri izleyerek doğru şekilde ayarlayabilirsinizImpersonationLevel.

Yapılandırma dosyasını değiştirdikten sonra, değişikliğin etkili olması için ağ geçidi hizmetini yeniden başlatın.

Doğrulama

Raporu yenileyin veya oluşturun ve ardından ağ geçidi günlüklerini toplayın. En son GatewayInfo dosyasını açın ve şu dizeyi denetleyin: About to impersonate user DOMAIN\User (IsAuthenticated: True, ImpersonationLevel: Impersonation). Ayarın döndürdüğünden ImpersonationLevelImpersonationemin olun.

Temsilci

Temsilci seçme sorunları genellikle Power BI hizmeti genel hatalar olarak görünür. Sorunun bir temsilci sorunu olmadığından emin olmak için Wireshark izlemelerini toplayın ve Kerberos'ı filtre olarak kullanın. Wireshark hakkında daha fazla bilgi edinmek ve Kerberos hataları hakkında bilgi için bkz . Ağ yakalamalarında Kerberos hataları.

Aşağıdaki belirtiler ve sorun giderme adımları bazı yaygın sorunların giderilmesine yardımcı olabilir.

SPN sorunları

Aşağıdaki hatayı görürseniz: The import [table] matches no exports. Did you miss a module reference?: Mashup[date]*.log araştırırken hizmet asıl adı (SPN) sorunlarıyla karşılaşıyorsunuz demektir.

Wireshark izlemelerini kullanarak daha fazla araştırma yaptığınızda hatasını KRB4KDC_ERR_S_PRINCIPAL_UNKOWNgösterirsiniz. Bu, SPN'nin bulunamadığını veya mevcut olmadığını gösterir. Aşağıdaki görüntüde bir örnek gösterilmektedir:

Screenshot showing a service principal name error.

Çözüm

Bu sorun gibi SPN sorunlarını çözmek için hizmet hesabına bir SPN eklemeniz gerekir. Daha fazla bilgi için SAP HANA veritabanı konakları için Kerberos yapılandırma makalesindeki SAP belgelerine bakın.

Ayrıca, sonraki bölümde açıklanan çözüm yönergelerini izleyin.

Kimlik bilgisi sorunları yok

Bu sorunla ilişkili net belirtiler olmayabilir. Mashup[date]*.log araştırdığınızda aşağıdaki hatayı görürsünüz:

29T20:21:34.6679184Z","Action":"RemoteDocumentEvaluator/RemoteEvaluation/HandleException","HostProcessId":"1396","identity":"DirectQueryPool","Exception":"Exception:\r\nExceptionType: Microsoft.Mashup.Engine1.Runtime.ValueException, Microsoft.MashupEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35\r\nMessage:

Aynı dosyayı daha fazla araştırdığınızda aşağıdaki (yardımcı olmayan) hata görüntülenir:

No credentials are available in the security package

Wireshark izlemelerinin yakalanması şu hatayı ortaya çıkartır: KRB5KDC_ERR_BADOPTION.

Screenshot showing a 'No credentials error'.

Bu hatalar genellikle SPN hdb/hana2-s4-sso2.westus2.cloudapp.azure.com dosyasının bulunabileceği ancak bu hesabın Ağ Geçidi hizmet hesabındaki Temsilci bölmesinde temsilci kimlik bilgileri sunabileceği Hizmetlerde bulunmadığı anlamına gelir.

Çözüm

Kimlik bilgisi yok sorununu çözmek için Kerberos kısıtlanmış temsilini yapılandırma başlığında açıklanan adımları izleyin. Düzgün tamamlandığında, ağ geçidi hizmet hesabındaki temsilci sekmesi, bu hesabın temsilci kimlik bilgilerini sunabileceği Hizmetler listesindeki HansaWorld Veritabanı (HDB) dosyasını ve tam etki alanı adını (FQDN) yansıtır.

Doğrulama

Yukarıdaki adımların izlenmesi sorunu çözmelidir. Kerberos sorunları yaşamaya devam ediyorsanız, Power BI ağ geçidinde veya HANA sunucusunun kendisinde yanlış yapılandırmanız olabilir.

Kimlik bilgileri hataları

Kimlik bilgileri hatalarıyla karşılaşırsanız, günlüklerdeki veya izlemelerdeki hatalar, hataları açıklayan Credentials are invalid veya benzer hataları ortaya çıkarır. Bu hatalar, SAP HANA gibi bağlantının veri kaynağı tarafında farklı şekilde ortaya çıkabilir. Aşağıdaki görüntüde örnek bir hata gösterilmektedir:

Screenshot showing an invalid credentials error.

Belirti 1

HANA kimlik doğrulama izlemelerinde aşağıdaki iletiye benzer girdiler görebilirsiniz:

[Authentication|manager.cpp:166] Kerberos: Using Service Principal 
Name johnny@contoso.com@CONTOSO.COM with name type: GSS_KRB5_NT_PRINCIPAL_NAME 
[Authentication|methodgssinitiator.cpp:367] Got principal name: 
johnny@contoso.com@CONTOSO.COM

Çözüm

Microsoft Entra Bağlan hizmetini zaten yapılandırmış olsanız bile ağ geçidi makinesinde kullanıcı eşleme yapılandırma parametrelerini ayarlama başlığında açıklanan yönergeleri izleyin.

Doğrulama

Doğrulamayı tamamladıktan sonra raporu Power BI hizmeti başarıyla yükleyebilirsiniz.

Belirti 2

HANA kimlik doğrulama izlemelerinde aşağıdaki girişe benzer girdiler görebilirsiniz:

Authentication ManagerAcceptor.cpp(00233) : Extending list of expected
external names by johnny@CONTOSO.COM (method: GSS) Authentication 
AuthenticationInfo.cpp(00168) : ENTER getAuthenticationInfo 
(externalName=johnny@CONTOSO.COM) Authentication AuthenticationInfo.cpp(00237) : 
Found no user with expected external name!

Çözüm

Kimliklerin düzgün eşleşip eşleşmediğini belirlemek için HANA Kullanıcısı altındaki Kerberos dış kimliğini denetleyin.

Doğrulama

Sorunu çözdükten sonra, Power BI hizmeti raporları oluşturabilir veya yenileyebilirsiniz.

Şirket içi veri ağ geçidi ve DirectQuery hakkında daha fazla bilgi için aşağıdaki kaynaklara bakın: