

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

# LambdaRequestAuthorizer
<a name="sam-property-api-lambdarequestauthorizer"></a>

Mengonfigurasi Otorisasi Lambda untuk mengendalikan akses ke API Anda dengan fungsi Lambda.

Untuk informasi selengkapnya dan contoh tambahan, lihat [Kontrol akses API dengan AWS SAM template Anda](serverless-controlling-access-to-apis.md).

## Sintaksis
<a name="sam-property-api-lambdarequestauthorizer-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-api-lambdarequestauthorizer-syntax.yaml"></a>

```
DisableFunctionDefaultPermissions: Boolean
[FunctionArn](#sam-api-lambdarequestauthorizer-functionarn): String
[FunctionInvokeRole](#sam-api-lambdarequestauthorizer-functioninvokerole): String
[FunctionPayloadType](#sam-api-lambdarequestauthorizer-functionpayloadtype): String
[Identity](#sam-api-lambdarequestauthorizer-identity): LambdaRequestAuthorizationIdentity
```

## Sifat-sifat
<a name="sam-property-api-lambdarequestauthorizer-properties"></a>

 `DisableFunctionDefaultPermissions`   <a name="sam-api-lambdarequestauthorizer-disablefunctiondefaultpermissions"></a>
Tentukan `true` untuk AWS SAM mencegah membuat sumber daya secara otomatis untuk memberikan izin antara `AWS::Lambda::Permissions` sumber `AWS::Serverless::Api` daya Anda dan fungsi Lambda otorisasi.  
*Nilai default*: `false`  
*Tipe*: Boolean  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `FunctionArn`   <a name="sam-api-lambdarequestauthorizer-functionarn"></a>
Tentukan fungsi ARN dari fungsi Lambda yang menyediakan otorisasi untuk API.  
AWS SAM akan secara otomatis membuat `AWS::Lambda::Permissions` sumber daya ketika `FunctionArn` ditentukan untuk`AWS::Serverless::Api`. Sumber `AWS::Lambda::Permissions` daya menyediakan izin antara API Anda dan fungsi Lambda otorisasi.
*Tipe*: String  
*Wajib*: Ya  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `FunctionInvokeRole`   <a name="sam-api-lambdarequestauthorizer-functioninvokerole"></a>
Menambahkan kredensi otorisasi ke OpenApi definisi otorisasi Lambda.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `FunctionPayloadType`   <a name="sam-api-lambdarequestauthorizer-functionpayloadtype"></a>
Properti ini dapat digunakan untuk menentukan tipe Otorisasi Lambda untuk API.  
*Nilai yang valid*: `TOKEN` atau `REQUEST`  
*Tipe*: String  
*Wajib*: Tidak  
*Default*: `TOKEN`  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `Identity`   <a name="sam-api-lambdarequestauthorizer-identity"></a>
Properti ini dapat digunakan untuk menentukan `IdentitySource` dalam permintaan masuk untuk otorisasi. Properti ini hanya diperlukan jika properti `FunctionPayloadType` diatur ke `REQUEST`.  
*Jenis*: [LambdaRequestAuthorizationIdentity](sam-property-api-lambdarequestauthorizationidentity.md)  
*Wajib*: Bersyarat  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

## Contoh
<a name="sam-property-api-lambdarequestauthorizer--examples"></a>

### LambdaRequestAuth
<a name="sam-property-api-lambdarequestauthorizer--examples--lambdarequestauth"></a>

#### YAML
<a name="sam-property-api-lambdarequestauthorizer--examples--lambdarequestauth--yaml"></a>

```
Authorizers:
  MyLambdaRequestAuth:
    FunctionPayloadType: REQUEST
    FunctionArn:
      Fn::GetAtt:
        - MyAuthFunction
        - Arn
    FunctionInvokeRole:
      Fn::GetAtt:
        - LambdaAuthInvokeRole
        - Arn
    Identity:
      Headers:
        - Authorization1
```

# LambdaRequestAuthorizationIdentity
<a name="sam-property-api-lambdarequestauthorizationidentity"></a>

Properti ini dapat digunakan untuk menentukan permintaan masuk untuk otorisasi. IdentitySource Untuk informasi selengkapnya, IdentitySource lihat [ OpenApi ekstensi ApiGateway Authorizer](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-authorizer.html).

## Sintaksis
<a name="sam-property-api-lambdarequestauthorizationidentity-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-api-lambdarequestauthorizationidentity-syntax.yaml"></a>

```
  [Context](#sam-api-lambdarequestauthorizationidentity-context): List
  [Headers](#sam-api-lambdarequestauthorizationidentity-headers): List
  [QueryStrings](#sam-api-lambdarequestauthorizationidentity-querystrings): List
  [ReauthorizeEvery](#sam-api-lambdarequestauthorizationidentity-reauthorizeevery): Integer
  [StageVariables](#sam-api-lambdarequestauthorizationidentity-stagevariables): List
```

## Sifat-sifat
<a name="sam-property-api-lambdarequestauthorizationidentity-properties"></a>

 `Context`   <a name="sam-api-lambdarequestauthorizationidentity-context"></a>
Mengonversi string konteks yang diberikan untuk ekspresi pemetaan format`context.contextString`.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `Headers`   <a name="sam-api-lambdarequestauthorizationidentity-headers"></a>
Mengonversi header untuk string yang dipisahkan koma dari ekspresi pemetaan format `method.request.header.name`.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `QueryStrings`   <a name="sam-api-lambdarequestauthorizationidentity-querystrings"></a>
Mengonversi string kueri yang diberikan menjadi string yang dipisahkan koma dari ekspresi pemetaan format `method.request.querystring.queryString`.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `ReauthorizeEvery`   <a name="sam-api-lambdarequestauthorizationidentity-reauthorizeevery"></a>
Periode time-to-live (TTL), dalam hitungan detik, yang menentukan berapa lama API Gateway menyimpan hasil otorisasi. Jika Anda menentukan nilai yang lebih besar dari 0, API Gateway akan menyimpan tanggapan pemberi kuasa. Secara default, API Gateway mengatur properti ini ke 300. Nilai maksimumnya adalah 3600, atau 1 jam.  
*Tipe*: Integer  
*Wajib*: Tidak  
*Default*: 300  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `StageVariables`   <a name="sam-api-lambdarequestauthorizationidentity-stagevariables"></a>
Mengonversi variabel tahap yang diberikan menjadi string yang dipisahkan koma dari ekspresi pemetaan format `stageVariables.stageVariable`.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

## Contoh
<a name="sam-property-api-lambdarequestauthorizationidentity--examples"></a>

### LambdaRequestIdentity
<a name="sam-property-api-lambdarequestauthorizationidentity--examples--lambdarequestidentity"></a>

#### YAML
<a name="sam-property-api-lambdarequestauthorizationidentity--examples--lambdarequestidentity--yaml"></a>

```
Identity:
  QueryStrings:
    - auth
  Headers:
    - Authorization
  StageVariables:
    - VARIABLE
  Context:
    - authcontext
  ReauthorizeEvery: 100
```