Apa itu autentikasi API?

Gambar tangan wanita yang menggunakan perangkat mobile dengan keamanan Autentikasi Dua Langkah (2FA) saat melakukan pencatatan dengan aman ke laptopnya. Perlindungan privasi, keamanan internet, dan mobile

Definisi Autentikasi API

Autentikasi API adalah proses memverifikasi identitas aplikasi klien, sistem, layanan, atau entitas lain yang membuat permintaan API, sering kali dengan memvalidasi kredensial klien (seperti kata sandi, kunci API atau token). 

Autentikasi membantu memastikan bahwa pengguna yang berwenang dapat mengakses sumber daya yang mereka butuhkan sambil melindungi data sensitif dan menjaga keamanan API.

Antarmuka pemrograman aplikasi (API) adalah pilar utama ekosistem TI modern, yang memungkinkan aplikasi, basis data, perangkat, dan komponen TI lainnya untuk bertukar data di seluruh arsitektur, lingkungan, dan protokol. API sekarang menjadi cara utama organisasi mengintegrasikan layanan dan mengotomatiskan alur kerja, dengan 82% perusahaan mengadopsi setidaknya beberapa tingkat strategi API-first, menurut Postman. Tetapi organisasi sering kesulitan untuk menjaga keamanan dan visibilitas atas koneksi kompleks ini.

Meskipun ekosistem TI berbasis API membantu perusahaan meningkatkan kelincahan, skalabilitas, dan efisiensi, mereka juga dapat membuat organisasi mengalami serangan siber, pelanggaran data, dan kerentanan keamanan lainnya. Autentikasi API yang kuat, bersama dengan teknik manajemen identitas dan akses (IAM) lainnya, dapat membantu organisasi mendapatkan manfaat dari integrasi sambil melindungi dari ancaman keamanan.

Autentikasi API sangat penting bagi perusahaan besar, dengan platform integrasi aplikasi perusahaan (EAI)—yang memungkinkan manajemen hubungan pelanggan (CRM), perencanaan sumber daya perusahaan (ERP), dan sistem bisnis penting lainnya untuk berkomunikasi meskipun ada perbedaan arsitektur dan data—yang dapat mencakup ratusan atau ribuan komponen dan layanan integrasi. Perusahaan dengan setidaknya 10.000 karyawan sekarang menggunakan rata-rata 660 aplikasi SaaS, menurut studi Zylo tahun 2025. 

Dengan layanan yang tersebar di lingkungan on premises, hybrid, dan multi-cloud, banyak perusahaan beralih ke metode autentikasi canggih, seperti token, kunci sandi, autentikasi multi-faktor adaptif (MFA), dan teknik berbasis enkripsi lainnya. Pendekatan ini dapat menawarkan beberapa lapisan perlindungan dan tingkat kontrol yang lebih dalam dibandingkan dengan teknik tradisional.

Autentikasi dapat digunakan untuk membantu mengamankan berbagai jenis interaksi berbasis API, termasuk komunikasi antara layanan mikro, pertukaran data melalui API Gateway, serta mekanisme masuk tunggal (SSO) dan MFA untuk aplikasi perusahaan.

Sekitar 99% organisasi melaporkan mengalami masalah keamanan API, dengan masalah autentikasi mencapai 29% insiden, menurut laporan State of API Security 2025 dari Salt Lab. Tantangan keamanan dapat muncul antara lain karena praktik-praktik hak istimewa yang buruk, penyimpanan rahasia yang tidak aman, dan manajemen sesi yang tidak merata (ketika pencabutan, kedaluwarsa, dan penyegaran misalnya didistribusikan secara tidak konsisten di seluruh organisasi).

Organisasi dapat memperkuat sistem autentikasi API mereka dengan menerapkan token dan manajemen hak akses istimewa, mempertahankan pengawasan terpusat dan dengan hanya menggunakan pustaka perangkat lunak yang tepercaya dan terpelihara dengan baik, di samping praktik terbaik lainnya.

Autentikasi vs. otorisasi

Baik autentikasi dan otorisasi adalah bagian penting dari strategi IAM organisasi, tetapi keduanya melayani peran yang berbeda. Autentikasi API memverifikasi identitas pengguna melalui kredensial pengguna, token akses, dan teknik kriptografi lainnya.

