Alat Ini Memperbaiki Auth di Seluruh Stack Saya (Authentik)

BBetter Stack
컴퓨터/소프트웨어창업/스타트업AI/미래기술

Transcript

00:00:00Tumpukan teknologi Anda mungkin terlihat rapi sampai Anda membuka halaman login.
00:00:03Satu layanan untuk autentikasi lokal, yang lain tidak memiliki autentikasi multi-faktor, dan satu lagi memiliki sistem
00:00:08pengguna yang benar-benar berbeda. Dan sekarang Anda mengelola login yang berbeda di Docker atau Kubernetes. Itu berhasil
00:00:14sampai benar-benar tidak bisa lagi. Inilah Authentik. Alat self-hosted yang memberi Anda SSO, MFA,
00:00:20passkey, dan kendali terpusat untuk segalanya. Saya akan tunjukkan cara menjalankannya
00:00:25dan cara mengaturnya dalam beberapa menit ke depan.
00:00:30[Musik]
00:00:32Authentik adalah penyedia identitas open-source yang di-hosting sendiri. Pada dasarnya, ini menjadi sistem login
00:00:39untuk semua aplikasi Anda. Daripada setiap layanan menangani autentikasi secara buruk sendiri-sendiri atau kita
00:00:44mengakalinya, Authentik menanganinya semua di satu tempat. Saya mendapatkan SSO, autentikasi multi-faktor,
00:00:50manajemen pengguna, dan kontrol akses. Bayangkan Okta, tapi Anda benar-benar memilikinya karena ini open source.
00:00:56Ini mendukung semua yang Anda harapkan, tetapi inilah perbedaan besarnya. Daripada harus bergelut
00:01:01dengan konfigurasi XML atau terjebak dalam aturan SaaS, Authentik menggunakan Flow, Stages, dan kebijakan Python.
00:01:08Jadi, Anda membangun logika autentikasi seperti seorang pengembang. Itulah keunggulannya di sini. Ini benar-benar mengurangi fragmentasi,
00:01:14keamanan yang lebih baik, dan tidak ada lagi masalah login. Jika Anda menikmati alat yang mempercepat alur kerja Anda,
00:01:18pastikan untuk berlangganan. Kami selalu merilis video setiap saat.
00:01:21Semakin banyak pengembang yang beralih dari pengaturan yang rumit dan IDP cloud, bukan karena Authentik lebih kecil,
00:01:28tetapi karena lebih mudah digunakan. Mari saya tunjukkan seperti apa ini sebenarnya.
00:01:32Sekarang di sini saya menggunakan server baru, dan dengan satu perintah, "docker compose up," Authentik berjalan.
00:01:39Itu saja yang kita butuhkan di sini. Sekarang saya bisa membuka UI admin, saya bisa membuat aplikasi,
00:01:44dan saya bisa menambahkan OAuth sebagai penyedianya atau memilih apa saja di sini. Itu memakan waktu kurang dari 30 detik.
00:01:50Selanjutnya, saya membuat aplikasi tiruan. Tidak ada yang spesial di sini. Saya hanya akan mengatur
00:01:54URL pengalihan, localhost, masukkan ID klien dan rahasia yang saya dapatkan dari Authentik, dan sekarang login.
00:02:01Itu saja. Saya bisa menambahkan pengguna baru di sini dan menggunakannya untuk login,
00:02:07jadi sekarang saya memiliki akses sebagai pengguna alih-alih admin. Saya tidak memiliki halaman login khusus,
00:02:13tidak ada sistem kata sandi untuk dikelola, dan tidak ada autentikasi yang tambal sulam di berbagai layanan.
00:02:19Ini memakan waktu sekitar 90 detik, dan aplikasi ini sekarang memiliki autentikasi tingkat produksi.
00:02:24Itulah momen di mana semuanya terasa masuk akal. Kelihatannya rumit,
00:02:27tetapi dalam praktiknya cukup sederhana. Saya bisa menghubungkan seluruh sistem autentikasi ini di sini,
00:02:32memilih bagaimana saya ingin melakukannya di Authentik. Tapi bagaimana perbandingannya? Karena ada yang lain.
00:02:38Kita punya Keycloak. Keycloak bagus, tapi masih terasa berat dan jadul, lebih ke arah enterprise.
00:02:45Authilia ringan, tetapi Anda bisa dengan cepat membutuhkannya yang lebih besar. Dan tadi saya menyebutkan Okta,
00:02:50atau bahkan Auth0. Ini memang bagus, tapi kita harus membayar, terutama seiring bertambahnya pengguna.
00:02:56Authentik berada di tengah-tengah semua itu, bukan? Ada manajemen identitas lengkap,
00:03:01ada pembuat flow visual, sangat fleksibel, dan kita tidak perlu membayar semua biaya SaaS tersebut.
00:03:05Memang ada versi berbayarnya, yang saya tidak suka, tapi versi open source-nya
00:03:12untuk banyak dari kita, kita bisa melakukan banyak hal dengannya. Jika Anda melakukan penskalaan besar-besaran, maka Anda akan membayar
00:03:16untuk hal itu. Sekali lagi, saya suka alat open source. Ini benar-benar open source, tapi kita harus sedikit membayar
00:03:22jika Anda akan melakukan penskalaan besar. UI-nya modern dan intuitif. Flow-nya memungkinkan Anda secara visual
00:03:27membangun logika login. Jadi semua ini bagus. Dan memiliki kebijakan Python memberi Anda kustomisasi
00:03:33yang mendetail saat konfigurasi standar tidak cukup. Authentik bekerja dengan Kubernetes dan berbasis API.
00:03:40Semua ini sangat bagus. Ditambah lagi, Anda mendapatkan MFA terpusat, manajemen pengguna, dan portal layanan
00:03:47semuanya di satu tempat. Sekarang, ada kekurangannya. Pertama, ya, ini open source. Dan bagi banyak
00:03:52dari kita, itu hebat. Tapi saat Anda berkembang, seperti yang saya sebutkan, Anda harus membayar, yang menurut saya seperti
00:03:58layanan lainnya, tentu saja. Tapi tetap saja tidak suka harus membayar setelah mencapai batas tertentu. Saya tidak suka
00:04:04itu, kan? Ada kurva pembelajarannya. Sejujurnya, agak membingungkan untuk menginstalnya,
00:04:09tapi setelah berjalan, itu bekerja dengan sangat baik. Ini lebih berat daripada alat yang sangat ringan
00:04:13juga. Sekitar dua gigabyte RAM. Dan jika Anda tidak menjalankan high availability, itu menjadi
00:04:19titik kegagalan tunggal. Jadi tidak sempurna, tapi bagi kebanyakan pengembang, kita sampai pada kesimpulan yang sama,
00:04:26kan? Sulit dipelajari pada awalnya, tapi setelah kita menjalankannya, itu sangat berguna.
00:04:30Ini sangat bagus. Ini menghubungkan banyak hal yang berbeda. Nah, apakah itu sepadan? Yah,
00:04:35biarkan kalian yang menilainya. Maksud saya, jika Anda menjalankan stack self-hosted, ya, seperti home lab,
00:04:40alat internal, SaaS, aplikasi on-prem, itu akan menjadi hebat. Ini sangat berguna untuk itu.
00:04:45Jika Anda ingin SSO dan MFA yang nyata di mana saja, ini menyelesaikan masalah yang sudah Anda miliki. Jika Anda ingin
00:04:50kendali alih-alih harga, itu lebih masuk akal. Dan jika Anda membutuhkan logika autentikasi khusus, ini
00:04:56adalah tempat di mana alat ini berkinerja sangat baik. Ia melakukan hal itu dengan baik, tetapi tidak akan cocok untuk Anda jika
00:05:00Anda menginginkan sesuatu yang sangat ringan tanpa perlu pengaturan. Anda harus mengaturnya. Atau jika
00:05:06Anda melakukan penskalaan besar-besaran, maka jujur saja, penyedia berbayar lainnya akan lebih baik. Tapi bagi kebanyakan
00:05:11dari kita, setelah Anda mengaturnya dan ada sesuatu yang berubah, autentikasi berhenti tersebar di setiap aplikasi dan
00:05:16menjadi satu sistem yang benar-benar Anda kendalikan. Dan setelah Anda terbiasa, sulit untuk kembali. Setidaknya
00:05:22ini sangat masuk akal. Ini adalah alat yang keren untuk dibangun ke dalam alur kerja kita. Jika Anda menyukai alat open source
00:05:27dan tips coding yang mempercepat alur kerja Anda, pastikan untuk berlangganan ke saluran Better Stack.
00:05:32Sampai jumpa di video lainnya.

