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
Nội dung
Xoá mã uỷ quyền hoặc mã truy cập OAuth V2 đã chỉ định.
Mẫu
Xoá mã truy cập
Dưới đây là ví dụ về chính sách dùng để xoá mã truy cập OAuth 2.0. Ví dụ bên dưới xác định vị trí mã truy cập cần xoá trong thông báo yêu cầu bằng cách tìm tiêu đề có tên là access_token.
<DeleteOAuthV2Info name="DeleteAccessToken">
<AccessToken ref="request.header.access_token"></AccessToken>
</DeleteOAuthV2Info>Xoá mã xác thực
Dưới đây là một ví dụ về chính sách dùng để xoá mã uỷ quyền OAuth 2.0. Ví dụ bên dưới xác định mã uỷ quyền cần xoá trong thông báo yêu cầu bằng cách tìm một tham số truy vấn có tên là code.
<DeleteOAuthV2Info name="DeleteAuthCode">
<AuthorizationCode ref="request.queryparam.code"></AuthorizationCode>
</DeleteOAuthV2Info>Tham chiếu phần tử
Tài liệu tham khảo về phần tử mô tả các phần tử và thuộc tính của chính sách DeleteOAuthV2Info.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <DeleteOAuthV2Info async="false" continueOnError="false" enabled="true" name="DeleteOAuthV2Info-1"> <DisplayName>Delete OAuth v2.0 Info 1</DisplayName> <AccessToken ref={some-variable}></AccessToken> <!--<AuthorizationCode ref={some-variable}></AuthorizationCode>--> <Attributes/> </DeleteOAuthV2Info
Thuộc tính <DeleteOAuthV2Info>
<DeleteOAuthV2Info async="false" continueOnError="false" enabled="true" name="Delete-OAuth-v20-Info-1">
| Thuộc tính | Mô tả | Mặc định | Tỷ lệ hiển thị |
|---|---|---|---|
| không đồng bộ |
Đặt thành Chế độ cài đặt này chỉ được dùng để tối ưu hoá nội bộ. |
false | Không bắt buộc |
| continueOnError |
Hầu hết các chính sách đều dự kiến sẽ trả về lỗi khi xảy ra lỗi. Bằng cách đặt thuộc tính này thành |
false | Không bắt buộc |
| đang bật | Xác định xem một chính sách có được thực thi hay không. Nếu được đặt thành false, một chính sách sẽ "tắt" và không được thực thi (mặc dù chính sách vẫn được đính kèm vào một Luồng). |
true | Không bắt buộc |
| tên |
Tên nội bộ của chính sách. Tên này được tham chiếu trong các phần tử Bước để đính kèm chính sách vào một Luồng. Lưu ý: Bạn chỉ có thể sử dụng các ký tự sau trong tên:
|
Không áp dụng | Bắt buộc |
Phần tử <AccessToken>
Xác định biến chứa mã truy cập cần xoá. Ví dụ: nếu mã truy cập được đính kèm vào thông báo yêu cầu dưới dạng một tham số truy vấn có tên là "access_token", hãy chỉ định request.queryparam.access_token. Bạn có thể sử dụng bất kỳ biến hợp lệ nào tham chiếu đến mã thông báo. Hoặc có thể truyền vào chuỗi mã thông báo theo nghĩa đen (trường hợp hiếm gặp).
<AccessToken ref="request.queryparam.access_token"></AccessToken>
| Mặc định: | Không áp dụng |
| Trạng thái hiện diện: | Bạn bắt buộc phải sử dụng <AccessToken> hoặc <AuthorizationCode>. |
| Loại: | Chuỗi |
Thuộc tính
| Thuộc tính | Mô tả | Mặc định | Tỷ lệ hiển thị |
|---|---|---|---|
| ref |
Một biến mã truy cập. Thường được truy xuất từ một biến luồng. Ví dụ: |
Không áp dụng | Không bắt buộc |
Phần tử <AuthorizationCode>
Xác định biến chứa mã uỷ quyền cần xoá. Ví dụ: nếu mã uỷ quyền được đính kèm vào thông báo yêu cầu dưới dạng một tham số truy vấn có tên là "code", hãy chỉ định request.queryparam.code. Bạn có thể sử dụng bất kỳ biến hợp lệ nào tham chiếu đến mã thông báo.
Hoặc có thể truyền vào chuỗi mã thông báo theo nghĩa đen (trường hợp hiếm gặp).
<AuthorizationCode ref="request.queryparam.code"></AuthorizationCode>
| Mặc định: | Không áp dụng |
| Trạng thái hiện diện: | Bạn bắt buộc phải sử dụng <AccessToken> hoặc <AuthorizationCode>. |
| Loại: | Chuỗi |
Thuộc tính
| Thuộc tính | Mô tả | Mặc định | Tỷ lệ hiển thị |
|---|---|---|---|
| ref |
Một biến mã truy cập. Thường được truy xuất từ một biến luồng. Ví dụ: |
Không áp dụng | Không bắt buộc |
Phần tử<DisplayName>
Tên bằng ngôn ngữ tự nhiên dùng để gắn nhãn chính sách trong trình chỉnh sửa proxy giao diện người dùng quản lý. Nếu bạn bỏ qua, thuộc tính tên chính sách sẽ được sử dụng.
<DisplayName>DeleteOAuthV2Info 1</DisplayName>
| Mặc định: | Giá trị của thuộc tính name trong chính sách. |
| Trạng thái hiện diện: | Không bắt buộc |
| Loại: | Chuỗi |
Tham chiếu lỗi
Phần này mô tả các mã lỗi và thông báo lỗi được trả về cũng như các biến lỗi do Edge đặt khi chính sách này kích hoạt lỗi. Thông tin này rất quan trọng nếu bạn đang phát triển các quy tắc lỗi để xử lý lỗi. Để tìm hiểu thêm, hãy xem bài viết Những điều bạn cần biết về lỗi chính sách và Xử lý lỗi.
Lỗi thời gian chạy
Những lỗi này có thể xảy ra khi chính sách này thực thi.
| Mã lỗi | Trạng thái HTTP | Nguyên nhân |
|---|---|---|
steps.oauth.v2.invalid_access_token |
401 | Mã truy cập được gửi đến chính sách là không hợp lệ. |
steps.oauth.v2.invalid_request-authorization_code_invalid |
401 | Mã uỷ quyền được gửi đến chính sách này không hợp lệ. |
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound |
401 | Vui lòng xem bài đăng này trên thẻ Cộng đồng Apigee để biết thông tin về cách khắc phục lỗi này. |
Lỗi triển khai
Hãy tham khảo thông báo được báo cáo trong giao diện người dùng để biết thông tin về các lỗi triển khai.
Biến lỗi
Các biến này được đặt khi chính sách này kích hoạt lỗi trong thời gian chạy.
| Biến | Trong đó | Ví dụ: |
|---|---|---|
fault.name="fault_name" |
fault_name là tên của lỗi, như được liệt kê trong bảng Lỗi thời gian chạy ở trên. Tên lỗi là phần cuối cùng của mã lỗi. | fault.name = "invalid_access_token" |
oauthV2.policy_name.failed |
policy_name là tên do người dùng chỉ định của chính sách gây ra lỗi. | oauthV2.DeleteTokenInfo.failed = true |
oauthV2.policy_name.fault.name |
policy_name là tên do người dùng chỉ định của chính sách gây ra lỗi. | oauthV2.DeleteTokenInfo.fault.name = invalid_access_token |
oauthv2.policy_name.fault.cause |
policy_name là tên do người dùng chỉ định của chính sách gây ra lỗi. | oauthV2.DeleteTokenInfo.cause = Invalid Access Token |
Ví dụ về phản hồi khi gặp lỗi
{
"fault": {
"faultstring": "Invalid Access Token",
"detail": {
"errorcode": "keymanagement.service.invalid_access_token"
}
}
}Ví dụ về quy tắc lỗi
<faultrule name="VariableOfNonMsgType"></faultrule><FaultRule name="DeleteOAuthV2Info_Faults">
<Step>
<Name>AM-InvalidTokenResponse</Name>
</Step>
<Condition>(fault.name = "invalid_access_token")</Condition>
</FaultRule>Lược đồ
Mỗi loại chính sách được xác định bằng một giản đồ XML (.xsd). Để tham khảo, bạn có thể xem giản đồ chính sách trên GitHub.