Tutorial: Mengonfigurasi Manajer Kebijakan Akses F5 BIG-IP untuk SSO berbasis header

Pada artikel ini, Anda akan belajar menerapkan Akses Hibrid Aman (SHA) dengan akses menyeluruh (SSO) ke aplikasi berbasis header menggunakan konfigurasi lanjutan BIG-IP F5.

Mengonfigurasi aplikasi yang diterbitkan BIG-IP pada Azure AD memberikan banyak keuntungan, termasuk:

  • Peningkatan tata kelola Zero Trust melalui pra-autentikasi dan Akses Bersyarat Azure AD

  • Single sign-on/Akses menyeluruh (SSO) penuh antara Azure AD dengan layanan yang diterbitkan BIG-IP.

  • Mengelola identitas dan akses dari satu sarana kontrol, portal Azure

Untuk mempelajari semua keuntungannya, lihat artikel tentang integrasi F5 BIG-IP dan Azure Active Directory dan apa itu akses aplikasi dan akses menyeluruh dengan Azure Active Directory.

Deskripsi skenario

Untuk skenario ini, kami memiliki aplikasi lama yang menggunakan header otorisasi HTTP untuk mengontrol akses ke konten yang dilindungi.

Idealnya, akses aplikasi harus dikelola langsung oleh Azure AD. Namun karena merupakan warisan, segala bentuk protokol autentikasi modern tidak tersedia. Modernisasi akan membutuhkan banyak usaha dan waktu, menimbulkan biaya yang tidak dapat dihindari dan potensi risiko waktu henti. Sebagai gantinya, BIG-IP yang disebarkan antara internet publik dan aplikasi internal akan digunakan sebagai gerbang akses masuk ke aplikasi.

Memiliki BIG-IP di depan aplikasi memungkinkan kita melapisi layanan dengan pra-autentikasi Azure AD dan akses menyeluruh berbasis header, yang secara signifikan meningkatkan postur keamanan aplikasi secara keseluruhan.

Arsitektur skenario

Solusi akses hibrid aman untuk skenario ini terdiri dari:

  • Aplikasi: BIG-IP menerbitkan layanan yang akan dilindungi oleh dan Azure AD SHA.

  • Azure AD: Penyedia Identitas (IdP) Security Assertion Markup Language (SAML) bertanggung jawab untuk verifikasi info masuk pengguna, Akses Bersyarat (CA), dan SSO ke BIG-IP. Melalui SSO, Azure AD menyediakan BIG-IP dengan atribut sesi yang diperlukan termasuk ID pengguna.

  • BIG-IP: Membalik proksi dan penyedia layanan SAML (SP) ke aplikasi, mendelegasikan autentikasi ke SAML IdP, sebelum melakukan SSO berbasis header ke aplikasi backend.

Screenshot shows the architecture flow diagram

Langkah Deskripsi
1. Pengguna terhubung ke titik akhir SP SAML aplikasi (BIG-IP).
2. Kebijakan akses APM BIG-IP mengalihkan pengguna ke Microsoft Azure AD (SAML IdP).
3. Azure AD melakukan pra-autentikasi pengguna dan menerapkan kebijakan OS yang diberlakukan.
4. Pengguna diarahkan ke BIG-IP (SAML SP) dan SSO dilakukan menggunakan token SAML yang dikeluarkan.
5. BIG-IP menyuntikkan atribut Azure AD sebagai header dalam permintaan ke aplikasi.
6. Aplikasi mengotorisasi permintaan dan mengembalikan payload.

Prasyarat

Pengalaman BIG-IP sebelumnya tidak diperlukan, namun Anda memerlukan:

  • Langganan gratis Microsoft Azure Active Directory atau yang lebih tinggi

  • BIG-IP lama atau sebarkan BIG-IP Virtual Edition (VE) di Azure

  • Salah satu SKU lisensi F5 BIG-IP berikut

    • F5 BIG-IP® Bundel terbaik

    • Lisensi mandiri F5 BIG-IP Access Policy Manager ™ (APM)

    • Lisensi tambahan F5 BIG-IP Access Policy Manager ™ (APM) pada BIG-IP F5 BIG-IP® Local Traffic Manager ™ (LTM)

    • Fitur lengkap 90 hari BIG-IP lisensi uji coba.

  • Identitas pengguna harus disinkronkan dari direktori lokal mereka ke Azure Active Directory

  • Akun dengan izin admin aplikasi Microsoft Azure Active Directory

  • Sertifikat SSL untuk layanan penerbitan melalui HTTPS atau gunakan sertifikat default saat pengujian

  • Aplikasi berbasis header yang ada atau siapkan aplikasi header IIS sederhana untuk pengujian