Sementara itu, otorisasi API menentukan apakah pengguna atau layanan memiliki izin untuk membuat permintaan API tertentu. Contohnya, pemimpin tim internal mungkin diberi akses ke berbagai layanan yang lebih luas dibandingkan dengan kontraktor pihak ketiga atau agen yang didukung AI untuk tugas tertentu.

Salah satu cara untuk memahami perbedaan antara autentikasi dan otorisasi: ketika pengguna memasukkan kata sandi ke halaman login, proses ini adalah bentuk autentikasi sederhana. Otorisasi adalah hal yang menentukan layanan mana yang dapat diakses pengguna setelah mereka masuk. Dalam banyak konfigurasi, autentikasi terjadi terlebih dahulu, dengan server otorisasi memberikan token akses hanya setelah memverifikasi identitas klien atau pengguna.

WebMethods Hybrid Integration

Transformasikan integrasi untuk era AI

IBM WebMethods Hybrid Integration menampilkan bagaimana bisnis dapat menghubungkan aplikasi cloud dan aplikasi on premises dengan lancar, memungkinkan transformasi digital yang tangkas dan dapat diskalakan. 

Metode dan pendekatan autentikasi API

Autentikasi API bekerja secara berbeda tergantung pada kerangka kerja yang digunakan organisasi. Beberapa pendekatan ideal untuk mengelola akses API internal, seperti dalam konfigurasi mesh layanan, sementara yang lain lebih cocok untuk sistem API yang diakses secara eksternal.

Organisasi mungkin mempertimbangkan infrastruktur mereka saat ini, persyaratan kepatuhan, dan kebutuhan pengembang, di antara faktor-faktor lain seperti konfigurasi masa depan, ketika menentukan kerangka kerja autentikasi mana yang akan diadopsi. Banyak perusahaan menggunakan kombinasi teknik otentikasi untuk mengakomodasi contoh penggunaan yang berbeda. Mekanisme autentikasi yang umum meliputi:

Autentikasi dasar

Diperkenalkan dan diresmikan pada 1990-an, autentikasi dasar adalah pendekatan autentikasi yang relatif mudah yang memverifikasi identitas pengguna dengan menggunakan HTTP sebagai mekanisme transmisi.

Cara kerja pendekatan ini adalah: pertama, klien memberikan nama pengguna dan kata sandi di header otorisasi permintaan HTTP. Kredensial ini dikodekan dengan skema Base64 sehingga dapat ditransmisikan dengan benar (alat command line, seperti cURL, HTTPie, atau Aria2, sering digunakan untuk mengotomatiskan proses ini).

Selanjutnya, server API memecahkan kode header HTTP dan memeriksanya berdasarkan daftar kredensial yang disetujui, yang biasanya disimpan sebagai nilai hash. Jika ada kecocokan, server memberikan akses ke titik akhir yang dilindungi atau memenuhi permintaan API. 

Karena Base64 tidak menawarkan keamanan, autentikasi dasar bergantung pada keamanan lapisan transportasi (TLS)—khususnya, protokol HTTPS—untuk mengenkripsi panggilan API. Varian yang lebih maju yang disebut Mutual TLS (MTL) mengharuskan klien dan server bertukar kredensial. 

Namun, dalam Autentikasi dasar, keamanan API terbatas karena kata sandi tidak secara otomatis kedaluwarsa atau diperbarui, dan kredensial harus dikirim ulang untuk setiap permintaan API, sehingga meningkatkan risiko paparan. Jika kata sandi dibobol, pengembang harus membatalkan akses secara manual. Terakhir, autentikasi dasar memiliki pemantauan bawaan dan kontrol akses yang terbatas.

Terlepas dari keterbatasannya, autentikasi dasar sering digunakan dalam lingkungan pengujian dan pengembangan dan dapat cukup untuk penerapan internal sensitivitas rendah ketika digunakan melalui HTTPS. Autentikasi dasar didukung secara luas, mudah diatur, dan sepenuhnya tanpa status, yang berarti tim TI tidak harus mengelola penyimpanan token atau sesi sisi server.

Kunci API

Kerangka kerja kunci API menggunakan kunci API —string karakter yang dibuat secara acak yang ditetapkan oleh penyedia API—alih-alih mengandalkan nama pengguna dan kata sandi yang dikelola pengguna. Pengidentifikasi unik ini biasanya sesuai dengan aplikasi atau proyek tertentu, yang memberi organisasi kontrol akses yang terperinci atas masing-masing layanan. Misalnya, tim dapat menerapkan batas tarif ke aplikasi klien tertentu atau membatasi akses klien ke titik akhir atau lingkungan produksi tertentu.

