Chủ đề về OAuth 2.0 nâng cao

Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến Tài liệu về Apigee X.
thông tin

Sử dụng mã thông báo OAuth của bên thứ ba

Xem phần Sử dụng bên thứ ba Mã thông báo OAuth.

Chỉ định nhiều URL gọi lại

Khi sử dụng loại cấp mã uỷ quyền, bạn phải chỉ định URL gọi lại khi bạn hãy đăng ký ứng dụng của nhà phát triển. URL gọi lại thường chỉ định URL của ứng dụng được chỉ định nhận mã uỷ quyền thay mặt cho ứng dụng khách. Ngoài ra, URL này được sử dụng để xác thực. Khách hàng phải gửi URL này đến Apigee Edge khi yêu cầu mã uỷ quyền và mã truy cập, đồng thời tham số Redirect_uri phải khớp với một tài khoản đã được đăng ký. Xem thêm phần Yêu cầu mã truy cập và uỷ quyền mã.

Ví dụ:

http://myorg-test.apigee.net/weather/oauth/authorizationcode?client_id=123456&response_type=code&redirect_uri=http://example.com/callback&scope=scope1%20scope2&state=abc

Có một trường hợp sử dụng để chỉ định nhiều URL gọi lại trong một ứng dụng proxy. Cho ví dụ: bạn có thể muốn xác thực cho nhiều miền. Ví dụ:

  • http://myexample.com/callback
  • http://myexample.uk/callback
  • http://myexample.ja/callback

Edge không hỗ trợ chỉ định nhiều URL gọi lại hoặc sử dụng ký tự đại diện khi ứng dụng của nhà phát triển đã được đăng ký. Để thực hiện trường hợp sử dụng này, bạn có thể chỉ định một URL gọi lại trống khi bạn đăng ký ứng dụng của nhà phát triển, rồi đặt logic vào chính sách JavaScript để xác thực URI chuyển hướng đến.

Thay đổi giá trị trả về mặc định hành vi của toán tử GenerateAuthCode

Theo mặc định, thao tác GenerateAuthCode của chính sách OAuthV2 sẽ trả về lệnh chuyển hướng 302 đến URL gọi lại có tham số truy vấn ?code chứa mã uỷ quyền.

Trong một số trường hợp, bạn có thể muốn thay đổi hành vi này. Ví dụ: bạn có thể muốn trả về 200 phản hồi với JSON có cấu trúc chứa mã.

Để hoàn thành trường hợp sử dụng này, hãy sử dụng chính sách ExtractVariable để truy xuất mã và Chính sách AttributionMessage để trả về mã trong tải trọng JSON có trạng thái 200.

Kiểm tra sự đồng ý của người dùng cuối trong ứng dụng

Có thể bạn sẽ phải xác minh rằng một người dùng cuối của ứng dụng đã uỷ quyền cho một ứng dụng. Bạn có thể dùng Apigee API Kiểm tra của Edge để thực hiện việc này.

Mẫu OAuth đi

Xem mẫu outbound-oauth trong kho lưu trữ Apigee api-platform-samples trên GitHub. Bạn có thể sao chép, triển khai mẫu và chạy ứng dụng đó. Mẫu này sử dụng API dịch của Microsoft Azure để dịch bài đăng. Để làm được điều đó, thực hiện lệnh gọi đi để lấy mã truy cập OAuth, sau đó lưu mã thông báo này vào bộ nhớ đệm bằng API Dịch vụ đang lưu chính sách vào bộ nhớ đệm, sử dụng lại mã thông báo đã lưu vào bộ nhớ đệm mỗi khi thực hiện lệnh gọi đi. Ngoài ra, bao gồm ứng dụng trình duyệt minh hoạ dùng để gọi proxy API.