in samtranslator/model/apigatewayv2.py [0:0]
def _validate_input_parameters(self) -> None:
authorizer_type = self._get_auth_type()
if self.authorization_scopes is not None and not isinstance(self.authorization_scopes, list):
raise InvalidResourceException(self.api_logical_id, "AuthorizationScopes must be a list.")
if self.authorization_scopes is not None and not authorizer_type == "JWT":
raise InvalidResourceException(
self.api_logical_id, "AuthorizationScopes must be defined only for OAuth2 Authorizer."
)
if self.jwt_configuration is not None and not authorizer_type == "JWT":
raise InvalidResourceException(
self.api_logical_id, "JwtConfiguration must be defined only for OAuth2 Authorizer."
)
if self.id_source is not None and not authorizer_type == "JWT":
raise InvalidResourceException(
self.api_logical_id, "IdentitySource must be defined only for OAuth2 Authorizer."
)
if self.function_arn is not None and not authorizer_type == "REQUEST":
raise InvalidResourceException(
self.api_logical_id, "FunctionArn must be defined only for Lambda Authorizer."
)
if self.function_invoke_role is not None and not authorizer_type == "REQUEST":
raise InvalidResourceException(
self.api_logical_id, "FunctionInvokeRole must be defined only for Lambda Authorizer."
)
if self.identity is not None and not authorizer_type == "REQUEST":
raise InvalidResourceException(self.api_logical_id, "Identity must be defined only for Lambda Authorizer.")
if self.authorizer_payload_format_version is not None and not authorizer_type == "REQUEST":
raise InvalidResourceException(
self.api_logical_id, "AuthorizerPayloadFormatVersion must be defined only for Lambda Authorizer."
)
if self.enable_simple_responses is not None and not authorizer_type == "REQUEST":
raise InvalidResourceException(
self.api_logical_id, "EnableSimpleResponses must be defined only for Lambda Authorizer."
)
if self.enable_function_default_permissions is not None and authorizer_type != "REQUEST":
raise InvalidResourceException(
self.api_logical_id, "EnableFunctionDefaultPermissions must be defined only for Lambda Authorizer."
)