Bạn đang xem tài liệu về Apigee Edge.
Truy cập vào
tài liệu 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 mã thông báo OAuth của bên thứ ba.
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 một URL gọi lại khi đăng ký ứng dụng dành cho nhà phát triển. URL gọi lại thường chỉ định URL của một ứng dụng được chỉ định để nhận mã uỷ quyền thay cho ứng dụng khách. Ngoài ra, chuỗi URL này được dùng để xác thực. Ứng dụ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 tham số đã đăng ký. Xem thêm phần Yêu cầu mã truy cập và mã uỷ quyền.
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. 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ợ việc chỉ định nhiều URL gọi lại hoặc sử dụng ký tự đại diện khi một ứng dụng 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 đăng ký ứng dụng dành cho nhà phát triển, sau đó đặt một logic trong chính sách JavaScript để xác thực các URI chuyển hướng đến.
Thay đổi hành vi trả về mặc định của thao tác GenerateAuthCode
Theo mặc định, thao tác GenerateAuthCode của chính sách OAuthV2 sẽ trả về một 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ề phản hồi 200 bằng JSON có cấu trúc chứa mã.
Một cách để thực hiện trường hợp sử dụng này là đặt thuộc tính GenerateResponse của chính sách OAuthV2 thành false.
Sử dụng chính sách ExtractVariable để lấy giá trị của mã uỷ quyền từ biến oauthv2authcode.{policy_name}.code. Sau đó, bạn có thể sử dụng chính sách AssignMessage để trả về mã trong tải trọng JSON có trạng thái là 200.
Kiểm tra sự đồng ý của người dùng cuối ứng dụng
Bạn có thể phải xác minh rằng người dùng cuối ứng dụng đã uỷ quyền cho một ứng dụng. Bạn có thể sử dụng Audit API của Apigee Edge để thực hiện việc này.
Mẫu OAuth đi
Hãy xem mẫu outbound-oauth trong kho lưu trữ api-platform-samples của Apigee trên GitHub. Bạn có thể nhân bản mẫu, triển khai và kích hoạt mẫu đó. Mẫu này sử dụng Microsoft Azure Translator API để dịch các tweet. Để làm như vậy, tiện ích sẽ thực hiện một lệnh gọi đi để lấy mã truy cập OAuth, sau đó lưu mã thông báo vào bộ nhớ đệm bằng cách sử dụng các chính sách lưu vào bộ nhớ đệm của Dịch vụ API, 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, còn có một ứng dụng trình duyệt minh hoạ được dùng để gọi proxy API.