Metode konfigurasi BIG-IP

Ada banyak metode untuk mengonfigurasi BIG-IP untuk skenario ini, termasuk dua opsi berbasis templat dan konfigurasi lanjutan. Artikel ini mencakup pendekatan lanjutan yang menyediakan cara yang lebih fleksibel dalam menerapkan SHA yang aman dengan membuat semua objek konfigurasi BIG-IP secara manual. Anda juga akan menggunakan pendekatan ini untuk skenario yang tidak tercakup oleh templat konfigurasi terpandu.

Catatan

Semua contoh untai (karakter) atau nilai dalam artikel ini harus diganti dengan untai (karakter)yang digunakan untuk lingkungan Anda yang sebenarnya.

Menyiapkan kepercayaan federasi SAML antara BIG-IP APM dan Azure AD adalah salah satu langkah pertama dalam menerapkan SHA. Ini menetapkan integrasi yang diperlukan untuk BIG-IP untuk menyerahkan pra-autentikasi dan akses bersyarat ke Azure Active Directory, sebelum memberikan akses ke layanan yang diterbitkan.

  1. Masuk ke portal Azure Active Directory menggunakan akun dengan hak administratif aplikasi.

  2. Dari panel navigasi kiri, pilih Layanan Microsoft Azure Active Directory

  3. Buka Aplikasi Perusahaan dan dari pita bagian atas pilih + Aplikasi baru

  4. Cari F5 di galeri dan pilih integrasi F5 BIG-IP APM Microsoft Azure Active Directory

  5. Berikan nama untuk aplikasi, diikuti dengan Tambah/Buat untuk menambahkannya ke penyewa Anda. Nama harus mencerminkan layanan khusus tersebut.

Mengonfigurasikan Akses Menyeluruh Microsoft Azure Active Directory

  1. Dengan properti aplikasi F5 baru Anda dalam tampilan, buka Kelola>Akses menyeluruh

  2. Pada halaman Pilih metode akses menyeluruh, pilih SAML dan lompati perintah untuk menyimpan pengaturan masuk tunggal dengan memilih Tidak, saya akan simpan nanti

  3. Pada menu Siapkan akses menyeluruh dengan SAML, pilih ikon pena untuk Konfigurasi SAML Dasar untuk memberikan detail berikut:

    a. Ganti URL Pengidentifikasi yang telah ditentukan sebelumnya dengan URL untuk layanan yang diterbitkan BIG-IP Anda. Misalnya, https://mytravel.contoso.com

    b. Lakukan hal yang sama dengan URL Balasan, tetapi sertakan jalur untuk titik akhir SAML APM. Contohnya, https://mytravel.contoso.com/saml/sp/profile/post/acs

    Catatan

    Dalam konfigurasi ini aliran SAML akan beroperasi dalam mode yang dimulai IdP, ketika Azure Active Directory mengeluarkan pengguna dengan pernyataan SAML sebelum diarahkan ke titik akhir layanan BIG-IP untuk aplikasi. APM BIG-IP mendukung mode yang dimulai IDP dan SP.

    c. Untuk Logout URI masukkan titik akhir Keluar Tunggal (SLO) BIG-IP APM yang telah ditentukan sebelumnya oleh header host dari layanan yang diterbitkan. Menyediakan SLO URI memastikan sesi APM BIG-IP pengguna telah berakhir setelah keluar dari Azure Active Directory. Contohnya, https://mytravel.contoso.com/saml/sp/profile/redirect/slr

    Screenshot shows the basic saml configuration

    Catatan

    Dari TMOS v16, titik akhir SAML SLO telah berubah menjadi /saml/sp/profile/redirect/slo.

  4. Pilih Simpan sebelum keluar dari menu konfigurasi SAML dan lompati perintah pengujian SSO

  5. Pilih ikon pena untuk mengedit Atribut Pengguna & Klaim > + Tambah klaim baru

  6. Atur properti klaim dengan yang berikut ini lalu pilih Simpan

    Properti Deskripsi
    Nama IDKaryawan
    Atribut sumber pengguna.idkaryawan

    Screenshot shows manage claims configuration

  7. Pilih + Tambah klaim grup dan pilih Grup yang ditetapkan ke aplikasi>Atribut Sumber>sAMAccountName

    Screenshot shows group claims configuration

  8. Simpan konfigurasi dan tutup menu

    Amati properti bagian Atribut Pengguna & Klaim. Azure Active Directory akan mengeluarkan properti ini kepada pengguna untuk autentikasi APM BIG-IP dan SSO ke aplikasi backend:

    Screenshot shows user attributes and claims configuration

    Jangan ragu untuk menambahkan klaim spesifik lainnya yang mungkin diharapkan oleh aplikasi BIG-IP Anda sebagai header. Setiap klaim yang didefinisikan selain set default hanya akan dikeluarkan jika ada di Azure Active Directory. Dengan cara yang sama, keanggotaan grup atau peran Direktori juga perlu ditentukan terhadap objek pengguna di Microsoft Azure Active Directory sebelum dapat dikeluarkan sebagai klaim.

  9. Di bagian Sertifikat Penandatanganan SAML, pilih tombol Unduh untuk menyimpan file XML Metadata Federasi ke komputer Anda.

    Screenshot shows saml signing certificate

