Power Query ile canlı OData akışları için SAP Asıl Yayma'yı etkinleştirme
Microsoft Excel veya Power BI'da SAP veri kümeleriyle çalışmak müşteriler için yaygın bir gereksinimdir.
Bu makalede, Power Query ile OData aracılığıyla SAP veri kümesi tüketimini etkinleştirmek için gerekli yapılandırmalar ve bileşenler açıklanmaktadır. Sap veri tümleştirmesi, örneğin sap Liste Görüntüleyicisi (ALV) CSV dışarı aktarmalarından farklı olarak Microsoft Excel veya Power BI gibi istemcilerden isteğe bağlı olarak yenilenebildiği için "canlı" olarak kabul edilir. Bu dışarı aktarmalar doğası gereği statiktir ve veri kaynağıyla sürekli bir ilişkisi yoktur.
Makalede, Power Query'deki bilinen Microsoft Entra kimliği ile SAP arka uç kullanıcısı arasında uçtan uca kullanıcı eşlemesi vurgulanmaktadır. Bu mekanizma genellikle SAP Sorumlusu Yayma olarak adlandırılır.
Açıklanan yapılandırmanın odak noktası Azure API Management, SAP Gateway, AS ABAP ile SAP OAuth 2.0 Sunucusu ve OData kaynaklarıdır, ancak kullanılan kavramlar web tabanlı kaynaklar için geçerlidir.
Önemli
Not: SAP Sorumlusu Yayma, lisanslı adlı SAP kullanıcısına kullanıcı eşlemesi sağlar. SAP lisansıyla ilgili sorularınız için sap temsilcinize başvurun.
SAP tümleştirmesi ile Microsoft ürünlerine genel bakış
SAP ürünleriyle Microsoft 365 portföyü arasındaki tümleştirmeler, özel kodlar ve iş ortağı eklentilerinden tam olarak özelleştirilmiş Office ürünlerine kadar değişir. Aşağıda birkaç örnek verilmiştir:
SAP arka uçlarıyla etkileşime geçmek için özel Excel Makroları
SAP Liste Görüntüleyicisi'nden (ALV) Microsoft Excel'e aktarma
Bu makalede açıklanan mekanizma, Power Query'nin standart yerleşik OData özelliklerini kullanır ve Azure'da dağıtılan SAP manzaralarını vurgular. Azure API Management şirket içinde barındırılan Ağ Geçidi ile şirket içi ortamları ele alın.
Genel olarak Power Query'yi hangi Microsoft ürünlerinin desteklediği hakkında daha fazla bilgi için Power Query belgelerine bakın.
Kurulumla ilgili dikkat edilmesi gerekenler
Son kullanıcıların yerel masaüstü veya web tabanlı istemciler (örneğin Excel veya Power BI) arasında bir seçeneği vardır. İstemci uygulaması ile hedef SAP iş yükü arasındaki ağ yolu için istemci yürütme ortamının dikkate alınması gerekir. VPN gibi ağ erişim çözümleri, Web için Excel gibi uygulamaların kapsamında değildir.
Azure API Management , Yerel ve web tabanlı ortam gereksinimlerini, Azure manzaralarına (iç veya dış) uygulanabilen farklı dağıtım modlarıyla yansıtır. Internal
özel bir sanal ağ ile tamamen kısıtlanmış örneklere karşılık gelirken external
Azure API Management'a genel erişimi korur. Şirket içi yüklemeler, Azure API Management şirket içinde barındırılan Ağ Geçidi'ni kullanırken olduğu gibi yaklaşımı uygulamak için karma dağıtım gerektirir.
Power Query için eşleşen API hizmeti URL'si ve Microsoft Entra uygulama kimliği URL'si gerekir. Gereksinimi karşılamak üzere Azure API Management için özel bir etki alanı yapılandırın.
SAP Gateway'in istenen hedef OData hizmetlerini kullanıma sunması için yapılandırılması gerekir. SAP işlem kodu /IWFND/MAINT_SERVICE
aracılığıyla kullanılabilir hizmetleri keşfedin ve etkinleştirin. Daha fazla bilgi için bkz. SAP'nin OData yapılandırması.
Azure API Management özel etki alanı yapılandırması
Yönetilen sertifika ve Azure Uygulaması Hizmet Etki Alanı ile adlı api.custom-apim.domain.com
özel bir etki alanı kullanan API Management'taki örnek yapılandırmanın ekran görüntüsüne bakın. Daha fazla etki alanı sertifikası seçeneği için Azure API Management belgelerine bakın.
Özel etki alanınızın kurulumunu etki alanı gereksinimlerine göre tamamlayın. Daha fazla bilgi için özel etki alanı belgelerine bakın. Etki alanı adı sahipliğini kanıtlamak ve sertifikaya erişim vermek için bu DNS kayıtlarını aşağıdaki gibi Azure Uygulaması Hizmet Etki Alanınıza custom-apim.domain.com
ekleyin:
Azure API Management kiracısı için ilgili Microsoft Entra uygulama kaydı aşağıdakine benzer olacaktır.
Not
Azure API Management için özel etki alanı sizin için bir seçenek değilse, bunun yerine özel bir Power Query Bağlayıcısı kullanmanız gerekir.
Power Query için Azure API Management ilke tasarımı
Power Query'nin kimlik doğrulama akışını desteklemek üzere hedef OData API'niz için bu Azure API Management ilkesini kullanın. Bu ilkedeki kimlik doğrulama mekanizmasını vurgulayan bir kod parçacığının altına bakın. Power Query için kullanılan istemci kimliğini burada bulabilirsiniz.
<!-- if empty Bearer token supplied assume Power Query sign-in request as described [here:](/power-query/connectorauthentication#supported-workflow) -->
<when condition="@(context.Request.Headers.GetValueOrDefault("Authorization","").Trim().Equals("Bearer"))">
<return-response>
<set-status code="401" reason="Unauthorized" />
<set-header name="WWW-Authenticate" exists-action="override">
<!-- Check the client ID for Power Query [here:](/power-query/connectorauthentication#supported-workflow) -->
<value>Bearer authorization_uri=https://login.microsoftonline.com/{{AADTenantId}}/oauth2/authorize?response_type=code%26client_id=a672d62c-fc7b-4e81-a576-e60dc46e951d</value>
</set-header>
</return-response>
</when>
Kuruluş Hesabı oturum açma akışının desteğine ek olarak, hedef sunucu özgün URL'lerle yanıt verdiği için ilke OData URL yanıtını yeniden yazmayı destekler. Bahsedilen ilkeden bir kod parçacığının altına bakın:
<!-- URL rewrite in body only required for GET operations -->
<when condition="@(context.Request.Method == "GET")">
<!-- ensure downstream API metadata matches Azure API Management caller domain in Power Query -->
<find-and-replace from="@(context.Api.ServiceUrl.Host +":"+ context.Api.ServiceUrl.Port + context.Api.ServiceUrl.Path)" to="@(context.Request.OriginalUrl.Host + ":" + context.Request.OriginalUrl.Port + context.Api.Path)" />
</when>
Not
İnternet'ten güvenli SAP erişimi ve SAP çevre ağı tasarımı hakkında daha fazla bilgi için bu kılavuza bakın. AZURE ile SAP API'lerinin güvenliğini sağlamayla ilgili olarak bu makaleye bakın.
Excel Desktop'ta Power Query aracılığıyla SAP OData kimlik doğrulaması
Verilen yapılandırmayla, Power Query'nin yerleşik kimlik doğrulama mekanizması kullanıma sunulan OData API'leri için kullanılabilir hale gelir. Veri şeridi aracılığıyla Excel sayfasına yeni bir OData kaynağı ekleyin (Veri Al -> Diğer Kaynaklardan -> OData Akışından). Hedef hizmet URL'nizi koruyun. Aşağıdaki örnekte SAP Gateway tanıtım hizmeti GWSAMPLE_BASIC kullanılır. SAP işlemini /IWFND/MAINT_SERVICE
kullanarak keşfedin veya etkinleştirin. Son olarak resmi OData içeri aktarma kılavuzunu kullanarak Azure API Management'a ekleyin.
Temel URL'yi alın ve hedef uygulamanıza ekleyin. Aşağıdaki örnekte Excel Desktop ile tümleştirme deneyimi gösterilmektedir.
Oturum açma yöntemini Kuruluş hesabı olarak değiştirin ve Oturum aç'a tıklayın. SAP Sorumlu Yayma kullanarak SAP Gateway'de adlandırılmış SAP kullanıcısına eşlenen Microsoft Entra hesabını sağlayın. Yapılandırma hakkında daha fazla bilgi için bu Microsoft öğreticisine bakın. Bu SAP topluluk gönderisinden ve bu video serisinden SAP Sorumlusu Yayma hakkında daha fazla bilgi edinin.
Excel'de Power Query tarafından kimlik doğrulama ayarlarının hangi düzeyde uygulanacağını seçmeye devam edin. Aşağıdaki örnekte, hedef SAP sisteminde barındırılan tüm OData hizmetleri için geçerli olacak bir ayar gösterilmektedir (yalnızca örnek hizmet GWSAMPLE_BASIC için değil).
Not
Aşağıdaki ekranda URL düzeyindeki yetkilendirme kapsamı ayarı, SAP arka uçtaki gerçek yetkilendirmelerden bağımsızdır. SAP Gateway, eşlenmiş sap kullanıcısı için her isteğin ve ilişkili yetkilendirmelerin son doğrulayıcısı olmaya devam eder.
Önemli
Yukarıdaki kılavuz, Power Query aracılığıyla Microsoft Entra Id'den geçerli bir kimlik doğrulama belirteci alma işlemine odaklanır. BU belirtecin SAP Sorumlusu Yayması için daha fazla işlenmesi gerekir.
Azure API Management ile SAP Sorumlusu Yayma'sını yapılandırma
Orta katmanda SAP Sorumlusu Yayma yapılandırmasını tamamlamak üzere SAP için bu ikinci Azure API Management ilkesini kullanın. SAP Gateway arka ucu yapılandırması hakkında daha fazla bilgi için bu Microsoft öğreticisine bakın.
Not
Bu SAP topluluk gönderisinden ve bu video serisinden SAP Sorumlusu Yayma hakkında daha fazla bilgi edinin.
İlke, Microsoft Entra Id ile SAP Gateway arasında yerleşik bir SSO kurulumuna dayanır (Microsoft Entra galerisinden SAP NetWeaver kullanın). Adele Vance tanıtım kullanıcısı ile ilgili bir örneği aşağıda bulabilirsiniz. Microsoft Entra Id ile SAP sistemi arasındaki kullanıcı eşlemesi, benzersiz kullanıcı tanımlayıcısı olarak kullanıcı asıl adına (UPN) göre gerçekleşir.
UPN eşlemesi, SAML2 işlemi kullanılarak SAP arka ucunda tutulur.
SAP kullanıcıları adlı bu yapılandırmaya göre ilgili Microsoft Entra kullanıcısıyla eşlenir. SU01 işlem kodunu kullanarak SAP arka ucundan örnek yapılandırmaya bakın.
AS ABAP yapılandırmasıyla gerekli SAP OAuth 2.0 Sunucusu hakkında daha fazla bilgi için, OAuth kullanan SAP NetWeaver ile SSO hakkında bu Microsoft öğreticisine bakın.
Açıklanan Azure API Management ilkelerinin kullanılması, Herhangi bir Power Query özellikli Microsoft ürünü SAP tarafından barındırılan OData hizmetlerini çağırırken SAP adlı kullanıcı eşlemesini de kabul edebilir.
Diğer Power Query özellikli uygulamalar ve hizmetler aracılığıyla SAP OData erişimi
Yukarıdaki örnekte Excel Desktop için akış gösterilmektedir, ancak bu yaklaşım Power Query OData özellikli tüm Microsoft ürünleri için geçerlidir. Power Query'nin OData bağlayıcısı ve hangi ürünlerin desteklediği hakkında daha fazla bilgi için Power Query Bağlayıcıları belgelerine bakın. Genel olarak Power Query'yi destekleyen ürünler hakkında daha fazla bilgi için Power Query belgelerine bakın.
Popüler tüketiciler Power BI, Web için Excel, Power Apps (Veri akışları) ve Analysis Service'tir.
Power Automate ile SAP geri yazma senaryolarını ele al
Açıklanan yaklaşım, geri yazma senaryoları için de geçerlidir. Örneğin, Http etkin bağlayıcılarla (alternatif olarak RFC'leri veya BAPI'leri kullanın) OData kullanarak SAP'deki bir iş ortağını güncelleştirmek için Power Automate'i kullanabilirsiniz. Değer tabanlı uyarılar ve bir düğme (ekran görüntüsünde vurgulanmış) aracılığıyla Power Automate'e bağlı bir Power BI hizmeti panosu örneği aşağıda verilmiştir. Power Automate belgelerinde Power BI raporlarından akışları tetikleme hakkında daha fazla bilgi edinin.
Vurgulanan düğme, iş ortağı rolünü değiştirmek için OData PATCH isteğini SAP Gateway'e ileden bir akışı tetikler.
Not
Kimlik doğrulamasını, yenileme belirteçlerini, CSRF belirteçlerini ve akışın dışındaki belirteçlerin genel önbelleğe alınmasını işlemek için SAP için Azure API Management ilkesini kullanın.
Sonraki adımlar
Power Query ile OData'nın nerede kullanılacağını öğrenin
Azure API Management'ta SAP OData API'leriyle çalışma
SAP API'leri için Azure API Management'ı yapılandırma
Öğretici: Excel'den ve OData akışından gelen satış verilerini analiz etme
Application Gateway ve API Management ile API'leri koruma
API Management'i Application Gateway ile iç sanal ağda tümleştirme
SAP için Azure Uygulaması Lication Gateway ve Web Uygulaması Güvenlik Duvarı anlama