

# API Gateway Lambda オーソライザーで API を呼び出す
<a name="call-api-with-api-gateway-lambda-authorization"></a>

 Lambda オーソライザー (以前のカスタムオーソライザー) を設定し、API をデプロイしている場合は、Lambda オーソライザーを有効にして API を検証する必要があります。そのためには、cURL または [Postman](https://www.postman.com/) などの REST クライアントが必要です。以下の例では、Postman を使用します。

**注記**  
 オーソライザーが有効なメソッドを呼び出すとき、`TOKEN` オーソライザーに必要なトークンが設定されていない、Null である、または指定された [**トークン検証式**] によって無効にされている場合、API Gateway は CloudWatch への呼び出しを記録しません。同様に、`REQUEST` オーソライザーに必要な ID ソースのいずれかが設定されていない、Null である、または空の場合、API Gateway は CloudWatch への呼び出しを記録しません。

 以下では、Postman を使用して Lambda `TOKEN` オーソライザーで API の呼び出しまたはテストを行う方法を説明します。必要なパス、ヘッダー、またはクエリ文字列パラメータを明示的に指定している場合は、このメソッドを Lambda `REQUEST` オーソライザーを使用した API の呼び出しに適用できます。

**カスタムの `TOKEN` オーソライザーで API を呼び出すには**

1.  [**Postman**] を開き、[**GET**] メソッドを選択して、API の [**呼び出し URL**] を、隣の URL フィールド内に貼り付けます。

    Lambda 認可トークンヘッダーを追加し、その値を`allow`に設定します。[**Send (送信)**] を選択します。  
![\[Lambda 認可 Allow トークンで API を呼び出す\]](http://docs.aws.amazon.com/ja_jp/apigateway/latest/developerguide/images/custom-auth-call-api-with-allow-token.png)

    レスポンスは、API Gateway Lambda オーソライザーが [**200 OK**] レスポンスを返し、メソッドに関連付けられた HTTP エンドポイント (http://httpbin.org/get) にアクセスすることを適切に呼び出しに許可していることを示しています。

1.  Postman で、Lambda 認可トークンヘッダー値を`deny`に変更します。[**Send (送信)**] を選択します。  
![\[Lambda 認可 Deny トークンで API を呼び出す\]](http://docs.aws.amazon.com/ja_jp/apigateway/latest/developerguide/images/custom-auth-call-api-with-deny-token.png)

   レスポンスは、API Gateway Lambda カスタム認証が [**403 Forbidden**] レスポンスを返し、HTTP エンドポイントにアクセスすることを呼び出しに許可しないことを示しています。

1.  Postman で、Lambda 認可トークンヘッダー値を `unauthorized` に変更し、[**送信**] を選択します。  
![\[Lambda 認可 Unauthorized トークンで API を呼び出す\]](http://docs.aws.amazon.com/ja_jp/apigateway/latest/developerguide/images/custom-auth-call-api-with-unauthorized-token.png)

    レスポンスは、API Gateway が [**401 Unauthorized**] レスポンスを返し、HTTP エンドポイントにアクセスすることを呼び出しに許可しないことを示しています。

1.  ここで、Lambda 認可トークンヘッダー値を`fail`に変更します。[**Send (送信)**] を選択します。  
![\[Lambda 認可 Fail トークンで API を呼び出す\]](http://docs.aws.amazon.com/ja_jp/apigateway/latest/developerguide/images/custom-auth-call-api-with-fail-token.png)

    レスポンスは、API Gateway が [**500 Internal Server Error**] レスポンスを返し、HTTP エンドポイントにアクセスすることを呼び出しに許可しないことを示しています。