Seperti autentikasi dasar, kunci API sering disertakan dalam header permintaan panggilan API, meskipun kunci ini juga dapat disematkan dalam string kueri atau cookie. Autentikasi kunci API juga tanpa status; kunci API harus ditambahkan ke setiap permintaan API karena server tidak menyimpan status sesi per permintaan.

Dalam sistem yang lebih besar, manajemen kunci API bisa menjadi sulit, dengan tim TI kesulitan untuk menjalankan tugas kunci. Misalnya, jika kunci dibobol, penyedia API hanya dapat mengidentifikasi kunci bermasalah (yang mungkin digunakan bersama oleh beberapa pengguna), sehingga sulit untuk mengisolasi sumber pelanggaran. Pemecahan masalah juga dapat terbukti menantang untuk proyek bersama, karena pencabutan kunci API memengaruhi semua orang yang menggunakannya.

Karena penyedia API mengelola setiap kunci API, penyedia dapat dengan mudah melacak penggunaan dan menghapus kunci untuk membatalkan akses jika penyedia mendeteksi ancaman keamanan siber atau pelanggaran pedoman API. Penyedia juga dapat menerapkan izin yang sangat terperinci untuk mengontrol cakupan setiap kunci secara tepat. Sementara itu, dalam kerangka kerja dasar autentikasi, pengguna membuat kata sandi mereka sendiri, dan penyedia API memiliki kemampuan terbatas untuk memantau dan mengelolanya. Akhirnya, organisasi dapat menerapkan batas tarif untuk proyek tertentu, yang meningkatkan kinerja di seluruh layanan.

Autentikasi kunci API sering kali terbaik untuk lingkungan API publik karena memungkinkan penyedia layanan untuk memantau pengembang yang menggunakan API mereka. Misalnya, restoran memerlukan kunci API agar dapat menambahkan integrasi Google Maps ke situs webnya.

Pengaturan ini memungkinkan Google untuk melacak penggunaan restoran dan menagih biaya untuk akses ke layanan premium. Google Maps tidak terlalu peduli dengan menyembunyikan data milik eksklusifnya, karena data sudah tersedia untuk umum. Perusahaan ini hanya menginginkan cara untuk melacak siapa yang menggunakannya sehingga dapat mengukurnya dengan tepat. Ini adalah tugas yang dapat dicapai oleh autentikasi kunci API.

Security Assertion Markup Language

Muncul di awal 2000-an, security assertion markup language (SAML) adalah kerangka kerja autentikasi berbasis XML terbuka yang memungkinkan mekanisme masuk tunggal (SSO), atau kemampuan untuk menggunakan satu set kredensial login di beberapa aplikasi. Sebuah organisasi mungkin menerapkan SSO sehingga karyawan dapat mengakses SDM, penggajian, dan email dengan satu login.

Dalam autentikasi dasar dan autentikasi kunci API, klien mengirimkan kredensial langsung ke API. SAML memperkenalkan langkah tambahan dan menggunakan perantara pihak ketiga yang disebut penyedia identitas (IdP) untuk mengautentikasi pengguna. 

Dalam kerangka kerja SAML, pengguna yang ingin mengakses layanan tertentu dialihkan ke IdP tepercaya, seperti Google, Auth0, atau OneLogin, yang mengelola autentikasi atas nama penyedia layanan (pemilik layanan yang ingin diakses klien). Baik penyedia layanan maupun IdP dapat bertukar dokumen metadata yang berisi ID entitas (URI unik) untuk membedakan diri dari server lain di jaringan dan untuk membangun kepercayaan. 

Klien mengirimkan kredensial, yang kemudian digunakan IdP untuk memverifikasi identitas pengguna akhir. Selanjutnya, IdP mengeluarkan token keamanan yang disebut pernyataan SAML—yaitu dokumen XML yang ditandatangani yang mungkin mencakup waktu log-in, jabatan, ID karyawan, dan data pengguna lain yang relevan—untuk membuktikan bahwa pengguna telah diautentikasi dan untuk memberikan konteks seputar permintaan pengguna. Penyedia layanan menerima pernyataan, kemudian menggunakannya untuk menentukan tingkat akses yang diberikan kepada pengguna. 

