Xác thực trong Spring Cloud Config (Spring Cloud Config Authenticate)
Bài viết được sự cho phép của tác giả Trần Hữu Cương
Thông tin cấu hình của 1 project khá quan trọng, nó chứa nhiều thông tin nhạy cảm như username/password… nên ta cần phải bảo mật nó.
Để bảo mật thông tin cấu hình từ cloud config server có 2 cách đơn giản:
- Xác thực (dùng username/password hoặc token)
- Mã hóa/ giải mã (mã hóa ở cloud config server, và giải mã ở cloud config client)
Trong bài này mình sẽ thực hiện theo cách thứ nhất là xác thực các request tới cloud config server.
Xác thực trong Spring Cloud Config (Spring Cloud Config Authenticate)
Trong bài này mình sẽ sử dụng lại ví dụ trong bài trước:
Đối với project Spring Cloud Config Server
Thêm thư viện spring security vào file pom.xml
:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency>
Cấu hình security (username/password) trong file application.yml
security: user: name: admin1234 password: admin1234
Đối với project Spring Cloud Config Client
Cấu hình username/password cho cloud config: trong file bootstrap.yml
cloud: config: uri: http://localhost:8888 username: admin1234 password: admin1234
Demo: start project spring-cloud-config-server
Truy cập http://localhost:8888/app/dev để xem thông tin cấu hình của ứng dụng app
với profiles là dev
Server bắt buộc phải login mới có thể xem được.
Trong trường hợp này bạn phải nhập username/password đã cấu hình ở bên trên để pass qua màn hình login.
Cách khác là bạn có thể truyền luôn username/password vào trong url: http://admin1234:[email protected]:8888/app/dev. Tuy nhiên trình duyệt web ko hỗ trợ kiểu url này nên bạn có thể thử bằng 1 rest client như postman hoặc mở màn hình cmd và chạy lệnh curl:
curl http://admin1234:[email protected]:8888/app/dev
Còn đối với spring-cloud-config-client, do đã cấu hình sẵn username/password nên nó vẫn có thể lấy được cấu hình từ server như bình thường.
Okay, Done!
Download code ví dụ trên tại đây hoặc tại: https://github.com/stackjava/spring-cloud-config-authenticate
References: https://cloud.spring.io/spring-cloud-config/reference/html/
Bài viết gốc được đăng tải tại stackjava.com
Có thể bạn quan tâm:
- Nguồn tự học web front-end và web configuration ngon bổ rẻ
- Xử lý Conflict trong Git
- Giới thiệu CloudAMQP – Một RabbitMQ server trên Cloud
Xem thêm Việc làm Developer hấp dẫn trên TopDev
- V VIETNAM MOBILE DAY 2022 – We Connect, Sân Chơi Quen Thuộc Của Cộng Đồng Công Nghệ Việt Nam Đã Trở Lại
- R Renoleap DevOps Bootcamp – Khóa Học Miễn Phí Trong 13 Tuần Tại Việt Nam.
- S Scrum Master là gì? Tìm hiểu các vai trò chính của Scrum Master
- SHIFT ASIA Quản Lý Dự Án Hiệu Quả Với Công Cụ GITLAB
- C Cách Trình Duyệt Hiển Thị Website Của Bạn
- D Data Warehouse Là Gì? Tổng Quan Về Kho Dữ Liệu
- R RMIT DÀNH 4 HỌC BỔNG BẬC THẠC SĨ CHO HAI CHƯƠNG TRÌNH MỚI
- T Team Leader là gì? Những kỹ năng nào mà một Team Leader cần có?
- P Phương pháp lập Kế hoạch tuyển dụng
- v var, let và const trong ES6