/*
* Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.apigatewayv2.model;
import java.io.Serializable;
import javax.annotation.Generated;
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class UpdateAuthorizerResult extends com.amazonaws.AmazonWebServiceResult
* Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM
* role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on
* the Lambda function, don't specify this parameter. Supported only for REQUEST authorizers.
*
* The authorizer identifier.
*
* Specifies the format of the payload sent to an HTTP API Lambda authorizer. Required for HTTP API Lambda
* authorizers. Supported values are 1.0 and 2.0. To learn more, see Working with
* AWS Lambda authorizers for HTTP APIs.
*
* The time to live (TTL) for cached authorizer results, in seconds. If it equals 0, authorization caching is
* disabled. If it is greater than 0, API Gateway caches authorizer responses. The maximum value is 3600, or 1 hour.
* Supported only for HTTP API Lambda authorizers.
*
* The authorizer type. Specify REQUEST for a Lambda function using incoming request parameters. Specify JWT to use
* JSON Web Tokens (supported only for HTTP APIs).
*
* The authorizer's Uniform Resource Identifier (URI). For REQUEST authorizers, this must be a well-formed Lambda
* function URI, for example,
* arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:
*
* Specifies whether a Lambda authorizer returns a response in a simple format. If enabled, the Lambda authorizer
* can return a boolean value instead of an IAM policy. Supported only for HTTP APIs. To learn more, see Working with
* AWS Lambda authorizers for HTTP APIs
*
* The identity source for which authorization is requested.
*
* For a REQUEST authorizer, this is optional. The value is a set of one or more mapping expressions of the
* specified request parameters. The identity source can be headers, query string parameters, stage variables, and
* context parameters. For example, if an Auth header and a Name query string parameter are defined as identity
* sources, this value is route.request.header.Auth, route.request.querystring.Name for WebSocket APIs. For HTTP
* APIs, use selection expressions prefixed with $, for example, $request.header.Auth, $request.querystring.Name.
* These parameters are used to perform runtime validation for Lambda-based authorizers by verifying all of the
* identity-related request parameters are present in the request, not null, and non-empty. Only when this is true
* does the authorizer invoke the authorizer Lambda function. Otherwise, it returns a 401 Unauthorized response
* without calling the Lambda function. For HTTP APIs, identity sources are also used as the cache key when caching
* is enabled. To learn more, see Working with
* AWS Lambda authorizers for HTTP APIs.
*
* For JWT, a single entry that specifies where to extract the JSON Web Token (JWT) from inbound requests. Currently
* only header-based and query parameter-based selections are supported, for example $request.header.Authorization.
*
* The validation expression does not apply to the REQUEST authorizer.
*
* Represents the configuration of a JWT authorizer. Required for the JWT authorizer type. Supported only for HTTP
* APIs.
*
* The name of the authorizer.
*
* Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM
* role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on
* the Lambda function, don't specify this parameter. Supported only for REQUEST authorizers.
*
* Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM
* role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on
* the Lambda function, don't specify this parameter. Supported only for REQUEST authorizers.
*
* Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM
* role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on
* the Lambda function, don't specify this parameter. Supported only for REQUEST authorizers.
*
* The authorizer identifier.
*
* The authorizer identifier.
*
* The authorizer identifier.
*
* Specifies the format of the payload sent to an HTTP API Lambda authorizer. Required for HTTP API Lambda
* authorizers. Supported values are 1.0 and 2.0. To learn more, see Working with
* AWS Lambda authorizers for HTTP APIs.
*
* Specifies the format of the payload sent to an HTTP API Lambda authorizer. Required for HTTP API Lambda
* authorizers. Supported values are 1.0 and 2.0. To learn more, see Working with
* AWS Lambda authorizers for HTTP APIs.
*
* Specifies the format of the payload sent to an HTTP API Lambda authorizer. Required for HTTP API Lambda
* authorizers. Supported values are 1.0 and 2.0. To learn more, see Working with
* AWS Lambda authorizers for HTTP APIs.
*
* The time to live (TTL) for cached authorizer results, in seconds. If it equals 0, authorization caching is
* disabled. If it is greater than 0, API Gateway caches authorizer responses. The maximum value is 3600, or 1 hour.
* Supported only for HTTP API Lambda authorizers.
*
* The time to live (TTL) for cached authorizer results, in seconds. If it equals 0, authorization caching is
* disabled. If it is greater than 0, API Gateway caches authorizer responses. The maximum value is 3600, or 1 hour.
* Supported only for HTTP API Lambda authorizers.
*
* The time to live (TTL) for cached authorizer results, in seconds. If it equals 0, authorization caching is
* disabled. If it is greater than 0, API Gateway caches authorizer responses. The maximum value is 3600, or 1 hour.
* Supported only for HTTP API Lambda authorizers.
*
* The authorizer type. Specify REQUEST for a Lambda function using incoming request parameters. Specify JWT to use
* JSON Web Tokens (supported only for HTTP APIs).
*
* The authorizer type. Specify REQUEST for a Lambda function using incoming request parameters. Specify JWT to use
* JSON Web Tokens (supported only for HTTP APIs).
*
* The authorizer type. Specify REQUEST for a Lambda function using incoming request parameters. Specify JWT to use
* JSON Web Tokens (supported only for HTTP APIs).
*
* The authorizer type. Specify REQUEST for a Lambda function using incoming request parameters. Specify JWT to use
* JSON Web Tokens (supported only for HTTP APIs).
*
* The authorizer's Uniform Resource Identifier (URI). For REQUEST authorizers, this must be a well-formed Lambda
* function URI, for example,
* arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:
*
* The authorizer's Uniform Resource Identifier (URI). For REQUEST authorizers, this must be a well-formed Lambda
* function URI, for example,
* arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:
*
* The authorizer's Uniform Resource Identifier (URI). For REQUEST authorizers, this must be a well-formed Lambda
* function URI, for example,
* arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:
*
* Specifies whether a Lambda authorizer returns a response in a simple format. If enabled, the Lambda authorizer
* can return a boolean value instead of an IAM policy. Supported only for HTTP APIs. To learn more, see Working with
* AWS Lambda authorizers for HTTP APIs
*
* Specifies whether a Lambda authorizer returns a response in a simple format. If enabled, the Lambda authorizer
* can return a boolean value instead of an IAM policy. Supported only for HTTP APIs. To learn more, see Working with
* AWS Lambda authorizers for HTTP APIs
*
* Specifies whether a Lambda authorizer returns a response in a simple format. If enabled, the Lambda authorizer
* can return a boolean value instead of an IAM policy. Supported only for HTTP APIs. To learn more, see Working with
* AWS Lambda authorizers for HTTP APIs
*
* Specifies whether a Lambda authorizer returns a response in a simple format. If enabled, the Lambda authorizer
* can return a boolean value instead of an IAM policy. Supported only for HTTP APIs. To learn more, see Working with
* AWS Lambda authorizers for HTTP APIs
*
* The identity source for which authorization is requested.
*
* For a REQUEST authorizer, this is optional. The value is a set of one or more mapping expressions of the
* specified request parameters. The identity source can be headers, query string parameters, stage variables, and
* context parameters. For example, if an Auth header and a Name query string parameter are defined as identity
* sources, this value is route.request.header.Auth, route.request.querystring.Name for WebSocket APIs. For HTTP
* APIs, use selection expressions prefixed with $, for example, $request.header.Auth, $request.querystring.Name.
* These parameters are used to perform runtime validation for Lambda-based authorizers by verifying all of the
* identity-related request parameters are present in the request, not null, and non-empty. Only when this is true
* does the authorizer invoke the authorizer Lambda function. Otherwise, it returns a 401 Unauthorized response
* without calling the Lambda function. For HTTP APIs, identity sources are also used as the cache key when caching
* is enabled. To learn more, see Working with
* AWS Lambda authorizers for HTTP APIs.
*
* For JWT, a single entry that specifies where to extract the JSON Web Token (JWT) from inbound requests. Currently
* only header-based and query parameter-based selections are supported, for example $request.header.Authorization.
*
* For a REQUEST authorizer, this is optional. The value is a set of one or more mapping expressions of the * specified request parameters. The identity source can be headers, query string parameters, stage * variables, and context parameters. For example, if an Auth header and a Name query string parameter are * defined as identity sources, this value is route.request.header.Auth, route.request.querystring.Name for * WebSocket APIs. For HTTP APIs, use selection expressions prefixed with $, for example, * $request.header.Auth, $request.querystring.Name. These parameters are used to perform runtime validation * for Lambda-based authorizers by verifying all of the identity-related request parameters are present in * the request, not null, and non-empty. Only when this is true does the authorizer invoke the authorizer * Lambda function. Otherwise, it returns a 401 Unauthorized response without calling the Lambda function. * For HTTP APIs, identity sources are also used as the cache key when caching is enabled. To learn more, * see Working with AWS Lambda authorizers for HTTP APIs. *
*
* For JWT, a single entry that specifies where to extract the JSON Web Token (JWT) from inbound requests.
* Currently only header-based and query parameter-based selections are supported, for example
* $request.header.Authorization.
*/
public java.util.List
* The identity source for which authorization is requested.
*
* For a REQUEST authorizer, this is optional. The value is a set of one or more mapping expressions of the
* specified request parameters. The identity source can be headers, query string parameters, stage variables, and
* context parameters. For example, if an Auth header and a Name query string parameter are defined as identity
* sources, this value is route.request.header.Auth, route.request.querystring.Name for WebSocket APIs. For HTTP
* APIs, use selection expressions prefixed with $, for example, $request.header.Auth, $request.querystring.Name.
* These parameters are used to perform runtime validation for Lambda-based authorizers by verifying all of the
* identity-related request parameters are present in the request, not null, and non-empty. Only when this is true
* does the authorizer invoke the authorizer Lambda function. Otherwise, it returns a 401 Unauthorized response
* without calling the Lambda function. For HTTP APIs, identity sources are also used as the cache key when caching
* is enabled. To learn more, see Working with
* AWS Lambda authorizers for HTTP APIs.
*
* For JWT, a single entry that specifies where to extract the JSON Web Token (JWT) from inbound requests. Currently
* only header-based and query parameter-based selections are supported, for example $request.header.Authorization.
*
* For a REQUEST authorizer, this is optional. The value is a set of one or more mapping expressions of the * specified request parameters. The identity source can be headers, query string parameters, stage * variables, and context parameters. For example, if an Auth header and a Name query string parameter are * defined as identity sources, this value is route.request.header.Auth, route.request.querystring.Name for * WebSocket APIs. For HTTP APIs, use selection expressions prefixed with $, for example, * $request.header.Auth, $request.querystring.Name. These parameters are used to perform runtime validation * for Lambda-based authorizers by verifying all of the identity-related request parameters are present in * the request, not null, and non-empty. Only when this is true does the authorizer invoke the authorizer * Lambda function. Otherwise, it returns a 401 Unauthorized response without calling the Lambda function. * For HTTP APIs, identity sources are also used as the cache key when caching is enabled. To learn more, see * * Working with AWS Lambda authorizers for HTTP APIs. *
*
* For JWT, a single entry that specifies where to extract the JSON Web Token (JWT) from inbound requests.
* Currently only header-based and query parameter-based selections are supported, for example
* $request.header.Authorization.
*/
public void setIdentitySource(java.util.Collection
* The identity source for which authorization is requested.
*
* For a REQUEST authorizer, this is optional. The value is a set of one or more mapping expressions of the
* specified request parameters. The identity source can be headers, query string parameters, stage variables, and
* context parameters. For example, if an Auth header and a Name query string parameter are defined as identity
* sources, this value is route.request.header.Auth, route.request.querystring.Name for WebSocket APIs. For HTTP
* APIs, use selection expressions prefixed with $, for example, $request.header.Auth, $request.querystring.Name.
* These parameters are used to perform runtime validation for Lambda-based authorizers by verifying all of the
* identity-related request parameters are present in the request, not null, and non-empty. Only when this is true
* does the authorizer invoke the authorizer Lambda function. Otherwise, it returns a 401 Unauthorized response
* without calling the Lambda function. For HTTP APIs, identity sources are also used as the cache key when caching
* is enabled. To learn more, see Working with
* AWS Lambda authorizers for HTTP APIs.
*
* For JWT, a single entry that specifies where to extract the JSON Web Token (JWT) from inbound requests. Currently
* only header-based and query parameter-based selections are supported, for example $request.header.Authorization.
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setIdentitySource(java.util.Collection)} or {@link #withIdentitySource(java.util.Collection)} if you want
* to override the existing values.
*
* For a REQUEST authorizer, this is optional. The value is a set of one or more mapping expressions of the * specified request parameters. The identity source can be headers, query string parameters, stage * variables, and context parameters. For example, if an Auth header and a Name query string parameter are * defined as identity sources, this value is route.request.header.Auth, route.request.querystring.Name for * WebSocket APIs. For HTTP APIs, use selection expressions prefixed with $, for example, * $request.header.Auth, $request.querystring.Name. These parameters are used to perform runtime validation * for Lambda-based authorizers by verifying all of the identity-related request parameters are present in * the request, not null, and non-empty. Only when this is true does the authorizer invoke the authorizer * Lambda function. Otherwise, it returns a 401 Unauthorized response without calling the Lambda function. * For HTTP APIs, identity sources are also used as the cache key when caching is enabled. To learn more, see * * Working with AWS Lambda authorizers for HTTP APIs. *
*
* For JWT, a single entry that specifies where to extract the JSON Web Token (JWT) from inbound requests.
* Currently only header-based and query parameter-based selections are supported, for example
* $request.header.Authorization.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public UpdateAuthorizerResult withIdentitySource(String... identitySource) {
if (this.identitySource == null) {
setIdentitySource(new java.util.ArrayList
* The identity source for which authorization is requested.
*
* For a REQUEST authorizer, this is optional. The value is a set of one or more mapping expressions of the
* specified request parameters. The identity source can be headers, query string parameters, stage variables, and
* context parameters. For example, if an Auth header and a Name query string parameter are defined as identity
* sources, this value is route.request.header.Auth, route.request.querystring.Name for WebSocket APIs. For HTTP
* APIs, use selection expressions prefixed with $, for example, $request.header.Auth, $request.querystring.Name.
* These parameters are used to perform runtime validation for Lambda-based authorizers by verifying all of the
* identity-related request parameters are present in the request, not null, and non-empty. Only when this is true
* does the authorizer invoke the authorizer Lambda function. Otherwise, it returns a 401 Unauthorized response
* without calling the Lambda function. For HTTP APIs, identity sources are also used as the cache key when caching
* is enabled. To learn more, see Working with
* AWS Lambda authorizers for HTTP APIs.
*
* For JWT, a single entry that specifies where to extract the JSON Web Token (JWT) from inbound requests. Currently
* only header-based and query parameter-based selections are supported, for example $request.header.Authorization.
*
* For a REQUEST authorizer, this is optional. The value is a set of one or more mapping expressions of the * specified request parameters. The identity source can be headers, query string parameters, stage * variables, and context parameters. For example, if an Auth header and a Name query string parameter are * defined as identity sources, this value is route.request.header.Auth, route.request.querystring.Name for * WebSocket APIs. For HTTP APIs, use selection expressions prefixed with $, for example, * $request.header.Auth, $request.querystring.Name. These parameters are used to perform runtime validation * for Lambda-based authorizers by verifying all of the identity-related request parameters are present in * the request, not null, and non-empty. Only when this is true does the authorizer invoke the authorizer * Lambda function. Otherwise, it returns a 401 Unauthorized response without calling the Lambda function. * For HTTP APIs, identity sources are also used as the cache key when caching is enabled. To learn more, see * * Working with AWS Lambda authorizers for HTTP APIs. *
*
* For JWT, a single entry that specifies where to extract the JSON Web Token (JWT) from inbound requests.
* Currently only header-based and query parameter-based selections are supported, for example
* $request.header.Authorization.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public UpdateAuthorizerResult withIdentitySource(java.util.Collection
* The validation expression does not apply to the REQUEST authorizer.
*
* The validation expression does not apply to the REQUEST authorizer.
*
* The validation expression does not apply to the REQUEST authorizer.
*
* Represents the configuration of a JWT authorizer. Required for the JWT authorizer type. Supported only for HTTP
* APIs.
*
* Represents the configuration of a JWT authorizer. Required for the JWT authorizer type. Supported only for HTTP
* APIs.
*
* Represents the configuration of a JWT authorizer. Required for the JWT authorizer type. Supported only for HTTP
* APIs.
*
* The name of the authorizer.
*
* The name of the authorizer.
*
* The name of the authorizer.
*