Proses ini dapat diulang di beberapa layanan; jika IdP mempertahankan sesinya dengan pengguna, ia dapat merespons layanan kedua atau ketiga dengan pernyataan SAML yang sama, menjamin bahwa pengguna telah diautentikasi. Langkah ini memungkinkan pengguna untuk mengakses layanan yang terhubung tanpa harus masuk lagi.

Alur pengalihan berbasis browser SAML bekerja dengan baik untuk aplikasi web tetapi sering menyebabkan pengalaman yang buruk dalam aplikasi mobile (OAuth 2.0 dengan OIDC sering lebih disukai untuk aplikasi mobile). Bahasa markup XML juga lebih panjang daripada JSON dan bahasa lainnya. Namun, dampak kinerja umumnya dapat diabaikan dalam skenario autentikasi. Akhirnya, atribut pengguna yang disematkan dalam pernyataan SAML tidak distandardisasi dan memerlukan pemetaan khusus di seluruh sistem.

Namun, SAML memberikan manfaat keamanan, seperti pencatatan dan audit yang konsisten, melalui manajemen autentikasi terpusat (melalui IdP). SAML juga mengurangi beban pada server API, karena tidak perlu lagi mendukung penanganan autentikasi. Akhirnya, SAML didukung secara luas, sangat andal dan cocok untuk contoh penggunaan B2B.

OpenID Connect

OpenID Connect (OIDC) adalah protokol Autentikasi modern yang, seperti SAML, mencapai autentikasi federasi melalui SSO. Namun, OIDC dioptimalkan untuk aplikasi seluler berbasis API dan cloud-native dan berbeda dari SAML dalam beberapa cara.

Langkah awalnya serupa: pengguna mencoba mengakses layanan, dialihkan dari aplikasi ke penyedia identitas (IdP) untuk mengautentikasi dan kemudian kembali ke aplikasi dengan token yang membuktikan identitas mereka. 

Namun, alih-alih pernyataan berbasis XML, OIDC menggunakan Token Web JSON (JWT) untuk token ID, diformat sebagai “header.payload.signature” untuk merepresentasikan informasi autentikasi. Seperti pernyataan, pesan-pesan ini mengonfirmasi kepada penyedia layanan bahwa klien telah diautentikasi. Karena JWT menggunakan JSON dan lebih ringkas daripada pernyataan berbasis XML, mereka umumnya lebih cocok untuk aplikasi mobile modern, RESTful API, dan aplikasi cloud-native.

Jadi SAML dan OIDC menggunakan pengenal yang berbeda dan konsep yang berbeda untuk mencapai hasil yang sama: di mana SAML menggunakan ID entitas dan pernyataan berbasis XML, OIDC menggunakan URL penerbit berbasis JSON/HTTP, string ID klien, dan JWT, membuat OIDC lebih cocok untuk RESTful API dan arsitektur layanan mikro.

OAuth 2.0

OIDC adalah lapisan identitas yang berada di atas kerangka kerja yang disebut OAuth 2.0 (kadang-kadang disebut sebagai OAuth2). OAuth 2.0 memungkinkan aplikasi klien untuk mendapatkan token akses dengan cakupan dan batasan waktu untuk memanggil API yang dilindungi dan sumber daya dengan batasan akses atas nama pengguna (baik manusia atau agen). OIDC menambahkan verifikasi identitas ke fungsi otorisasi OAuth dengan mendefinisikan token ID dan titik akhir terkait yang memverifikasi siapa yang mencoba mengakses sumber daya.

Misalnya, tim pengembangan mungkin menggunakan platform integrasi berkelanjutan dan pengiriman berkelanjutan (CI/CD) untuk mengotomatiskan penerapan GitHubnya. Dengan OAuth 2.0, tim pengembang dapat memberikan izin layanan CI/CD untuk mengakses proyek GitHub yang relevan atas namanya. Tim juga dapat menentukan repositori GitHub mana yang ingin dibagikan dan mana yang ingin dirahasiakan.

Ada skenario di mana klien mungkin mencari otorisasi tanpa terlebih dahulu melakukan Autentikasi pengguna, seperti dengan banyak pertukaran data mesin-ke-mesin. Misalnya, agen yang mengirim log harian ke platform pemantauan terpusat dapat dengan aman melakukan tugas ini tanpa mengetahui pengguna mana yang memulai otomatisasi ini.

