Posts

Showing posts with the label REST

Dari Spring Boot ke Quarkus: Memahami JAX-RS, MicroProfile, dan SmallRye

Image
Bagi banyak developer Java, Spring Boot adalah pilihan utama untuk membuat aplikasi REST API . Annotation seperti @RestController , @GetMapping , atau @PostMapping sudah menjadi makanan sehari-hari. Namun, saat mulai mengenal Quarkus , sering muncul pertanyaan: “Kalau di Quarkus bikin REST API pakai apa?” “Apa itu MicroProfile dan SmallRye, dan bagaimana perannya di Quarkus?” Artikel ini mencoba memberi penjelasan sederhana bagi pemula, khususnya mereka yang berasal dari dunia Spring Boot. 1. REST API di Quarkus: Dasarnya JAX-RS Di Quarkus, pembuatan REST API menggunakan standar Jakarta RESTful Web Services (JAX-RS) , bukan Spring MVC. Contoh endpoint sederhana di Quarkus: import jakarta.ws.rs.GET; import jakarta.ws.rs.Path; import jakarta.ws.rs.Produces; import jakarta.ws.rs.core.MediaType; @Path("/hello") public class HelloResource {     @GET     @Produces(MediaType.TEXT_PLAIN)     public String hello() {         return "Hel...

Quarkus Security - TLS mutual antara dua aplikasi Quarkus

Image
Kita akan membahas cara untuk secara manual mengatur enkripsi TLS mutual antara dua aplikasi Quarkus, baik di bare metal maupun di Kubernetes. Apa itu Autentikasi TLS Mutual? Autentikasi TLS mutual, atau autentikasi dua arah, adalah perpanjangan dari Transport Layer Security (TLS). Ini memastikan bahwa lalu lintas antara klien dan server aman dan tepercaya dalam kedua arah. Mengapa TLS Mutual? TLS mutual memberikan lapisan keamanan tambahan yang memverifikasi tidak hanya identitas server tetapi juga identitas klien. Bagaimana Cara Mengimplementasikannya? Pendekatan terbaik untuk mengimplementasikan Mutual TLS antara dua layanan adalah dengan mendelegasikannya ke infrastruktur, misalnya, Service Mesh. Ini mencapai cara komunikasi yang standar dan aman serta menghindari setiap aplikasi mengimplementasikan solusinya sendiri. Namun, adakalanya kita tidak selalu bekerja di lingkungan yang ideal. Mari kita lihat bagaimana mengimplementasikan mTLS dengan Quarkus jika kita tid...