AuthorizationMode Struct
Interface to specify default or additional authorization(s).
Example
ts
import * as appsync from 'aws-cdk-lib/aws-appsync';
const api = new appsync.GraphqlApi(this, 'api', {
name: 'api',
definition: appsync.Definition.fromFile('schema.graphql'),
authorizationConfig: {
defaultAuthorization: { authorizationType: appsync.AuthorizationType.IAM }
},
});
const rule = new events.Rule(this, 'Rule', {
schedule: events.Schedule.rate(cdk.Duration.hours(1)),
});
rule.addTarget(new targets.AppSync(api, {
graphQLOperation: 'mutation Publish($message: String!){ publish(message: $message) { message } }',
variables: events.RuleTargetInput.fromObject({
message: 'hello world',
}),
}));
Properties
apiKeyConfigoptionalApiKeyConfigapi_key_configoptionalApiKeyConfigapiKeyConfigoptionalApiKeyConfigApiKeyConfigoptionalApiKeyConfigApiKeyConfigoptionalApiKeyConfig#If authorizationType is `AuthorizationType.API_KEY`, this option can be configured.
Default: name: 'DefaultAPIKey' | description: 'Default API Key created by CDK'
authorizationTypeAuthorizationTypeauthorization_typeAuthorizationTypeauthorizationTypeAuthorizationTypeAuthorizationTypeAuthorizationTypeAuthorizationTypeAuthorizationType= `AuthorizationType.API_KEY`required#One of possible four values AppSync supports.
lambdaAuthorizerConfigoptionalLambdaAuthorizerConfiglambda_authorizer_configoptionalLambdaAuthorizerConfiglambdaAuthorizerConfigoptionalLambdaAuthorizerConfigLambdaAuthorizerConfigoptionalLambdaAuthorizerConfigLambdaAuthorizerConfigoptionalLambdaAuthorizerConfig= none#If authorizationType is `AuthorizationType.LAMBDA`, this option is required.
openIdConnectConfigoptionalOpenIdConnectConfigopen_id_connect_configoptionalOpenIdConnectConfigopenIdConnectConfigoptionalOpenIdConnectConfigOpenIdConnectConfigoptionalOpenIdConnectConfigOpenIdConnectConfigoptionalOpenIdConnectConfig= none#If authorizationType is `AuthorizationType.OIDC`, this option is required.
userPoolConfigoptionalUserPoolConfiguser_pool_configoptionalUserPoolConfiguserPoolConfigoptionalUserPoolConfigUserPoolConfigoptionalUserPoolConfigUserPoolConfigoptionalUserPoolConfig= none#If authorizationType is `AuthorizationType.USER_POOL`, this option is required.