

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Masukan ke otorisasi Lambda API Gateway
<a name="api-gateway-lambda-authorizer-input"></a>

Bagian berikut menjelaskan format input dari API Gateway ke otorisasi Lambda.

## `TOKEN`format masukan
<a name="w2aac15b9c23c25c19b5"></a>

 Untuk Authorizer Lambda (sebelumnya dikenal sebagai otorisasi kustom) dari `TOKEN` jenisnya, Anda harus menentukan header kustom sebagai **Sumber Token** saat Anda mengonfigurasi otorisasi untuk API Anda. Klien API harus meneruskan token otorisasi yang diperlukan di header tersebut dalam permintaan yang masuk. Setelah menerima permintaan metode masuk, API Gateway mengekstrak token dari header kustom. Kemudian melewati token sebagai `authorizationToken` properti dari `event` objek fungsi Lambda, selain metode ARN sebagai properti: `methodArn` 

```
{
    "type":"TOKEN",
    "authorizationToken":"{caller-supplied-token}",
    "methodArn":"arn:aws:execute-api:{regionId}:{accountId}:{apiId}/{stage}/{httpVerb}/[{resource}/[{child-resources}]]"
}
```

 Dalam contoh ini, `type` properti menentukan jenis authorizer, yang merupakan `TOKEN` authorizer. `{caller-supplied-token}`Berasal dari header otorisasi dalam permintaan klien, dan dapat berupa nilai string apa pun. `methodArn`Ini adalah ARN dari permintaan metode yang masuk dan diisi oleh API Gateway sesuai dengan konfigurasi otorisasi Lambda. 

## `REQUEST`format masukan
<a name="w2aac15b9c23c25c19b7"></a>

Untuk `REQUEST` jenis pengotorisasi Lambda, API Gateway meneruskan parameter permintaan ke fungsi Lambda otorisasi sebagai bagian dari objek. `event` Parameter permintaan termasuk header, parameter jalur, parameter string kueri, variabel tahap, dan beberapa variabel konteks permintaan. Pemanggil API dapat mengatur parameter jalur, header, dan parameter string kueri. Pengembang API harus menyetel variabel stage selama penerapan API dan API Gateway menyediakan konteks permintaan pada waktu berjalan. 

**catatan**  
Parameter jalur dapat diteruskan sebagai parameter permintaan ke fungsi otorisasi Lambda, tetapi tidak dapat digunakan sebagai sumber identitas.

 Contoh berikut menunjukkan input ke `REQUEST` authorizer untuk metode API (`GET /request`) dengan integrasi proxy: 

```
{
  "type": "REQUEST",
  "methodArn": "arn:aws:execute-api:us-east-1:123456789012:abcdef123/test/GET/request",
  "resource": "/request",
  "path": "/request",
  "httpMethod": "GET",
  "headers": {
    "X-AMZ-Date": "20170718T062915Z",
    "Accept": "*/*",
    "HeaderAuth1": "headerValue1",
    "CloudFront-Viewer-Country": "US",
    "CloudFront-Forwarded-Proto": "https",
    "CloudFront-Is-Tablet-Viewer": "false",
    "CloudFront-Is-Mobile-Viewer": "false",
    "User-Agent": "..."
  },
  "queryStringParameters": {
    "QueryString1": "queryValue1"
  },
  "pathParameters": {},
  "stageVariables": {
    "StageVar1": "stageValue1"
  },
  "requestContext": {
    "path": "/request",
    "accountId": "123456789012",
    "resourceId": "05c7jb",
    "stage": "test",
    "requestId": "...",
    "identity": {
      "apiKey": "...",
      "sourceIp": "...",
      "clientCert": {
        "clientCertPem": "CERT_CONTENT",
        "subjectDN": "www.example.com",
        "issuerDN": "Example issuer",
        "serialNumber": "a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1:a1",
        "validity": {
          "notBefore": "May 28 12:30:02 2019 GMT",
          "notAfter": "Aug  5 09:36:04 2021 GMT"
        }
      }
    },
    "resourcePath": "/request",
    "httpMethod": "GET",
    "apiId": "abcdef123"
  }
}
```

 `requestContext`Ini adalah peta pasangan kunci-nilai dan sesuai dengan variabel [\$1context](api-gateway-mapping-template-reference.md#context-variable-reference). Hasilnya bergantung pada API.

 API Gateway mungkin menambahkan kunci baru ke peta. Untuk informasi selengkapnya tentang input fungsi Lambda dalam integrasi proxy Lambda, lihat. [Format input fungsi Lambda untuk integrasi proxy](set-up-lambda-proxy-integrations.md#api-gateway-simple-proxy-for-lambda-input-format) 