Tetapi dalam kasus di mana klien perlu tidak hanya mengakses server pihak ketiga tetapi juga memverifikasi identitas pengguna—misalnya, jika klien perlu menyajikan informasi aman kepada pengguna—OAuth 2.0 dengan sendirinya tidak cukup. OAuth 2.0 hanya mendefinisikan standar dan peran otorisasi dan tidak dapat memberikan Autentikasi. Untuk mengisi celah ini, OIDC bertindak sebagai ekstensi opsional dari OAuth 2.0, mendefinisikan token ID dan titik akhir informasi pengguna standar, sehingga klien dapat memverifikasi identitas pengguna dengan aman selama operasi sensitif data.

Bersama-sama, OAuth 2.0 dan OIDC dapat meningkatkan pengalaman pengguna sekaligus membantu menjaga keamanan sistem API. Ketika seorang karyawan masuk ke platform SDM, misalnya, mereka mungkin diarahkan ke portal login terpusat yang diaktifkan OIDC, yang bertindak sebagai lapisan autentikasi, memverifikasi ke platform SDM bahwa karyawan tersebut adalah benar-benar sesuai yang dinyatakan.

Setelah pengguna masuk, OAuth 2.0 memungkinkan platform SDM untuk menerima token akses yang mengizinkannya untuk memanggil API aman atas nama pengguna. API ini kemudian dapat mengumpulkan catatan karyawan yang relevan (seperti ID karyawan, jabatan, dan tanggal mulai) sehingga karyawan tidak harus berulang kali memasukkan data ini secara manual.

OIDC mungkin terlalu kompleks untuk penerapan internal, membutuhkan keahlian pengembangan dan pemeliharaan ekstensif, terutama di industri yang diatur dengan ketat, di mana standar kepatuhan dan tata kelola yang kompleks mempersulit penerapan.

Namun, bagi banyak organisasi, OAuth 2.0 dan OIDC menawarkan keseimbangan yang diinginkan antara keamanan yang kuat dan pengalaman pengguna yang efisien. Token akses biasanya hanya berlaku untuk beberapa menit, menurunkan risiko keamanan. Pada saat yang sama, token penyegaran yang disimpan dengan aman memungkinkan pengguna untuk tetap masuk selama berminggu-minggu atau berbulan-bulan tanpa gangguan.

Selain itu, token OIDC bersifat mandiri dan ringan, membuatnya sangat cocok untuk mengautentikasi interaksi mesin-ke-mesin, serta implementasi cloud dan seluler. 

Token Web JSON

Kami telah membahas JWT dalam konteks OIDC, tetapi standar terbuka juga memiliki penggunaan yang lebih luas di luar implementasi SSO. Meskipun bukan kerangka kerja sendiri, JWT dapat diterapkan pada pendekatan autentikasi khusus, seperti autentikasi layanan mikro, Internet of Things (IoT), dan API Gateway. 

Transmisi JWT biasanya mengandung tiga elemen:

  • Header menjelaskan jenis token (dalam hal ini, JWT) dan algoritma penandatanganannya.

  • Payload tersebut memberikan klaim, atau rincian tentang permintaan, termasuk siapa yang membuatnya dan cakupan izinnya.

  • Tanda tangan menggunakan kunci kriptografi untuk membuktikan bahwa header dan payload belum terganggu.

Meskipun proses pertukaran token bekerja dengan cara yang sama di seluruh contoh penggunaan, pihak penerbit dapat berubah tergantung pada arsitektur API organisasi. Organisasi dapat menggunakan IdP, server otorisasi, layanan cloud, atau layanan backend khusus untuk autentikasi.

Misalnya, dalam otorisasi gateway API, server otorisasi mungkin memverifikasi identitas klien di hulu, kemudian mengirimkan JWT yang ditandatangani ke klien. Ketika klien mengirim permintaan API ke API gateway, klien akan menggabungkan token yang ditandatangani bersama permintaan.

Karena gateway API memercayai otoritas penerbit (dalam hal ini, server otorisasi), gateway dapat membaca token dan meneruskan permintaan ke layanan backend yang relevan. Token berisi bukti bahwa klien tertentu telah diautentikasi, sehingga dapat dipertahankan sisi klien dan digunakan kembali di berbagai layanan mikro, aplikasi, dan lapisan arsitektur dalam masa pakai yang telah ditentukan sebelumnya.

