Class CfnConnectorProfile
- All Implemented Interfaces:
IConstruct
,IDependable
,IInspectable
,software.amazon.jsii.JsiiSerializable
,software.constructs.IConstruct
AWS::AppFlow::ConnectorProfile
.
The AWS::AppFlow::ConnectorProfile
resource is an Amazon AppFlow resource type that specifies the configuration profile for an instance of a connector. This includes the provided name, credentials ARN, connection-mode, and so on. The fields that are common to all types of connector profiles are explicitly specified under the Properties
field. The rest of the connector-specific properties are specified under Properties/ConnectorProfileConfig
.
If you want to use AWS CloudFormation to create a connector profile for connectors that implement OAuth (such as Salesforce, Slack, Zendesk, and Google Analytics), you must fetch the access and refresh tokens. You can do this by implementing your own UI for OAuth, or by retrieving the tokens from elsewhere. Alternatively, you can use the Amazon AppFlow console to create the connector profile, and then use that connector profile in the flow creation CloudFormation template.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import software.amazon.awscdk.services.appflow.*; CfnConnectorProfile cfnConnectorProfile = CfnConnectorProfile.Builder.create(this, "MyCfnConnectorProfile") .connectionMode("connectionMode") .connectorProfileName("connectorProfileName") .connectorType("connectorType") // the properties below are optional .connectorLabel("connectorLabel") .connectorProfileConfig(ConnectorProfileConfigProperty.builder() .connectorProfileCredentials(ConnectorProfileCredentialsProperty.builder() .amplitude(AmplitudeConnectorProfileCredentialsProperty.builder() .apiKey("apiKey") .secretKey("secretKey") .build()) .customConnector(CustomConnectorProfileCredentialsProperty.builder() .authenticationType("authenticationType") // the properties below are optional .apiKey(ApiKeyCredentialsProperty.builder() .apiKey("apiKey") // the properties below are optional .apiSecretKey("apiSecretKey") .build()) .basic(BasicAuthCredentialsProperty.builder() .password("password") .username("username") .build()) .custom(CustomAuthCredentialsProperty.builder() .customAuthenticationType("customAuthenticationType") // the properties below are optional .credentialsMap(Map.of( "credentialsMapKey", "credentialsMap")) .build()) .oauth2(OAuth2CredentialsProperty.builder() .accessToken("accessToken") .clientId("clientId") .clientSecret("clientSecret") .oAuthRequest(ConnectorOAuthRequestProperty.builder() .authCode("authCode") .redirectUri("redirectUri") .build()) .refreshToken("refreshToken") .build()) .build()) .datadog(DatadogConnectorProfileCredentialsProperty.builder() .apiKey("apiKey") .applicationKey("applicationKey") .build()) .dynatrace(DynatraceConnectorProfileCredentialsProperty.builder() .apiToken("apiToken") .build()) .googleAnalytics(GoogleAnalyticsConnectorProfileCredentialsProperty.builder() .clientId("clientId") .clientSecret("clientSecret") // the properties below are optional .accessToken("accessToken") .connectorOAuthRequest(ConnectorOAuthRequestProperty.builder() .authCode("authCode") .redirectUri("redirectUri") .build()) .refreshToken("refreshToken") .build()) .inforNexus(InforNexusConnectorProfileCredentialsProperty.builder() .accessKeyId("accessKeyId") .datakey("datakey") .secretAccessKey("secretAccessKey") .userId("userId") .build()) .marketo(MarketoConnectorProfileCredentialsProperty.builder() .clientId("clientId") .clientSecret("clientSecret") // the properties below are optional .accessToken("accessToken") .connectorOAuthRequest(ConnectorOAuthRequestProperty.builder() .authCode("authCode") .redirectUri("redirectUri") .build()) .build()) .pardot(PardotConnectorProfileCredentialsProperty.builder() .accessToken("accessToken") .clientCredentialsArn("clientCredentialsArn") .connectorOAuthRequest(ConnectorOAuthRequestProperty.builder() .authCode("authCode") .redirectUri("redirectUri") .build()) .refreshToken("refreshToken") .build()) .redshift(RedshiftConnectorProfileCredentialsProperty.builder() .password("password") .username("username") .build()) .salesforce(SalesforceConnectorProfileCredentialsProperty.builder() .accessToken("accessToken") .clientCredentialsArn("clientCredentialsArn") .connectorOAuthRequest(ConnectorOAuthRequestProperty.builder() .authCode("authCode") .redirectUri("redirectUri") .build()) .jwtToken("jwtToken") .oAuth2GrantType("oAuth2GrantType") .refreshToken("refreshToken") .build()) .sapoData(SAPODataConnectorProfileCredentialsProperty.builder() .basicAuthCredentials(BasicAuthCredentialsProperty.builder() .password("password") .username("username") .build()) .oAuthCredentials(OAuthCredentialsProperty.builder() .accessToken("accessToken") .clientId("clientId") .clientSecret("clientSecret") .connectorOAuthRequest(ConnectorOAuthRequestProperty.builder() .authCode("authCode") .redirectUri("redirectUri") .build()) .refreshToken("refreshToken") .build()) .build()) .serviceNow(ServiceNowConnectorProfileCredentialsProperty.builder() .password("password") .username("username") .build()) .singular(SingularConnectorProfileCredentialsProperty.builder() .apiKey("apiKey") .build()) .slack(SlackConnectorProfileCredentialsProperty.builder() .clientId("clientId") .clientSecret("clientSecret") // the properties below are optional .accessToken("accessToken") .connectorOAuthRequest(ConnectorOAuthRequestProperty.builder() .authCode("authCode") .redirectUri("redirectUri") .build()) .build()) .snowflake(SnowflakeConnectorProfileCredentialsProperty.builder() .password("password") .username("username") .build()) .trendmicro(TrendmicroConnectorProfileCredentialsProperty.builder() .apiSecretKey("apiSecretKey") .build()) .veeva(VeevaConnectorProfileCredentialsProperty.builder() .password("password") .username("username") .build()) .zendesk(ZendeskConnectorProfileCredentialsProperty.builder() .clientId("clientId") .clientSecret("clientSecret") // the properties below are optional .accessToken("accessToken") .connectorOAuthRequest(ConnectorOAuthRequestProperty.builder() .authCode("authCode") .redirectUri("redirectUri") .build()) .build()) .build()) .connectorProfileProperties(ConnectorProfilePropertiesProperty.builder() .customConnector(CustomConnectorProfilePropertiesProperty.builder() .oAuth2Properties(OAuth2PropertiesProperty.builder() .oAuth2GrantType("oAuth2GrantType") .tokenUrl("tokenUrl") .tokenUrlCustomProperties(Map.of( "tokenUrlCustomPropertiesKey", "tokenUrlCustomProperties")) .build()) .profileProperties(Map.of( "profilePropertiesKey", "profileProperties")) .build()) .datadog(DatadogConnectorProfilePropertiesProperty.builder() .instanceUrl("instanceUrl") .build()) .dynatrace(DynatraceConnectorProfilePropertiesProperty.builder() .instanceUrl("instanceUrl") .build()) .inforNexus(InforNexusConnectorProfilePropertiesProperty.builder() .instanceUrl("instanceUrl") .build()) .marketo(MarketoConnectorProfilePropertiesProperty.builder() .instanceUrl("instanceUrl") .build()) .pardot(PardotConnectorProfilePropertiesProperty.builder() .businessUnitId("businessUnitId") // the properties below are optional .instanceUrl("instanceUrl") .isSandboxEnvironment(false) .build()) .redshift(RedshiftConnectorProfilePropertiesProperty.builder() .bucketName("bucketName") .roleArn("roleArn") // the properties below are optional .bucketPrefix("bucketPrefix") .clusterIdentifier("clusterIdentifier") .dataApiRoleArn("dataApiRoleArn") .databaseName("databaseName") .databaseUrl("databaseUrl") .isRedshiftServerless(false) .workgroupName("workgroupName") .build()) .salesforce(SalesforceConnectorProfilePropertiesProperty.builder() .instanceUrl("instanceUrl") .isSandboxEnvironment(false) .usePrivateLinkForMetadataAndAuthorization(false) .build()) .sapoData(SAPODataConnectorProfilePropertiesProperty.builder() .applicationHostUrl("applicationHostUrl") .applicationServicePath("applicationServicePath") .clientNumber("clientNumber") .logonLanguage("logonLanguage") .oAuthProperties(OAuthPropertiesProperty.builder() .authCodeUrl("authCodeUrl") .oAuthScopes(List.of("oAuthScopes")) .tokenUrl("tokenUrl") .build()) .portNumber(123) .privateLinkServiceName("privateLinkServiceName") .build()) .serviceNow(ServiceNowConnectorProfilePropertiesProperty.builder() .instanceUrl("instanceUrl") .build()) .slack(SlackConnectorProfilePropertiesProperty.builder() .instanceUrl("instanceUrl") .build()) .snowflake(SnowflakeConnectorProfilePropertiesProperty.builder() .bucketName("bucketName") .stage("stage") .warehouse("warehouse") // the properties below are optional .accountName("accountName") .bucketPrefix("bucketPrefix") .privateLinkServiceName("privateLinkServiceName") .region("region") .build()) .veeva(VeevaConnectorProfilePropertiesProperty.builder() .instanceUrl("instanceUrl") .build()) .zendesk(ZendeskConnectorProfilePropertiesProperty.builder() .instanceUrl("instanceUrl") .build()) .build()) .build()) .kmsArn("kmsArn") .build();
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic interface
The connector-specific credentials required when using Amplitude.static interface
The API key credentials required for API key authentication.static interface
The basic auth credentials required for basic authentication.static final class
A fluent builder forCfnConnectorProfile
.static interface
Used by select connectors for which the OAuth workflow is supported, such as Salesforce, Google Analytics, Marketo, Zendesk, and Slack.static interface
Defines the connector-specific configuration and credentials for the connector profile.static interface
The connector-specific credentials required by a connector.static interface
The connector-specific profile properties required by each connector.static interface
The custom credentials required for custom authentication.static interface
The connector-specific profile credentials that are required when using the custom connector.static interface
The profile properties required by the custom connector.static interface
The connector-specific credentials required by Datadog.static interface
The connector-specific profile properties required by Datadog.static interface
The connector-specific profile credentials required by Dynatrace.static interface
The connector-specific profile properties required by Dynatrace.static interface
The connector-specific profile credentials required by Google Analytics.static interface
The connector-specific profile credentials required by Infor Nexus.static interface
The connector-specific profile properties required by Infor Nexus.static interface
The connector-specific profile credentials required by Marketo.static interface
The connector-specific profile properties required when using Marketo.static interface
The OAuth 2.0 credentials required for OAuth 2.0 authentication.static interface
The OAuth 2.0 properties required for OAuth 2.0 authentication.static interface
The OAuth credentials required for OAuth type authentication.static interface
The OAuth properties required for OAuth type authentication.static interface
Example:static interface
Example:static interface
The connector-specific profile credentials required when using Amazon Redshift.static interface
The connector-specific profile properties when using Amazon Redshift.static interface
The connector-specific profile credentials required when using Salesforce.static interface
The connector-specific profile properties required when using Salesforce.static interface
The connector-specific profile credentials required when using SAPOData.static interface
The connector-specific profile properties required when using SAPOData.static interface
The connector-specific profile credentials required when using ServiceNow.static interface
The connector-specific profile properties required when using ServiceNow.static interface
The connector-specific profile credentials required when using Singular.static interface
The connector-specific profile credentials required when using Slack.static interface
The connector-specific profile properties required when using Slack.static interface
The connector-specific profile credentials required when using Snowflake.static interface
The connector-specific profile properties required when using Snowflake.static interface
The connector-specific profile credentials required when using Trend Micro.static interface
The connector-specific profile credentials required when using Veeva.static interface
The connector-specific profile properties required when using Veeva.static interface
The connector-specific profile credentials required when using Zendesk.static interface
The connector-specific profile properties required when using Zendesk.Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationMode
Nested classes/interfaces inherited from interface software.amazon.awscdk.core.IConstruct
IConstruct.Jsii$Default
Nested classes/interfaces inherited from interface software.constructs.IConstruct
software.constructs.IConstruct.Jsii$Default
Nested classes/interfaces inherited from interface software.amazon.awscdk.core.IInspectable
IInspectable.Jsii$Default, IInspectable.Jsii$Proxy
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
The CloudFormation resource type name for this resource class. -
Constructor Summary
ModifierConstructorDescriptionCfnConnectorProfile
(Construct scope, String id, CfnConnectorProfileProps props) Create a newAWS::AppFlow::ConnectorProfile
.protected
CfnConnectorProfile
(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) protected
CfnConnectorProfile
(software.amazon.jsii.JsiiObjectRef objRef) -
Method Summary
Modifier and TypeMethodDescriptionThe Amazon Resource Name (ARN) of the connector profile.The Amazon Resource Name (ARN) of the connector profile credentials.Indicates the connection mode and if it is public or private.The label for the connector profile being created.Defines the connector-specific configuration and credentials.The name of the connector profile.The type of connector, such as Salesforce, Amplitude, and so on.The ARN (Amazon Resource Name) of the Key Management Service (KMS) key you provide for encryption.void
inspect
(TreeInspector inspector) Examines the CloudFormation resource and discloses attributes.renderProperties
(Map<String, Object> props) void
setConnectionMode
(String value) Indicates the connection mode and if it is public or private.void
setConnectorLabel
(String value) The label for the connector profile being created.void
Defines the connector-specific configuration and credentials.void
Defines the connector-specific configuration and credentials.void
setConnectorProfileName
(String value) The name of the connector profile.void
setConnectorType
(String value) The type of connector, such as Salesforce, Amplitude, and so on.void
The ARN (Amazon Resource Name) of the Key Management Service (KMS) key you provide for encryption.Methods inherited from class software.amazon.awscdk.core.CfnResource
addDeletionOverride, addDependsOn, addMetadata, addOverride, addPropertyDeletionOverride, addPropertyOverride, applyRemovalPolicy, applyRemovalPolicy, applyRemovalPolicy, getAtt, getCfnOptions, getCfnResourceType, getMetadata, getUpdatedProperites, isCfnResource, shouldSynthesize, toString, validateProperties
Methods inherited from class software.amazon.awscdk.core.CfnRefElement
getRef
Methods inherited from class software.amazon.awscdk.core.CfnElement
getCreationStack, getLogicalId, getStack, isCfnElement, overrideLogicalId
Methods inherited from class software.amazon.awscdk.core.Construct
getNode, isConstruct, onPrepare, onSynthesize, onValidate, prepare, synthesize, validate
Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Field Details
-
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
-
-
Constructor Details
-
CfnConnectorProfile
protected CfnConnectorProfile(software.amazon.jsii.JsiiObjectRef objRef) -
CfnConnectorProfile
protected CfnConnectorProfile(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) -
CfnConnectorProfile
@Stability(Stable) public CfnConnectorProfile(@NotNull Construct scope, @NotNull String id, @NotNull CfnConnectorProfileProps props) Create a newAWS::AppFlow::ConnectorProfile
.- Parameters:
scope
-- scope in which this resource is defined.
id
-- scoped id of the resource.
props
-- resource properties.
-
-
Method Details
-
inspect
Examines the CloudFormation resource and discloses attributes.- Specified by:
inspect
in interfaceIInspectable
- Parameters:
inspector
-- tree inspector to collect and process attributes.
-
renderProperties
@Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String, Object> props) - Overrides:
renderProperties
in classCfnResource
- Parameters:
props
- This parameter is required.
-
getAttrConnectorProfileArn
The Amazon Resource Name (ARN) of the connector profile. -
getAttrCredentialsArn
The Amazon Resource Name (ARN) of the connector profile credentials. -
getCfnProperties
- Overrides:
getCfnProperties
in classCfnResource
-
getConnectionMode
Indicates the connection mode and if it is public or private. -
setConnectionMode
Indicates the connection mode and if it is public or private. -
getConnectorProfileName
The name of the connector profile.The name is unique for each
ConnectorProfile
in the AWS account . -
setConnectorProfileName
The name of the connector profile.The name is unique for each
ConnectorProfile
in the AWS account . -
getConnectorType
The type of connector, such as Salesforce, Amplitude, and so on. -
setConnectorType
The type of connector, such as Salesforce, Amplitude, and so on. -
getConnectorLabel
The label for the connector profile being created. -
setConnectorLabel
The label for the connector profile being created. -
getConnectorProfileConfig
Defines the connector-specific configuration and credentials. -
setConnectorProfileConfig
Defines the connector-specific configuration and credentials. -
setConnectorProfileConfig
@Stability(Stable) public void setConnectorProfileConfig(@Nullable CfnConnectorProfile.ConnectorProfileConfigProperty value) Defines the connector-specific configuration and credentials. -
getKmsArn
The ARN (Amazon Resource Name) of the Key Management Service (KMS) key you provide for encryption.This is required if you do not want to use the Amazon AppFlow-managed KMS key. If you don't provide anything here, Amazon AppFlow uses the Amazon AppFlow-managed KMS key.
-
setKmsArn
The ARN (Amazon Resource Name) of the Key Management Service (KMS) key you provide for encryption.This is required if you do not want to use the Amazon AppFlow-managed KMS key. If you don't provide anything here, Amazon AppFlow uses the Amazon AppFlow-managed KMS key.
-