Mengaktifkan Propagasi Utama SAP untuk umpan OData langsung dengan Power Query
Bekerja dengan himpunan data SAP di Microsoft Excel atau Power BI adalah persyaratan umum bagi pelanggan.
Artikel ini menjelaskan konfigurasi dan komponen yang diperlukan untuk mengaktifkan konsumsi himpunan data SAP melalui OData dengan Power Query. Integrasi data SAP dianggap "langsung" karena dapat di-refresh dari klien seperti Microsoft Excel atau Power BI sesuai permintaan, tidak seperti ekspor data (seperti ekspor CSV SAP List Viewer (ALV) misalnya. Ekspor tersebut bersifat statis dan tidak memiliki hubungan berkelanjutan dengan asal data.
Artikel ini memberi penekanan pada pemetaan pengguna end-to-end antara identitas Microsoft Entra yang diketahui di Power Query dan pengguna backend SAP. Mekanisme ini sering disebut sebagai Propagasi Utama SAP.
Fokus konfigurasi yang dijelaskan adalah pada Azure API Management, SAP Gateway, SAP OAuth 2.0 Server dengan AS ABAP, dan sumber OData, tetapi konsep yang digunakan berlaku untuk sumber daya berbasis web apa pun.
Penting
Catatan: SAP Principal Propagation memastikan pemetaan pengguna ke pengguna berlisensi bernama SAP. Untuk pertanyaan terkait lisensi SAP, silakan hubungi perwakilan SAP Anda.
Gambaran umum produk Microsoft dengan integrasi SAP
Integrasi antara produk SAP dan portofolio Microsoft 365 berkisar dari kode kustom, dan add-on mitra ke produk Office yang sepenuhnya disesuaikan. Berikut adalah beberapa contohnya:
Mekanisme yang dijelaskan dalam artikel ini menggunakan kemampuan OData bawaan standar Power Query dan menekankan untuk lanskap SAP yang disebarkan di Azure. Alamat lanskap lokal dengan Gateway yang dihost sendiri Azure API Management.
Untuk informasi selengkapnya tentang produk Microsoft mana yang mendukung Power Query secara umum, lihat dokumentasi Power Query.
Pertimbangan penyiapan
Pengguna akhir memiliki pilihan antara desktop lokal atau klien berbasis web (misalnya Excel atau Power BI). Lingkungan eksekusi klien perlu dipertimbangkan untuk jalur jaringan antara aplikasi klien dan beban kerja SAP target. Solusi akses jaringan seperti VPN tidak berada dalam cakupan untuk aplikasi seperti Excel untuk web.
Azure API Management mencerminkan kebutuhan lingkungan lokal dan berbasis web dengan mode penyebaran berbeda yang dapat diterapkan ke lanskap Azure (internal atau eksternal). Internal
mengacu pada instans yang sepenuhnya dibatasi untuk jaringan virtual privat, sedangkan external
mempertahankan akses publik ke Azure API Management. Penginstalan lokal memerlukan penyebaran hibrid untuk menerapkan pendekatan seperti halnya menggunakan Gateway yang dihosting sendiri oleh Azure API Management.
Power Query memerlukan URL layanan API yang cocok dan URL ID aplikasi Microsoft Entra. Konfigurasikan domain kustom untuk Azure API Management untuk memenuhi persyaratan.
SAP Gateway perlu dikonfigurasi untuk mengekspos layanan OData target yang diinginkan. Temukan dan aktifkan layanan yang tersedia melalui kode /IWFND/MAINT_SERVICE
transaksi SAP . Untuk informasi selengkapnya, lihat Konfigurasi OData SAP.
Konfigurasi domain kustom Azure API Management
Lihat di bawah cuplikan layar konfigurasi contoh di API Management menggunakan domain kustom yang disebut api.custom-apim.domain.com
dengan sertifikat terkelola dan Domain Azure App Service. Untuk opsi sertifikat domain lainnya, lihat dokumentasi Azure API Management.
Selesaikan penyiapan domain kustom Anda sesuai persyaratan domain. Untuk informasi selengkapnya, lihat dokumentasi domain kustom. Untuk membuktikan kepemilikan nama domain dan memberikan akses ke sertifikat, tambahkan catatan DNS tersebut ke Domain custom-apim.domain.com
Azure App Service Anda seperti di bawah ini:
Pendaftaran aplikasi Microsoft Entra masing-masing untuk penyewa Azure API Management akan terlihat seperti di bawah ini.
Catatan
Jika domain kustom untuk Azure API Management bukan opsi untuk Anda, Anda perlu menggunakan Konektor Power Query kustom sebagai gantinya.
Desain kebijakan Azure API Management untuk Power Query
Gunakan kebijakan Azure API Management ini untuk API OData target Anda untuk mendukung alur autentikasi Power Query. Lihat di bawah cuplikan dari kebijakan tersebut yang menyoroti mekanisme autentikasi. Temukan ID klien yang digunakan untuk Power Query di sini.
<!-- 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>
Selain dukungan alur masuk Akun Organisasi, kebijakan ini mendukung penulisan ulang respons URL OData karena server target membalas dengan URL asli. Lihat di bawah ini cuplikan dari kebijakan yang disebutkan:
<!-- 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>
Catatan
Untuk informasi selengkapnya tentang akses SAP yang aman dari desain jaringan perimeter Internet dan SAP, lihat panduan ini. Mengenai mengamankan API SAP dengan Azure, lihat artikel ini.
Autentikasi SAP OData melalui Power Query di Excel Desktop
Dengan konfigurasi tertentu, mekanisme autentikasi bawaan Power Query menjadi tersedia untuk API OData yang diekspos. Tambahkan sumber OData baru ke lembar Excel melalui pita Data (Dapatkan Data -> Dari Sumber Lain -> Dari Umpan OData). Pertahankan URL layanan target Anda. Contoh di bawah ini menggunakan layanan demo SAP Gateway GWSAMPLE_BASIC. Temukan atau aktifkan menggunakan transaksi /IWFND/MAINT_SERVICE
SAP . Terakhir tambahkan ke Azure API Management menggunakan panduan impor OData resmi.
Ambil URL Dasar dan sisipkan di aplikasi target Anda. Contoh di bawah ini memperlihatkan pengalaman integrasi dengan Excel Desktop.
Alihkan metode masuk ke akun Organisasi dan klik Masuk. Berikan akun Microsoft Entra yang dipetakan ke pengguna SAP bernama di Gateway SAP menggunakan Propagasi Utama SAP. Untuk informasi selengkapnya tentang konfigurasi, lihat tutorial Microsoft ini. Pelajari selengkapnya tentang Propagasi Utama SAP dari postingan komunitas SAP ini dan seri video ini.
Lanjutkan untuk memilih di tingkat mana pengaturan autentikasi harus diterapkan oleh Power Query di Excel. Contoh di bawah ini menunjukkan pengaturan yang akan berlaku untuk semua layanan OData yang dihosting pada sistem SAP target (tidak hanya ke layanan sampel GWSAMPLE_BASIC).
Catatan
Pengaturan cakupan otorisasi pada tingkat URL di layar di bawah ini tidak bergantung pada otorisasi aktual pada backend SAP. SAP Gateway tetap menjadi validator akhir dari setiap permintaan dan otorisasi terkait dari pengguna SAP bernama yang dipetakan.
Penting
Panduan di atas berfokus pada proses mendapatkan token autentikasi yang valid dari ID Microsoft Entra melalui Power Query. Token ini perlu diproses lebih lanjut untuk Propagasi Utama SAP.
Mengonfigurasi Propagasi Utama SAP dengan Azure API Management
Gunakan kebijakan Azure API Management kedua ini untuk SAP guna menyelesaikan konfigurasi untuk Propagasi Utama SAP pada lapisan tengah. Untuk informasi selengkapnya tentang konfigurasi backend SAP Gateway, lihat tutorial Microsoft ini.
Catatan
Pelajari selengkapnya tentang Propagasi Utama SAP dari postingan komunitas SAP ini dan seri video ini.
Kebijakan ini bergantung pada penyiapan SSO yang ditetapkan antara MICROSOFT Entra ID dan SAP Gateway (gunakan SAP NetWeaver dari galeri Microsoft Entra). Lihat di bawah ini contoh dengan pengguna demo Adele Vance. Pemetaan pengguna antara MICROSOFT Entra ID dan sistem SAP terjadi berdasarkan nama prinsipal pengguna (UPN) sebagai pengidentifikasi pengguna unik.
Pemetaan UPN dipertahankan di back end SAP menggunakan SAML2 transaksi.
Menurut konfigurasi bernama pengguna SAP ini akan dipetakan ke masing-masing pengguna Microsoft Entra. Lihat di bawah contoh konfigurasi dari back end SAP menggunakan kode transaksi SU01.
Untuk informasi selengkapnya tentang Server SAP OAuth 2.0 yang diperlukan dengan konfigurasi AS ABAP , lihat tutorial Microsoft tentang SSO dengan SAP NetWeaver ini menggunakan OAuth.
Menggunakan kebijakan Azure API Management yang dijelaskan setiap produk Microsoft yang diaktifkan Power Query dapat memanggil layanan OData yang dihosting SAP, sambil menghormati pemetaan pengguna bernama SAP.
Akses SAP OData melalui aplikasi dan layanan lain yang diaktifkan Power Query
Contoh di atas memperlihatkan alur untuk Excel Desktop, tetapi pendekatan ini berlaku untuk produk Microsoft yang diaktifkan Power Query OData. Untuk informasi selengkapnya tentang konektor OData Power Query dan produk mana yang mendukungnya, lihat dokumentasi Konektor Power Query. Untuk informasi selengkapnya tentang produk mana yang mendukung Power Query secara umum, lihat dokumentasi Power Query.
Konsumen populer adalah Power BI, Excel untuk web, Power Apps (Aliran Data) dan Analysis Service.
Mengatasi skenario write-back SAP dengan Power Automate
Pendekatan yang dijelaskan juga berlaku untuk skenario write-back. Misalnya, Anda dapat menggunakan Power Automate untuk memperbarui mitra bisnis di SAP menggunakan OData dengan konektor berkemampuan http (atau menggunakan RFC atau BAPI). Lihat di bawah contoh dasbor layanan Power BI yang tersambung ke Power Automate melalui pemberitahuan berbasis nilai dan tombol (disorot pada cuplikan layar). Pelajari selengkapnya tentang memicu alur dari laporan Power BI pada dokumentasi Power Automate.
Tombol yang disorot memicu alur yang meneruskan permintaan OData PATCH ke Gateway SAP untuk mengubah peran mitra bisnis.
Catatan
Gunakan kebijakan Azure API Management untuk SAP untuk menangani autentikasi, token refresh, token CSRF, dan penembolokan token secara keseluruhan di luar alur.
Langkah berikutnya
Pelajari dari mana Anda bisa menggunakan OData dengan Power Query
Bekerja menggunakan SAP OData API di Azure API Management
Mengonfigurasi Api Management Azure untuk API SAP
Tutorial: Menganalisis data penjualan dari Excel dan umpan OData
Melindungi API dengan Application Gateway dan API Management
Mengintegrasikan API Management dalam jaringan virtual internal dengan Application Gateway
Memahami Azure Application Gateway dan Web Application Firewall untuk SAP