2012-07-12 27 views
6

tôi đã nhìn vào các thư viện khác nhau OAuth2 java (mùa xuân-an ninh-oauth, CXF, người ghi chép, google-oauth-java-client) và không thể tìm thấy bất cứ điều gì ngoài kia có hỗ trợ Mac loại thẻ như đã mô tả ở đây: http://tools.ietf.org/html/draft-ietf-oauth-v2-http-mac-01Có bất kỳ triển khai Java đã biết nào cho loại mã thông báo OAuth2 'mac' không?

Tất cả chúng đều hỗ trợ loại mã thông báo Bearer theo mặc định và không có gì khác. Có lý do cụ thể nào khiến loại mã thông báo này không được hỗ trợ không?

Trả lời

0

Tôi không phải là chuyên gia trong lĩnh vực này, nhưng có vẻ như dưới ấn tượng rằng PicketLink hỗ trợ cả MAC và BEARER token types.

Tôi không thực sự chắc chắn đó là những gì bạn muốn. Nếu bạn có bất kỳ nghi ngờ nào, bạn có thể contact them here.

2

Lý do đằng sau hầu hết các thư viện Java cho OAuth 2.0 hỗ trợ Bearer loại mã thông báo là Bearer Cấu hình mã thông báo mang đến một lược đồ xác thực đơn giản. Bất kỳ người dùng nào có mã thông báo bearer đều có thể sử dụng nó để có quyền truy cập vào các tài nguyên được liên kết (mà không thể hiện sự sở hữu của khóa mật mã). Khung ủy quyền OAuth 2.0: Bearer Đặc điểm sử dụng mã thông báo mô tả việc sử dụng mã thông báo bearer trong HTTPrequests để truy cập tài nguyên được bảo vệ OAuth 2.0.

đáp ứng cho Bearer Tiếp cận Mã

HTTP/1.1 200 OK 
    Content-Type: application/json;charset=UTF-8 
    Cache-Control: no-store 
    Pragma: no-cache 

    { 
     "access_token":"mF_9.B5f-4.1JqM", 
     "token_type":"Bearer", 
     "expires_in":3600, 
     "refresh_token":"tGzv3JOkF0XG5Qx2TlKWIA" 
     } 

MAC Mã hồ sơ xác định cơ chế thẩm HTTPMAC truy cập, cung cấp một phương pháp để làm cho các yêu cầu HTTP được chứng thực với xác minh mật mã một phần của yêu cầu, bao gồm các phương thức HTTP, yêu cầu URI và lưu trữ. Mỗi định nghĩa loại mã thông báo truy cập chỉ định các thuộc tính bổ sung (mac_key, mac_algorithm) được gửi đến máy khách cùng với thông số phản hồi access_token.

HTTP/1.1 200 OK 
    Content-Type: application/json 
    Cache-Control: no-store 

    { 
     "access_token":"SlAV32hkKG", 
     "token_type":"mac", 
     "expires_in":3600, 
     "refresh_token":"8xLOxBtZp8", 
     "mac_key":"adijq39jdlaska9asud", 
     "mac_algorithm":"hmac-sha-256" 
    } 

Các access_token hoặc MAC nhận dạng chính là một chuỗi xác định phím MAC sử dụng để tính toán theo yêu cầu MAC. Chuỗi thường mờ đục đối với khách hàng. Máy chủ thường chỉ định phạm vi và thời gian cụ thể cho mỗi bộ thông tin đăng nhập MAC. Số nhận dạng có thể biểu thị giá trị duy nhất được sử dụng để truy xuất thông tin ủy quyền (ví dụ: từ cơ sở dữ liệu) hoặc tự chứa thông tin ủy quyền theo cách có thể xác minh (tức là một chuỗi bao gồm một số dữ liệu và chữ ký).

Scribe là thư viện trong Java dành cho OAuth 2.0 với MAC Cấu hình mã thông báo.

Nguồn: OAuth 2.0 Bearer Token Profile Vs MAC Token Profile

Các vấn đề liên quan