JWT sangat ringkas, independen, dan dapat dioperasikan, menjadikannya cocok untuk sistem terdistribusi modern. Namun, penggunaan JWT dapat disertai dengan beberapa kelemahan penting. Pertama, membatalkan token sebelum kedaluwarsa sulit dilakukan tanpa mengorbankan sifat tanpa status mereka, membutuhkan sesi yang relatif singkat untuk membatasi kerentanan keamanan. Selain itu, tim mungkin menerima payload berlebih dengan terlalu banyak informasi, memperlambat proses autentikasi. Akhirnya, proses autentikasi JWT khusus tidak mendapat manfaat dari standardisasi dan interoperabilitas yang melekat pada OIDC dan alternatif lainnya.

Membandingkan pendekatan autentikasi

 Autentikasi dasarKunci APISAMLOIDCJWT Kustom
Format kredensialNama pengguna dan kata sandiString alfanumerik rahasiaPernyataan SAML berbasis XMLToken ID berformat JWTToken ID berformat JWT
AutentikatorServer sumber dayaPenyedia APIIdPIdPIdP, server autentikasi, atau layanan cloud internal
Contoh penggunaan utamaAlat internal, lingkungan penyiapan, sistem lamaAPI publik, integrasi pihak ketigaFederasi SSO dan B2B, SSO berbasis browserSSO modern, login SaaS karyawan, mesin-ke-mesinGateway API, perangkat IoT, layanan mikro-ke-layanan mikro
BatasanKeamanan lemah; pengalaman pengguna yang tidak fleksibel; tidak ada pemantauan bawaanMekanisme ID pengguna terbatas; persyaratan keamanan tambahanXML besar; tidak dioptimalkan untuk mobile atau cloud Bisa terlalu rumit untuk penerapan internal Kontrol token terbatas; tidak memiliki definisi standar
ManfaatMudah diatur; sangat dapat dioperasikan; hemat biayaKontrol akses dan pemantauan yang kuat; ideal untuk monetisasiManajemen terpusat; mengurangi permukaan seranganKeamanan terpusat yang kuat; sangat cocok untuk contoh penggunaan modernSangat dapat diskalakan; keamanan yang kuat; kinerja yang ditingkatkan

Praktik terbaik autentikasi API

Terlepas dari pendekatan spesifik yang digunakan organisasi, ada beberapa praktik terbaik bersama yang dapat membantu mengurangi tantangan autentikasi umum. Strategi umum meliputi:

Menerapkan hak istimewa terkecil

Memberikan terlalu banyak akses ke terlalu banyak pengguna dapat menimbulkan risiko yang tidak perlu bagi organisasi. Tanpa distribusi tanggung jawab yang ketat dan pengawasan yang tepat, pengguna mungkin secara tidak sengaja memasukkan ketidakselarasan ke dalam saluran autentikasi. 

Prinsip hak istimewa paling sedikit dapat membantu mengatasi masalah ini. Konsep ini menegaskan bahwa pengguna harus diberi wewenang untuk menggunakan hanya layanan yang diperlukan untuk pekerjaan mereka, berdasarkan peran, lokasi, waktu akses dan faktor lainnya. 

Sistem autentikasi dapat menerapkan penyediaan pada waktu yang tepat sehingga akses ke layanan dicabut segera setelah pengguna menyelesaikan tugas mereka. Tim juga dapat mengatur akun administrator terpisah dan menggunakannya secara eksklusif untuk membuat perubahan tingkat tinggi pada kebijakan dan infrastruktur autentikasi. Audit dan pemantauan yang sering juga dapat membantu membatasi kerentanan keamanan. 

Menggunakan enkripsi selama transmisi

Tanpa enkripsi, lebih mudah bagi penyerang untuk mencuri kredensial atau token pengguna untuk mendapatkan akses ke materi sensitif. Organisasi dapat menggunakan protokol kriptografi seperti TLS (paling sering melalui HTTPS) untuk melindungi transaksi berbasis autentikasi. TLS dapat dilengkapi dengan langkah-langkah enkripsi lainnya, seperti MTL, yang mengharuskan klien dan server untuk diautentikasi (juga disebut autentikasi dua arah).

