2015-08-19 15 views
13

Tôi đang sử dụng OAuth2 bảo mật mùa xuân và hiện đang triển khai các loại tài khoản khách hàng và cấp mật khẩu. Tôi nhận thấy một khách hàng có cả phạm vi và chính quyền. Ai đó có thể giải thích sự khác biệt là gì không? Để cụ thể hơn, tôi đang sử dụng JDBCTokenStore và lược đồ cơ sở dữ liệu có bảng oauth_client_details.Phạm vi oauth2 của mùa xuân so với các cơ quan chức năng (vai trò)

Ngoài ra,

Trong bảng oauth_client_details, tôi không chắc chắn những gì các lĩnh vực sau đây là sử dụng cho:

web_server_redirect_url, access_token_validity, refresh_token_validity

Một số làm rõ sẽ rất hữu ích và đánh giá cao .

+0

Tôi có cùng một câu hỏi. [Tìm thấy Springs trình bày trên slideshare] (http://www.slideshare.net/SpringCentral/syer-oauth-model), nơi nó nói rằng họ phân biệt phạm vi và chính quyền: thẻ người dùng sử dụng phạm vi, thẻ khách hàng - cơ quan chức năng. Nhưng tôi không thể tìm ra lý do nào để làm điều đó. Bạn cuối cùng đã tìm thấy câu trả lời chưa? – pls

+0

Điều tôi thấy là nó không được xác định - nó thực sự tùy thuộc vào bạn, người thực hiện máy chủ OAuth2. Bài đăng bên dưới có ví dụ hay về phạm vi có thể được sử dụng cho. – m1s4mike

+3

Bản sao có thể có của [Sự khác biệt giữa phạm vi và quyền hạn trong UAA] (https://stackoverflow.com/questions/35691051/difference-between-scope-and-authority-in-uaa) – EagleRainbow

Trả lời

9

tôi nhận thấy một khách hàng có cả quy mô và cơ quan chức năng

Khách hàng chỉ có phạm vi, nhưng chúng tôi có thể xem xét/sử dụng nó như một cơ quan chức năng (vai trò). Điều này là do đặc tả OAuth không giải thích phạm vi sử dụng cụ thể.

Cân nhắc điều này, Người dùng ủy quyền twitter để đăng tweet của người dùng lên facebook. Trong trường hợp này, twitter sẽ có phạm vi write_facebook_status. Mặc dù người dùng có quyền thay đổi hồ sơ của người dùng nhưng điều này không có nghĩa là twitter cũng có thể thay đổi hồ sơ của người dùng. Nói cách khác, phạm vi là quyền/vai trò của khách hàng, không phải là quyền/vai trò của người dùng.

web_server_redirect_url

này sẽ được sử dụng bởi máy chủ uỷ quyền để chuyển hướng yêu cầu đến địa chỉ ban đầu của nó hoặc callback (uỷ quyền cấp) sau khi cấp phép thành công.

access_token_validity

đây là thời gian hết hạn token_access trong vài giây. Đặt thành -1 hoặc 0 cho vô hạn. Nếu bạn đặt thành 60 thì sau 1 phút token_access của bạn sẽ không hợp lệ. Bạn phải yêu cầu mã thông báo mới bằng cách thực hiện quy trình ủy quyền hoặc sử dụng hàm refresh_token.

refresh_token_validity

này được refresh_token thời gian hết hạn.

+0

"vì thông số kỹ thuật OAuth không giải thích cụ thể sử dụng phạm vi. Hãy giải thích lý do tại sao bạn nghĩ như vậy. Có lẽ một số liên kết giải thích thêm? –

+0

@ AlikElzin-kilaka bạn có thể tìm thấy ở đây https://tools.ietf.org/html/rfc6749#section-3.3 – MangEngkus

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