Usunięcie zasady OAuthOAuth22Info

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 true, aby określić, że zasada ma być uruchamiana w wątku pula inna niż pula obsługująca przepływ żądań/odpowiedzi. Domyślne jest false.

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 true, w przypadku niepowodzenia wykonywanie przepływu będzie kontynuowane.

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: A-Z0-9._\-$ % Interfejs zarządzania wymusza dodatkowe ograniczenia, takie jak: automatycznie usuwa znaki niealfanumeryczne.

Nie dotyczy Wymagane

&lt;AccessToken&gt; 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: request.header.token lub request.queryparam.token.

Nie dotyczy Opcjonalnie

&lt;AuthorizationCode&gt; 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: request.header.code lub request.queryparam.code.

Nie dotyczy Opcjonalnie

&lt;DisplayName&gt; 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.

Powiązane artykuły