Przeglądasz dokumentację Apigee Edge.
Przejdź do
Dokumentacja Apigee X. informacje.
Co
Usuwa określony kod autoryzacji OAuth V2 lub token dostępu.
Przykłady
Usuń token dostępu
Poniżej znajdziesz przykładową zasadę usuwania tokena dostępu OAuth 2.0. Ten przykład wskazuje
token dostępu, który ma zostać usunięty z wiadomości żądania, wyszukując nagłówek o nazwie
access_token
<DeleteOAuthV2Info name="DeleteAccessToken"> <AccessToken ref="request.header.access_token"></AccessToken> </DeleteOAuthV2Info>
Usuń kod autoryzacji
Poniżej znajdziesz przykładową zasadę usuwania kodu autoryzacji OAuth 2.0. Przykład poniżej
znajduje kod autoryzacji do usunięcia z wiadomości z żądaniem, szukając parametru zapytania o nazwie
code
<DeleteOAuthV2Info name="DeleteAuthCode"> <AuthorizationCode ref="request.queryparam.code"></AuthorizationCode> </DeleteOAuthV2Info>
Odniesienie do elementu
Dokumentacja elementu opisuje elementy i atrybuty metody 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
<DeleteOAuthV2Info> atrybuty
<DeleteOAuthV2Info async="false" continueOnError="false" enabled="true" name="Delete-OAuth-v20-Info-1">
Atrybut | Opis | Domyślny | Obecność |
---|---|---|---|
asynchroniczny |
Ustaw jako To ustawienie jest używane tylko do optymalizacji wewnętrznej. |
fałsz | Opcjonalnie |
continueOnError |
Większość zasad powinna zwracać błąd w przypadku wystąpienia błędu. Ustawienie
|
fałsz | Opcjonalnie |
włączone | Określa, czy zasada jest egzekwowana. Jeśli ma wartość false ,
jest „wyłączona” i nie jest egzekwowana (mimo że jest
przepływu). |
prawda | Opcjonalnie |
nazwa |
Wewnętrzna nazwa zasady. Do tej nazwy odwołują się elementy kroku, które należy dołączyć do przepływu. Uwaga: w nazwie można używać tylko następujących znaków:
|
Nie dotyczy | Wymagane |
<AccessToken> element
Identyfikuje zmienną, w której znajduje się token dostępu do usunięcia. Na przykład, jeśli plik
token dostępu jest dołączony do komunikatu żądania jako parametr zapytania o nazwie „access_token”, określ
request.queryparam.access_token
Możesz użyć dowolnej prawidłowej zmiennej, która odwołuje się do
token. Można też przekazać ciąg tokena literału (rzadkie litery).
<AccessToken ref="request.queryparam.access_token"></AccessToken>
Domyślne: | Nie dotyczy |
Obecność: | Dozwolone wartości <AccessToken> albo <AuthorizationCode>
|
Typ: | Ciąg znaków |
Atrybuty
Atrybut | Opis | Domyślny | Obecność |
---|---|---|---|
odsyłacz |
Zmienna tokena dostępu. Wartość jest zwykle pobierana ze zmiennej przepływu. Dla:
przykład: |
Nie dotyczy | Opcjonalnie |
<AuthorizationCode> element
Określa zmienną, w której znajduje się kod autoryzacji do usunięcia. Na przykład, jeśli plik
kod autoryzacji jest dołączony do żądania jako parametr zapytania o nazwie „code” (kod), określ
request.queryparam.code
Możesz użyć dowolnej prawidłowej zmiennej, która odwołuje się do tokena.
Można też przekazać ciąg tokena literału (rzadkie litery).
<AuthorizationCode ref="request.queryparam.code"></AuthorizationCode>
Domyślne: | Nie dotyczy |
Obecność: | Dozwolone wartości <AccessToken> albo <AuthorizationCode>
|
Typ: | Ciąg znaków |
Atrybuty
Atrybut | Opis | Domyślny | Obecność |
---|---|---|---|
odsyłacz |
Zmienna tokena dostępu. Wartość jest zwykle pobierana ze zmiennej przepływu. Dla:
przykład: |
Nie dotyczy | Opcjonalnie |
<DisplayName> element
Nazwa w języku naturalnym oznaczająca zasadę w edytorze proxy interfejsu zarządzania. Jeśli zostanie pominięty, jest używany atrybut nazwa zasady.
<DisplayName>DeleteOAuthV2Info 1</DisplayName>
Domyślne: | Wartość atrybutu name zasady. |
Obecność: | Opcjonalnie |
Typ: | Ciąg znaków |
Informacje o błędzie
W tej sekcji opisano kody błędów i komunikaty o błędach, które są zwracane, oraz zmienne błędów ustawiane przez Edge, gdy ta zasada wyzwala błąd. Warto o tym wiedzieć, jeśli rozwijasz reguły błędów, aby obsługi błędów. Więcej informacji znajdziesz w artykule Co musisz wiedzieć o błędach związanych z zasadami i postępowaniu z błędami
Błędy w czasie wykonywania
Te błędy mogą wystąpić podczas wykonywania zasady.
Kod błędu | Stan HTTP | Przyczyna |
---|---|---|
steps.oauth.v2.invalid_access_token |
401 | Token dostępu wysłany do zasady jest nieprawidłowy. |
steps.oauth.v2.invalid_request-authorization_code_invalid |
401 | Kod autoryzacji wysłany do zasady jest nieprawidłowy. |
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound |
401 | Więcej informacji: ten post na karcie Społeczność Apigee z informacjami o rozwiązywaniu tego problemu. |
Błędy wdrażania
Więcej informacji o błędach wdrażania znajdziesz w komunikacie zgłoszonym w interfejsie.
Zmienne błędów
Te zmienne są ustawiane, gdy ta zasada wywołuje błąd w czasie działania.
Zmienne | Gdzie | Przykład |
---|---|---|
fault.name="fault_name" |
fault_name to nazwa błędu podana w tabeli Błędy czasu działania powyżej. Nazwa błędu to ostatnia część kodu błędu. | fault.name = "invalid_access_token" |
oauthV2.policy_name.failed |
policy_name to określona przez użytkownika nazwa zasady, która spowodowała błąd. | oauthV2.DeleteTokenInfo.failed = true |
oauthV2.policy_name.fault.name |
policy_name to określona przez użytkownika nazwa zasady, która spowodowała błąd. | oauthV2.DeleteTokenInfo.fault.name = invalid_access_token |
oauthv2.policy_name.fault.cause |
policy_name to określona przez użytkownika nazwa zasady, która spowodowała błąd. | oauthV2.DeleteTokenInfo.cause = Invalid Access Token |
Przykładowa odpowiedź na błąd
{ "fault": { "faultstring": "Invalid Access Token", "detail": { "errorcode": "keymanagement.service.invalid_access_token" } } }
Przykładowa reguła błędu
<faultrule name="VariableOfNonMsgType"></faultrule><FaultRule name="DeleteOAuthV2Info_Faults"> <Step> <Name>AM-InvalidTokenResponse</Name> </Step> <Condition>(fault.name = "invalid_access_token")</Condition> </FaultRule>
Schemat
Każdy typ zasad jest definiowany przez schemat XML (.xsd
). Schematy zasad
są dostępne na GitHubie.