Skip to content
v2.273.0

AppSyncAuthProvider Struct ​

Auth provider settings for AppSync Event APIs.

Example ​

ts
import * as logs from 'aws-cdk-lib/aws-logs';

const apiKeyProvider: appsync.AppSyncAuthProvider = {
  authorizationType: appsync.AppSyncAuthorizationType.API_KEY,
};

const api = new appsync.EventApi(this, 'api', {
  apiName: 'Api',
  ownerContact: 'OwnerContact',
  authorizationConfig: {
    authProviders: [
      apiKeyProvider,
    ],
    connectionAuthModeTypes: [
      appsync.AppSyncAuthorizationType.API_KEY,
    ],
    defaultPublishAuthModeTypes: [
      appsync.AppSyncAuthorizationType.API_KEY,
    ],
    defaultSubscribeAuthModeTypes: [
      appsync.AppSyncAuthorizationType.API_KEY,
    ],
  },
  logConfig: {
    fieldLogLevel: appsync.AppSyncFieldLogLevel.INFO,
    retention: logs.RetentionDays.ONE_WEEK,
  },
});

api.addChannelNamespace('default');

Properties ​

apiKeyConfigAppSyncApiKeyConfigapi_key_configAppSyncApiKeyConfigapiKeyConfigAppSyncApiKeyConfigApiKeyConfigAppSyncApiKeyConfigApiKeyConfigAppSyncApiKeyConfig= name: 'DefaultAPIKey'#
If authorizationType is `AuthorizationType.API_KEY`, this option can be configured.
authorizationTypeAppSyncAuthorizationTypeauthorization_typeAppSyncAuthorizationTypeauthorizationTypeAppSyncAuthorizationTypeAuthorizationTypeAppSyncAuthorizationTypeAuthorizationTypeAppSyncAuthorizationType= `AuthorizationType.API_KEY`required#
One of possible authorization types AppSync supports.
cognitoConfigAppSyncCognitoConfigcognito_configAppSyncCognitoConfigcognitoConfigAppSyncCognitoConfigCognitoConfigAppSyncCognitoConfigCognitoConfigAppSyncCognitoConfig= none#
If authorizationType is `AuthorizationType.USER_POOL`, this option is required.
lambdaAuthorizerConfigAppSyncLambdaAuthorizerConfiglambda_authorizer_configAppSyncLambdaAuthorizerConfiglambdaAuthorizerConfigAppSyncLambdaAuthorizerConfigLambdaAuthorizerConfigAppSyncLambdaAuthorizerConfigLambdaAuthorizerConfigAppSyncLambdaAuthorizerConfig= none#
If authorizationType is `AuthorizationType.LAMBDA`, this option is required.
openIdConnectConfigAppSyncOpenIdConnectConfigopen_id_connect_configAppSyncOpenIdConnectConfigopenIdConnectConfigAppSyncOpenIdConnectConfigOpenIdConnectConfigAppSyncOpenIdConnectConfigOpenIdConnectConfigAppSyncOpenIdConnectConfig= none#
If authorizationType is `AuthorizationType.OIDC`, this option is required.