Dalam kerangka kerja OIDC, enkripsi web JSON (JWE) dapat memberikan lapisan keamanan tambahan selama transaksi token akses. Akhirnya, algoritma hashing (praktik keamanan mendasar) dapat menyembunyikan kredensial untuk menjaga penyimpanan yang aman.

Mempertahankan kredensial yang berumur pendek

Token berumur pendek, yang diputar segera setelah penerbitan (biasanya dalam beberapa menit atau jam), dapat membatasi kemampuan penyerang untuk mencegatnya. Proses ini sering otomatis sehingga tim TI tidak perlu melacak dan membatalkan token secara manual. 

Pendekatan serupa dapat diterapkan pada kredensial berumur panjang tradisional, seperti kata sandi dan kunci API. Misalnya, organisasi mungkin menerapkan kata sandi sekali pakai, satu kali untuk melengkapi login karyawan. Dengan strategi ini, penyerang dicegah mengakses materi sensitif, bahkan jika mereka mendapatkan nama pengguna dan kata sandi jangka panjang karyawan. Sementara itu, organisasi dapat menetapkan kunci API ke alamat IP atau jaringan tertentu (seperti VPN yang dikelola perusahaan), yang selanjutnya membatasi akses ke klien tepercaya.

Sentralisasi manajemen rahasia

Meskipun alur kerja autentikasi dapat didistribusikan ke seluruh organisasi, tim keamanan TI dapat menstandarkan dan memelihara kunci API dan penyimpanan token, tata kelola, dan pengawasan melalui platform manajemen rahasia terpusat. Sarana kontrol terpusat membantu memastikan penerapan protokol autentikasi yang konsisten di seluruh tim, departemen, dan siklus hidup kredensial.

Menerapkan autentikasi tanpa status

Banyak metode autentikasi, termasuk JWT, kunci API, dan autentikasi dasar secara native tanpa status (klien mengirimkan token otorisasi atau kredensial dengan setiap permintaan API), memungkinkan API untuk memenuhi permintaan tanpa harus merujuk sesi eksternal.

Karena panggilan API bersifat mandiri, layanan baru dapat ditambahkan tanpa mengganggu alur kerja autentikasi, meningkatkan skalabilitas. Sementara itu, autentikasi dapat dilakukan satu kali, dengan kredensial atau token diterapkan ke beberapa panggilan API, yang menguntungkan efisiensi dan kinerja sistem. 

Munculnya autentikasi identitas mesin

Secara tradisional, API memfasilitasi interaksi yang diprakarsai manusia dengan layanan dan aplikasi. Tetapi karena otomatisasi dan kemampuan agen menjadi bagian yang makin penting dari alur kerja modern, organisasi memikirkan kembali mekanisme autentikasi mereka untuk mengakomodasi pengguna non-manusia dengan lebih baik. 

Identitas non-manusia (NHI) dapat mencakup kontainer, perangkat IoT, server, aplikasi, dan agen AI. Platform autentikasi modern sering menetapkan sertifikat digital unik untuk setiap NHI sehingga mereka dapat dipantau dan dilindungi. Langkah keamanan ini penting, mengingat rata-rata ada 92 NHI untuk setiap manusia di perusahaan modern, menurut studi Entro Labs tahun 2025.

Autentikasi NHI menghadirkan tantangan yang berbeda, terutama karena bot tidak dapat melakukan MFA atau memasukkan kata sandi. Dalam kerangka kerja OAuth 2.0, NHI malah menerima token akses, yang kemudian dapat mereka gunakan untuk memanggil API yang relevan secara mandiri. 

Sementara itu, platform cloud sering merujuk layanan identitas bawaan mereka sendiri untuk mengautentikasi beban kerja NHI secara dinamis, alih-alih merujuk ke IdP pihak ketiga. Agen AI makin mempersulit autentikasi karena mereka dapat melakukan tugas multi-langkah yang kompleks di seluruh lingkungan. Karena agen ini dapat beroperasi tanpa campur tangan manusia, autentikasi membantu mencegah mereka membocorkan informasi sensitif secara tidak sengaja atau menciptakan ketidakselarasan.