Key Takeaway

Authentik menyediakan sistem autentikasi tingkat produksi yang terpusat dan dapat dikustomisasi dengan logika Python, menggantikan manajemen login yang terfragmentasi pada berbagai aplikasi.

Highlights

  • Authentik mengintegrasikan SSO, MFA, passkey, dan manajemen pengguna ke dalam satu sistem autentikasi terpusat.

  • Proses instalasi Authentik menggunakan perintah docker compose up dan konfigurasi aplikasi baru memakan waktu kurang dari 90 detik.

  • Logika autentikasi dibangun menggunakan alur kerja visual (Flows, Stages) dan kebijakan Python untuk fleksibilitas kustomisasi.

  • Authentik membutuhkan sumber daya sekitar 2 GB RAM untuk beroperasi.

  • Terdapat versi open-source gratis, namun versi berbayar diperlukan untuk skala penggunaan yang sangat besar.

Timeline

Masalah Fragmentasi Autentikasi

  • Layanan autentikasi yang berbeda-beda di setiap aplikasi menciptakan hambatan pengelolaan.
  • Authentik menawarkan solusi self-hosted yang menyatukan SSO, MFA, dan manajemen akses di satu tempat.

Banyak tumpukan teknologi mengalami masalah saat menangani autentikasi lokal, ketiadaan MFA, dan sistem pengguna yang terpisah antar layanan. Kondisi ini membuat pengelolaan login menjadi sulit saat menggunakan Docker atau Kubernetes. Authentik hadir sebagai penyedia identitas open-source untuk menstandarisasi proses ini di semua aplikasi.