Sertifikat penandatanganan SAML yang dibuat oleh Azure Active Directory memiliki masa berlaku tiga tahun dan harus dikelola menggunakan panduan yang diterbitkan.

Otorisasi Microsoft Azure Active Directory

Secara default, Microsoft Azure Active Directory hanya akan memberikan token kepada pengguna yang telah diberi akses ke layanan.

  1. Masih dalam tampilan konfigurasi aplikasi, pilih Pengguna dan grup.

  2. Pilih +Tambahkan pengguna dan di bilah Tambahkan Tugas, pilih Pengguna dan grup.

  3. Dalam dialog Pengguna dan grup, tambahkan grup pengguna yang diberi otorisasi untuk mengakses aplikasi berbasis header internal, diikuti dengan Pilih>Tetapkan

Ini melengkapi bagian Microsoft Azure Active Directory dari kepercayaan federasi SAML. BIG-IP APM sekarang dapat diatur untuk menerbitkan aplikasi web internal dan dikonfigurasi dengan sekumpulan properti yang sesuai untuk menyelesaikan kepercayaan untuk pra-autentikasi SAML.

Konfigurasi lanjutan

Konfigurasi SAML

Langkah-langkah berikut membuat penyedia layanan BIG-IP SAML dan objek IdP SAML terkait yang diperlukan untuk menyelesaikan federasi aplikasi yang diterbitkan, dengan Azure Active Directory.

  1. Buka Akses>Federasi>Penyedia Layanan SAML>Layanan SP Lokal>, lalu pilih Buat

    Screenshot shows saml service provider create

  2. Berikan Nama dan ID Entitas yang sama persis dengan yang didefinisikan dalam Azure Active Directory sebelumnya

    Screenshot shows new saml service provider service

    Pengaturan Nama SP hanya diperlukan jika ID entitas tidak sama persis dengan bagian nama host dari URL yang diterbitkan atau jika tidak dalam format URL berbasis nama host biasa. Berikan skema eksternal dan nama host dari aplikasi yang sedang diterbitkan jika ID entitas adalah urn:mytravel:contosoonline.

  3. Gulir ke bawah untuk memilih objek SAML SP baru, lalu pilih Ikat/Lepas Konektor IdP.

    Screenshot shows new saml service provider object connectors

  4. Pilih Buat Konektor IDP Baru, lalu dari menu geser turun pilih Dari Metadata

    Screenshot shows edit new saml service idp

  5. Telusuri ke file XML metadata federasi yang Anda unduh sebelumnya dan berikan Nama IdP untuk objek APM yang akan mewakili IdP SAML eksternal. Contohnya, MyTravel_AzureAD

    Screenshot shows new idp connector

  6. Pilih Tambahkan Baris Baru untuk memilih Konektor IdP SAML baru, diikuti denganPembaruan

    Screenshot shows how to update idp connector

  7. Pilih OK untuk menyimpan pengaturan

    Screenshot shows saving the settings

