Như ta đã biết OpenID luôn tập trung vào cách thức xác thực (authentication) người dùng với trình duyệt. Còn OAuth được phát triển để cho phép uỷ quyền (authorization) từ web, ứng dụng desktop hay các ứng dụng di động. Rõ ràng đã có sự quan tâm đặc biệt trong việc sử dụng kết hợp OpenID và OAuth cho phép người sử dụng chia sẻ định danh hay cấp quyền cho một Relying Party truy cập tới một tài nguyên được bảo vệ bởi OAuth chỉ qua một bước.
a, OpenID OAuth extensions
Một nhóm các nhà nghiên cứu đang làm việc để phát triển một chuẩn mở
rộng đối với OpenID nhằm tạo ra một giao thức xác thực có nhúng phê duyệt yêu cầu OAuth vào một yêu cầu xác thực từ OpenID. Để làm được điều này trước tiên ta phải xây dựng hai web service.
- Một Consumer kết hơp: Là một web service đồng thời đóng vai trò như một OpenID Relying Party (RP) và một OAuth Consumer.
- Một Provider kết hợp: Là một web service đồng thời đóng vai trò như một OpenID Identity Provider (OP) và một OAuth Service Provider (SP).
Thêm vào đó cần có sự kết hợp giữa các thông điệp của OpenID với việc sử dụng request token và access token trong OAuth authorization. Sau đây là một vài ví dụ
Nghiên cứu thử nghiệm các cơ chế xác thực sử dụng OpenID và ứng dụng
---
Hình 2.17. Luồng lai OpenID/OAuth2 với Spark API.
Nghiên cứu thử nghiệm các cơ chế xác thực sử dụng OpenID và ứng dụng
---
1: WebApp: Yêu cầu đăng nhập.
2: End-User: Lựa chọn đăng nhập với một OpenID Provider. 3: WebApp: Xác nhận sự tồn tại của provider.
4: Provider: Tồn tại, cho phép thực hiện tiếp.
5: WebApp: Tạo một phiên giao dịch, Yêu cầu được xác nhận cho end-user được gửi đến provider.
6: Provider: Chuyển người dùng đến trang đăng nhập của Provider. 7: End-user: Đăng nhập bằng tài khoản đã tạo tại Provider.
8: Provider: Báo cho WebApp người dùng tồn tại (Kèm theo thông tin phiên giao dịch).
9: WebApp: Xác nhận đăng nhập thành công, tiếp tục các tác vụ trước.
b, OpenID Connect
OpenID Connect chính là thế hệ tiếp theo của OpenID 2.0. Điểm khác biệt giữa OpenID Connect vẫn giữ nhiều tác vụ giống như OpenID 2.0 nhưng với giao diện lập trình thân thiện hơn. OpenID Connect định nghĩa các cơ chế tuỳ mạnh mạnh mẽ dành cho ký và mã hoá. Khác với sự kết hợp OAuth 1.0a và OpenID 2.0 như là một sự mở rộng ở mô hình trên. OpenID Connect đã được tích hợp OAuth 2.0 vào trong chính giao thức của mình.
Nghiên cứu thử nghiệm các cơ chế xác thực sử dụng OpenID và ứng dụng
---
Hình 2.19. OpenID Connect protocol 2.8. Kết luận chương
Như vậy trong chương này đã giới thiệu chi tiết về OpenID, bao gồm các thành phần chính và các thức hoạt động. Chương tiếp theo sẽđề xuất mô hình đăng nhập một lần sử dụng chuẩn OpenID áp dụng cho hệ thống y tế trên cơ sởđám mây.
Nghiên cứu thử nghiệm các cơ chế xác thực sử dụng OpenID và ứng dụng
---
CHƯƠNG 3 – ĐỀ XUẤT MÔ HÌNH ĐĂNG NHẬP MỘT LẦN TRONG HỆ THỐNG QUẢN LÝ THÔNG TIN Y TẾ
TRÊN CƠ SỞ ĐÁM MÂY VÀ THỬ NGHIỆM MÔ ĐUN ĐĂNG NHẬP MỘT LẦN SỬ DỤNG OPENID
Chương này trình bày về những vấn đề phát sinh với quá trình xác thực của một hệ thống thông tin y tế trên cở sởđám mây, qua đó đề xuất mô hình đăng nhập một lần, phân tích thiết kế và đánh giá tính khả thi của mô hình. Cuối chương luận văn sẽ đưa ra những thử nghiệm và đánh giá về hoạt động của mô đun đăng nhập một lần sử dụng OpenID trong quá trình xác thực trên các miền phụ khác nhau.