Implementasi dan Pengaturan Cepat

  • Penyebaran awal Authentik dilakukan melalui perintah docker compose up.
  • Integrasi aplikasi baru dilakukan dengan memasukkan ID klien dan rahasia ke dalam pengaturan aplikasi.
  • Sistem ini menghilangkan kebutuhan akan halaman login khusus atau sistem kata sandi yang terpisah.

Pengaturan Authentik di server baru sangat singkat, memakan waktu kurang dari 30 detik untuk membuat aplikasi dan menambahkan penyedia OAuth. Setelah URL pengalihan diatur, aplikasi langsung memiliki autentikasi tingkat produksi. Pengguna baru dapat ditambahkan melalui UI admin untuk akses langsung, meniadakan pengelolaan autentikasi tambal sulam di berbagai layanan.

Analisis Perbandingan dan Kustomisasi

  • Authentik menempati posisi tengah antara Keycloak yang terasa berat dan solusi SaaS berbayar seperti Okta.
  • Penggunaan kebijakan Python memungkinkan kustomisasi autentikasi yang sangat detail.
  • Antarmuka visual mempermudah pembangunan logika login.

Keycloak dinilai terlalu berat dan bergaya enterprise, sementara solusi SaaS berbayar mahal seiring bertambahnya pengguna. Authentik menawarkan fleksibilitas pembuat flow visual dan kebijakan Python untuk kebutuhan khusus. Meskipun tersedia versi berbayar, versi open-source mencakup sebagian besar kebutuhan pengelolaan identitas.

Kekurangan dan Pertimbangan Operasional

  • Penggunaan memori memerlukan sekitar 2 GB RAM.
  • Instalasi awal memiliki kurva pembelajaran yang cukup menantang.
  • Ketiadaan konfigurasi high availability menciptakan titik kegagalan tunggal.

Authentik bukanlah alat yang sangat ringan dan memerlukan sedikit usaha untuk dipelajari. Terdapat biaya yang harus dikeluarkan jika sistem mencapai batas skala tertentu. Namun, bagi pengelola home lab atau aplikasi internal, keuntungan kendali terpusat dan integrasi yang kuat melebihi kompleksitas pengaturan awalnya.

Community Posts

View all posts