Konfigurasi SSO header

Buat objek SSO APM untuk melakukan SSO header ke aplikasi backend.

  1. Pilih Akses>Profil/Kebijakan>Kebijakan Per-Permintaan>Buat

  2. Berikan nama profil unik dan tambahkan setidaknya satu Bahasa yang Diterima, lalu pilih Selesai. Misalnya, SSO_Headers

    Screenshot shows header configuration

  3. Pilih tautan Edit untuk kebijakan per permintaan baru yang baru saja Anda buat

    Screenshot shows edit per-request policy

  4. Setelah editor kebijakan visual diluncurkan, pilih simbol + di sebelah fallback

    Screenshot shows visual policy editor

  5. Di pop-up, beralih ke tab Tujuan Umum untuk memilih Header HTTP>Tambahkan Item

    Screenshot shows Http header add item

  6. Pilih Tambahkan entri baru untuk membuat 3 entri modifikasi HTTPHeader terpisah menggunakan opsi berikut ini:

    Properti Deskripsi
    Nama header upn
    Nilai Header %{session.saml.last.identity}
    Nama header idkaryawan
    Nilai Header %{session.saml.last.attr.name.employeeid}
    Nama header group_authz
    Nilai Header %{session.saml.last.attr.name.http://schemas.microsoft.com/ws/2008/06/identity/claims/groups}

    Catatan

    Variabel sesi APM yang ditentukan dalam tanda kurung keriting bersifat peka huruf besar/kecil. Jadi, memasukkan EmployeeID ketika nama atribut Azure Ad dikirim sebagai employeeid akan menyebabkan kegagalan pemetaan atribut. Kecuali jika perlu, sebaiknya tentukan semua atribut dalam huruf kecil.

    Screenshot shows Http header modify

  7. Setelah selesai, pilih Simpan dan tutup editor kebijakan visual.

    Screenshot shows per request policy done and save

Mengakses konfigurasi profil

Profil akses mengikat banyak elemen APM yang mengelola akses ke server virtual BIG-IP, termasuk kebijakan akses, konfigurasi SSO, dan pengaturan UI.

  1. Pilih Akses>Profil / Kebijakan>Profil Akses (Kebijakan Per-Sesi)>Buat untuk menyediakan yang berikut ini, lalu pilih Selesai:

    Properti Deskripsi
    Nama MyTravel
    Tipe profil Semua
    Bahasa yang Diterima Menambahkan setidaknya satu bahasa

    Screenshot shows access profile configuration

  2. Pilih tautan Edit untuk profil per sesi yang baru saja Anda buat

    Screenshot shows editing per session profile

  3. Setelah editor kebijakan visual diluncurkan, pilih simbol + di sebelah fallback

    Screenshot shows how to launch the visual policy editor

  4. Di jendela pop-up, pilih Autentikasi>SAML Auth>Add Item

    Screenshot shows adding saml authentication

  5. Untuk konfigurasi SP autentikasi SAML, atur opsi AAA Server untuk menggunakan objek SP SAML yang Anda buat sebelumnya, diikuti dengan Simpan.

    Screenshot shows use aaa server for saml authentication sp

Pemetaan atribut

Meskipun opsional, menambahkan konfigurasi LogonID_Mapping memungkinkan daftar sesi aktif BIG-IP untuk menampilkan UPN pengguna yang masuk, bukan nomor sesi. Ini berguna saat menganalisis log atau pemecahan masalah.

  1. Pilih simbol + untuk cabang Berhasil Autentikasi SAML

    Screenshot shows how to create a saml authentication branch

  2. Di pop-up, pilih Tugas>Tetapkan Variabel>Tambahkan Item

    Screenshot shows how to assign a variable

  3. Berikan nama deskriptif dan di bagian Penetapan Variabel, pilih Tambahkan perubahan entri> baru. Misalnya, LogonID_Mapping.

    Screenshot shows how to add a new entry

  4. Atur kedua variabel untuk menggunakan yang berikut, lalu Selesai>Simpan

    Properti Deskripsi
    Variabel Kustom session.saml.last.identity
    Variabel Sesi session.logon.last.username
  5. Pilih terminal Tolak cabang Berhasil Kebijakan Akses dan ubah menjadi Izinkan, diikuti dengan Simpan

  6. Terapkan kebijakan tersebut dengan memilih Terapkan Kebijakan Akses, lalu tutup tab editor kebijakan visual

Konfigurasi kumpulan backend

Agar BIG-IP tahu di mana meneruskan lalu lintas klien, Anda perlu membuat objek node APM yang mewakili server backend yang menghosting aplikasi Anda, dan tempatkan node tersebut di kumpulan APM.

  1. Pilih Lalu Lintas Lokal > Kumpulan > Daftar Kumpulan > Buat dan berikan nama untuk objek kluster server. Misalnya, MyApps_VMs

    Screenshot shows how apply access policy

  2. Menambahkan objek anggota kumpulan dengan yang berikut:

    Properti Deskripsi
    simpul_name Nama tampilan opsional untuk server hosting aplikasi web backend
    Alamat Alamat IP dari server hosting aplikasi
    Port Layanan Port HTTP/S yang didengarkan aplikasi

    Screenshot shows how to add pool member object

Catatan

Monitor kesehatan memerlukan konfigurasi tambahan yang tidak tercakup dalam tutorial ini.

Konfigurasi server virtual

Server virtual adalah objek pesawat data BIG-IP yang diwakili oleh alamat IP virtual yang mendengarkan permintaan klien ke aplikasi. Setiap lalu lintas yang diterima diproses dan dievaluasi terhadap profil akses APM yang terkait dengan server virtual, sebelum diarahkan sesuai dengan hasil dan pengaturan kebijakan.

  1. Pilih Lalu Lintas Lokal>Server Virtual>Daftar Server Virtual>Buat

  2. Menyediakan server virtual dengan Nama, IP IPv4 / IPv6 yang tidak digunakan yang dapat ditugaskan ke BIG-IP untuk menerima lalu lintas klien, dan mengatur Port Layanan ke 443

    Screenshot shows how to add new virtual server

  3. Profil HTTP: Diatur ke http

  4. SSL Profile (Client) : Memungkinkan Transport Layer Security (TLS), memungkinkan layanan dipublikasikan melalui HTTPS. Pilih profil SSL klien yang Anda buat sebagai bagian dari prasyarat atau tinggalkan default jika pengujian

    Screenshot shows the ssl profile client

  5. Ubah opsi Terjemahan Alamat Sumber menjadi Peta Otomatis

    Screenshot shows the auto map option

  6. Di bawah Kebijakan Akses, atur Profil Akses yang dibuat sebelumnya. Ini mengikat profil praautentikasi Azure AD SAML dan kebijakan SSO header ke server virtual.

    Screenshot shows how to set the access profile

  7. Akhirnya, atur Kumpulan Default untuk menggunakan objek kumpulan backend yang dibuat di bagian sebelumnya, lalu pilih Selesai.

    Screenshot shows how to set default pool

Manajemen sesi

Pengaturan pengelolaan sesi BIG-IP digunakan untuk menentukan kondisi saat sesi pengguna dihentikan atau diizinkan untuk dilanjutkan, batasan untuk pengguna dan alamat IP, serta halaman kesalahan. Anda dapat membuat kebijakan Anda sendiri dengan menuju ke Profil Akses>Kebijakan Akses dan memilih aplikasi Anda dari daftar.

Berkenaan dengan fungsi SLO, setelah mendefinisikan SLO URI di Azure AD akan memastikan IdP dimulai akses keluar dari portal MyApps juga mengakhiri sesi antara klien dan BIG-IP APM. Setelah mengimpor federasi aplikasi metadata.xml kemudian menyediakan APM dengan titik akhir log-out Azure AD SAML untuk sp yang dimulai sign-out. Tetapi agar ini benar-benar efektif, APM perlu tahu persis kapan pengguna keluar.

Pertimbangkan skenario di mana portal web BIG-IP tidak digunakan, pengguna tidak memiliki cara untuk menginstruksikan APM untuk keluar. Bahkan jika pengguna menandatangani aplikasi itu sendiri, BIG-IP secara teknis tidak menyadari hal ini, sehingga sesi aplikasi dapat dengan mudah dipulihkan melalui SSO. Untuk alasan ini sign-out yang dimulai SP perlu pertimbangan yang cermat untuk memastikan sesi dihentikan dengan aman ketika tidak lagi diperlukan.

Salah satu cara untuk mencapai hal ini adalah dengan menambahkan fungsi SLO ke tombol sign out aplikasi Anda, sehingga dapat mengarahkan klien Anda ke titik akhir masuk Azure AD SAML. Titik akhir masuk SAML untuk penyewa Anda dapat ditemukan di Titik Akhir Pendaftaran>Aplikasi.

Jika membuat perubahan pada aplikasi tidak berjalan maka pertimbangkan untuk mendengarkan BIG-IP untuk panggilan masuk aplikasi, dan setelah mendeteksi permintaan, mintalah itu memicu SLO. Rincian lebih lanjut tentang menggunakan BIG-IP iRules untuk mencapai hal ini tersedia dalam artikel K42052145 dan artikel K12056.

Ringkasan

Langkah terakhir ini memberikan rincian semua pengaturan yang digunakan sebelum diterapkan. Pilih Sebarkan untuk menerapkan semua pengaturan dan verifikasi bahwa aplikasi telah muncul di penyewa Anda.

Aplikasi Anda sekarang diterbitkan dan dapat diakses melalui SHA, baik secara langsung melalui URL-nya atau melalui portal aplikasi Microsoft.

Langkah berikutnya

Sebagai pengguna, luncurkan browser dan sambungkan ke URL eksternal aplikasi atau pilih ikon aplikasi di portal Microsoft MyApps. Setelah mengautentikasi ke Azure Active Directory, Anda akan diarahkan ke server virtual BIG-IP untuk aplikasi dan secara otomatis masuk melalui SSO. Output dari header terinjeksi yang ditampilkan oleh aplikasi berbasis header sudah ditampilkan.

Screenshot shows the output

Untuk keamanan yang lebih baik, organisasi yang menggunakan pola ini juga dapat mempertimbangkan untuk memblokir semua akses langsung ke aplikasi, sehingga memaksa jalur yang ketat melalui BIG-IP.

Pemecahan Masalah

Kegagalan mengakses aplikasi yang dilindungi SHA bisa disebabkan oleh beberapa faktor potensial, termasuk kesalahan konfigurasi.

  • Log BIG-IP adalah sumber informasi yang bagus untuk mengisolasi semua masalah autentikasi & SSO. Saat memecahkan masalah, Anda harus meningkatkan tingkat verbositas log dengan menuju ke Kebijakan Akses>Gambaran Umum>Log Peristiwa>Pengaturan. Pilih baris untuk aplikasi yang diterbitkan, lalu Edit>Log Sistem Akses. Pilih Debug dari daftar SSO, lalu pilih OK. Anda sekarang dapat merekonstruksi masalah sebelum melihat log tetapi ingat untuk menggantinya kembali setelah selesai.

  • Jika Anda melihat kesalahan bertanda BIG-IP setelah dialihkan sesudah pra-autentikasi Azure Active Directory, masalah ini kemungkinan berkaitan dengan SSO dari Azure Active Directory ke BIG-IP. Navigasikan ke Akses>Gambaran Umum>Laporan Akses dan jalankan laporan selama satu jam terakhir untuk melihat log memberikan petunjuk apa pun. Tautan Lihat variabel sesi untuk sesi Anda juga akan membantu memahami apakah APM menerima klaim yang diharapkan dari Azure Active Directory.

  • Jika Anda tidak melihat halaman kesalahan BIG-IP, masalahnya kemungkinan besar berkaitan dengan SSO dari BIG-IP ke aplikasi backend. Dalam hal ini, Anda perlu menuju ke Kebijakan Akses>Gambaran Umum>Sesi Aktif lalu pilih tautan untuk sesi Anda. Tautan Lihat Variabel di lokasi ini mungkin juga membantu menemukan akar penyebab masalah SSO, terutama jika BIG-IP APM gagal memperoleh pengidentifikasi pengguna dan domain yang tepat.

Lihat contoh penetapan variabel BIG-IP APM dan referensi variabel sesi F5 BIG-IP untuk info selengkapnya.

Sumber Daya Tambahan:

Untuk mengetahui informasi selengkapnya, lihat artikel berikut ini: