

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# HttpApiAuth
<a name="sam-property-httpapi-httpapiauth"></a>

配置授权，以控制对 Amazon API Gateway HTTP API 的访问。

有关配置 HTTP 访问权限的更多信息 APIs，请参阅《API Gateway *开发者指南》[中的 API Gateway 中控制和管理对 HTTP](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-access-control.html) API* 的访问权限。

## 语法
<a name="sam-property-httpapi-httpapiauth-syntax"></a>

要在 AWS Serverless Application Model (AWS SAM) 模板中声明此实体，请使用以下语法。

### YAML
<a name="sam-property-httpapi-httpapiauth-syntax.yaml"></a>

```
  [Authorizers](#sam-httpapi-httpapiauth-authorizers): {{OAuth2Authorizer | LambdaAuthorizer}}
  [DefaultAuthorizer](#sam-httpapi-httpapiauth-defaultauthorizer): {{String}}
  [EnableIamAuthorizer](#sam-httpapi-httpapiauth-enableiamauthorizer): {{Boolean}}
```

## Properties
<a name="sam-property-httpapi-httpapiauth-properties"></a>

 `Authorizers`   <a name="sam-httpapi-httpapiauth-authorizers"></a>
用于控制对 API Gateway API 的访问的授权方。  
*类型*：[OAuth2授权者 \| [LambdaAuthorizer](sam-property-httpapi-lambdaauthorizer.md)](sam-property-httpapi-oauth2authorizer.md)  
*必需*：否  
*默认值*：无  
*CloudFormation 兼容性*：此属性是独有的 AWS SAM ，没有 CloudFormation 等效属性。  
*其他说明*： AWS SAM 将授权者添加到 OpenAPI 定义中。

 `DefaultAuthorizer`   <a name="sam-httpapi-httpapiauth-defaultauthorizer"></a>
指定默认授权方，以用于授权对 API Gateway API 的 API 调用。如果 `EnableIamAuthorizer` 设置为 `true`，您可以指定 `AWS_IAM` 作为默认授权方。否则，请指定您在 `Authorizers` 中定义的授权方。  
*类型*：字符串  
*必需*：否  
*默认值*：无  
*CloudFormation 兼容性*：此属性是独有的 AWS SAM ，没有 CloudFormation 等效属性。

 `EnableIamAuthorizer`   <a name="sam-httpapi-httpapiauth-enableiamauthorizer"></a>
指定是否要对 API 路由使用 IAM 授权。  
*类型*：布尔值  
*必需*：否  
*CloudFormation 兼容性*：此属性是独有的 AWS SAM ，没有 CloudFormation 等效属性。

## 示例
<a name="sam-property-httpapi-httpapiauth--examples"></a>

### OAuth 2.0 授权者
<a name="sam-property-httpapi-httpapiauth--examples--oauth-2.0-authorizer"></a>

OAuth 2.0 授权方示例

#### YAML
<a name="sam-property-httpapi-httpapiauth--examples--oauth-2.0-authorizer--yaml"></a>

```
Auth:
  Authorizers:
    OAuth2Authorizer:
      AuthorizationScopes:
        - scope1
        - scope2
      JwtConfiguration:
        issuer: "https://www.example.com/v1/connect/oauth2"
        audience:
          - MyApi
      IdentitySource: "$request.querystring.param"
  DefaultAuthorizer: OAuth2Authorizer
```

### IAM 授权方
<a name="sam-property-httpapi-httpapiauth--examples--iam-authorizer"></a>

IAM 授权方示例

#### YAML
<a name="sam-property-httpapi-httpapiauth--examples--iam-authorizer--yaml"></a>

```
Auth:
  EnableIamAuthorizer: true
  DefaultAuthorizer: AWS_IAM
```