Metode autentikasi yang berbeda bekerja lebih baik dengan berbagai jenis sistem agen. Misalnya, server protokol konteks model (MCP), yang membantu LLM berkomunikasi dengan layanan eksternal, dapat menggunakan berbagai metode autentikasi, termasuk kunci OAuth 2.0 dan API, tergantung pada apa yang dibutuhkan layanan eksternal. Sementara itu, MTL mungkin lebih cocok untuk konfigurasi zero-trust. Misalnya, tim dapat menggunakan autentikasi berbasis MTLS untuk membatasi agen dari penerapan langsung, sambil memberinya akses ke lingkungan pengujian yang aman.

Pertanyaan yang sering diajukan tentang autentikasi API

Apa metode autentikasi API paling aman?

Metode yang berbeda ideal untuk contoh penggunaan yang berbeda. Tetapi MTL sering disebut sebagai salah satu pendekatan yang paling aman karena membutuhkan klien dan server untuk menyajikan sertifikat digital satu sama lain, membuat serangan man-in-the-middle—di mana penyerang diam-diam menyusup di antara dua layanan komunikasi—menjadi lebih sulit.

Sementara itu, OAuth 2.0 dengan OIDC sering cocok untuk sistem autentikasi yang berfokus pada pengguna karena menggabungkan kontrol akses granular, membatasi jendela serangan dengan token berumur pendek dan bekerja dengan baik dengan sistem modern, seperti layanan mikro dan aplikasi cloud.

Apa perbedaan antara kode status 401 dan 403?

Aplikasi menggunakan “401 tidak sah” dan “403 dilarang” untuk menunjukkan kepada klien bahwa akses telah ditolak. Ketika klien membuat panggilan API ke sumber daya yang dilindungi tetapi menerima kode status 401, kesalahan ini menunjukkan bahwa klien tidak mencoba memasukkan kredensial atau memasukkannya secara tidak benar. Sementara itu, kode 403 menunjukkan bahwa klien telah berhasil diautentikasi—tetapi tidak berwenang untuk mengakses layanan yang diminta.

Dapatkah agen AI mengautentikasi dirinya sendiri?

Ya, agen AI dapat mengautentikasi diri sendiri dengan menggunakan saluran autentikasi mesin-ke-mesin, seperti yang digunakan untuk mengautentikasi pertukaran data antara layanan mikro, otomatisasi cloud, integrasi SaaS, dan perangkat edge. Alur kerja umumnya mungkin terlihat seperti ini: Agen diberi pengenal unik, menukar kredensial dengan token akses dan menggunakan token untuk melakukan panggilan API. Ketika agen bertindak atas nama manusia, pengguna sering diminta untuk terlebih dahulu masuk dan memberikan izin cakupan kepada agen sebelum dapat menerima token aksesnya. 

Bagaimana organisasi dapat mengaudit atau menguji sistem autentikasi mereka?

Banyak tim menggunakan solusi keamanan yang disebut pemindaian kerentanan terautentikasi untuk mencari kelemahan dalam sistem autentikasi mereka. Pendekatan ini memberi platform keamanan kredensialnya sendiri sehingga dapat masuk ke jaringan dan memantau kelemahannya dari dalam.

Pemindaian keamanan internal dapat mengidentifikasi kesalahan pengodean atau kesalahan konfigurasi dengan lebih presisi daripada pemindaian non-kredensial karena dapat menangkap tampilan tentang apa yang mungkin dilihat penyerang setelah mendapatkan akses ke sistem yang aman. 

Nick Gallagher

Staff Writer, Automation & ITOps

IBM Think

Michael Goodwin

Staff Editor, Automation & ITOps

IBM Think

Solusi terkait
IBM API Connect

Mengembangkan, mengelola, mengamankan, dan mensosialisasikan semua jenis antarmuka pemrograman aplikasi (API) Anda dengan lancar, di mana pun mereka berada.

Jelajahi API Connect
Solusi integrasi IBM

Berdayakan bisnis Anda melalui konektivitas dan otomatisasi yang mulus dengan perangkat lunak platform integrasi.

Jelajahi solusi integrasi IBM
Layanan konsultasi cloud

Buka potensi penuh hybrid cloud di era AI agen.

Jelajahi konsultasi cloud
Ambil langkah selanjutnya

IBM API Connect mendukung semua jenis antarmuka pemrograman aplikasi (API) modern sekaligus meningkatkan keamanan dan tata kelola. Kemampuan AI Generatif (Gen AI) mengotomatiskan tugas manual, menghemat waktu, dan membantu memastikan kualitas. 

  1. Jelajahi IBM API Connect
  2. Jelajahi solusi integrasi IBM®