Documentation ¶
Overview ¶
High-level constructs for AWS CDK
Index ¶
- func CodeCommitMirror_IsConstruct(x interface{}) *bool
- func DmarcReporter_IsConstruct(x interface{}) *bool
- func EcsServiceRoller_IsConstruct(x interface{}) *bool
- func EmailReceiver_IsConstruct(x interface{}) *bool
- func MjmlTemplate_IsConstruct(x interface{}) *bool
- func NewCodeCommitMirrorSourceRepository_Override(c CodeCommitMirrorSourceRepository)
- func NewCodeCommitMirror_Override(c CodeCommitMirror, scope constructs.Construct, id *string, ...)
- func NewDmarcReporter_Override(d DmarcReporter, scope constructs.Construct, id *string, ...)
- func NewEcsServiceRoller_Override(e EcsServiceRoller, scope constructs.Construct, id *string, ...)
- func NewEmailReceiver_Override(e EmailReceiver, scope constructs.Construct, id *string, ...)
- func NewMjmlTemplate_Override(m MjmlTemplate, scope constructs.Construct, id *string, ...)
- func NewRollTrigger_Override(r RollTrigger)
- func NewSamlFederatedPrincipal_Override(s SamlFederatedPrincipal, identityProvider SamlIdentityProvider)deprecated
- func NewSamlIdentityProvider_Override(s SamlIdentityProvider, scope constructs.Construct, id *string, ...)deprecated
- func NewSlackAppManifestDefinition_Override(s SlackAppManifestDefinition)
- func NewSlackAppManifest_Override(s SlackAppManifest, props *SlackAppManifestProps)
- func NewSlackApp_Override(s SlackApp, scope constructs.Construct, id *string, props *SlackAppProps)
- func NewSlackEvents_Override(s SlackEvents, scope constructs.Construct, id *string, props *SlackEventsProps)
- func NewSlackTextract_Override(s SlackTextract, scope constructs.Construct, id *string, ...)
- func NewSslServerTest_Override(s SslServerTest, scope constructs.Construct, id *string, ...)
- func NewStateMachineCustomResourceProvider_Override(s StateMachineCustomResourceProvider, scope constructs.Construct, id *string, ...)
- func NewStaticWebsite_Override(s StaticWebsite, scope constructs.Construct, id *string, ...)
- func NewToolkitCleaner_Override(t ToolkitCleaner, scope constructs.Construct, id *string, ...)
- func NewUrlShortener_Override(u UrlShortener, scope constructs.Construct, id *string, ...)
- func SamlIdentityProvider_IsConstruct(x interface{}) *bool
- func SlackApp_IsConstruct(x interface{}) *bool
- func SlackEvents_IsConstruct(x interface{}) *bool
- func SlackTextract_IsConstruct(x interface{}) *bool
- func SslServerTest_IsConstruct(x interface{}) *bool
- func StateMachineCustomResourceProvider_IsConstruct(x interface{}) *bool
- func StaticWebsite_DefaultSecurityHeadersBehavior() *awscloudfront.ResponseSecurityHeadersBehavior
- func StaticWebsite_IsConstruct(x interface{}) *bool
- func StaticWebsite_SetDefaultSecurityHeadersBehavior(val *awscloudfront.ResponseSecurityHeadersBehavior)
- func ToolkitCleaner_IsConstruct(x interface{}) *bool
- func UrlShortener_IsConstruct(x interface{}) *bool
- type CodeCommitMirror
- type CodeCommitMirrorProps
- type CodeCommitMirrorSourceRepository
- type DmarcAlignment
- type DmarcPolicy
- type DmarcReporter
- type DmarcReporterProps
- type EcsServiceRoller
- type EcsServiceRollerProps
- type EmailReceiver
- type EmailReceiverProps
- type IStateMachine
- type MjmlTemplate
- type MjmlTemplateProps
- type RollTrigger
- type SamlFederatedPrincipal
- type SamlIdentityProvider
- type SamlIdentityProviderProps
- type SlackApp
- type SlackAppManifest
- type SlackAppManifestAppHome
- type SlackAppManifestDefinition
- type SlackAppManifestEventSubscriptions
- type SlackAppManifestInteractivity
- type SlackAppManifestOauthConfig
- type SlackAppManifestProps
- type SlackAppManifestSettings
- type SlackAppManifestShortcut
- type SlackAppManifestShortcutType
- type SlackAppManifestSlashCommand
- type SlackAppManifestWorkflowStep
- type SlackAppProps
- type SlackEvents
- type SlackEventsProps
- type SlackTextract
- type SlackTextractProps
- type SlackkAppManifestBotUser
- type SslServerTest
- type SslServerTestGrade
- type SslServerTestProps
- type StateMachineCustomResourceProvider
- type StateMachineCustomResourceProviderProps
- type StaticWebsite
- type StaticWebsiteProps
- type ToolkitCleaner
- type ToolkitCleanerProps
- type UrlShortener
- type UrlShortenerProps
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CodeCommitMirror_IsConstruct ¶
func CodeCommitMirror_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func DmarcReporter_IsConstruct ¶ added in v0.6.32
func DmarcReporter_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func EcsServiceRoller_IsConstruct ¶
func EcsServiceRoller_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func EmailReceiver_IsConstruct ¶
func EmailReceiver_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func MjmlTemplate_IsConstruct ¶ added in v0.9.10
func MjmlTemplate_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func NewCodeCommitMirrorSourceRepository_Override ¶
func NewCodeCommitMirrorSourceRepository_Override(c CodeCommitMirrorSourceRepository)
func NewCodeCommitMirror_Override ¶
func NewCodeCommitMirror_Override(c CodeCommitMirror, scope constructs.Construct, id *string, props *CodeCommitMirrorProps)
func NewDmarcReporter_Override ¶ added in v0.6.32
func NewDmarcReporter_Override(d DmarcReporter, scope constructs.Construct, id *string, props *DmarcReporterProps)
func NewEcsServiceRoller_Override ¶
func NewEcsServiceRoller_Override(e EcsServiceRoller, scope constructs.Construct, id *string, props *EcsServiceRollerProps)
func NewEmailReceiver_Override ¶
func NewEmailReceiver_Override(e EmailReceiver, scope constructs.Construct, id *string, props *EmailReceiverProps)
func NewMjmlTemplate_Override ¶ added in v0.9.10
func NewMjmlTemplate_Override(m MjmlTemplate, scope constructs.Construct, id *string, props *MjmlTemplateProps)
func NewRollTrigger_Override ¶
func NewRollTrigger_Override(r RollTrigger)
func NewSamlFederatedPrincipal_Override
deprecated
func NewSamlFederatedPrincipal_Override(s SamlFederatedPrincipal, identityProvider SamlIdentityProvider)
Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
func NewSamlIdentityProvider_Override
deprecated
func NewSamlIdentityProvider_Override(s SamlIdentityProvider, scope constructs.Construct, id *string, props *SamlIdentityProviderProps)
Deprecated: use `SamlProvider` from `aws-cdk-lib/aws-iam`.
func NewSlackAppManifestDefinition_Override ¶
func NewSlackAppManifestDefinition_Override(s SlackAppManifestDefinition)
func NewSlackAppManifest_Override ¶
func NewSlackAppManifest_Override(s SlackAppManifest, props *SlackAppManifestProps)
func NewSlackApp_Override ¶
func NewSlackApp_Override(s SlackApp, scope constructs.Construct, id *string, props *SlackAppProps)
func NewSlackEvents_Override ¶
func NewSlackEvents_Override(s SlackEvents, scope constructs.Construct, id *string, props *SlackEventsProps)
func NewSlackTextract_Override ¶
func NewSlackTextract_Override(s SlackTextract, scope constructs.Construct, id *string, props *SlackTextractProps)
func NewSslServerTest_Override ¶ added in v0.6.8
func NewSslServerTest_Override(s SslServerTest, scope constructs.Construct, id *string, props *SslServerTestProps)
func NewStateMachineCustomResourceProvider_Override ¶
func NewStateMachineCustomResourceProvider_Override(s StateMachineCustomResourceProvider, scope constructs.Construct, id *string, props *StateMachineCustomResourceProviderProps)
func NewStaticWebsite_Override ¶
func NewStaticWebsite_Override(s StaticWebsite, scope constructs.Construct, id *string, props *StaticWebsiteProps)
func NewToolkitCleaner_Override ¶
func NewToolkitCleaner_Override(t ToolkitCleaner, scope constructs.Construct, id *string, props *ToolkitCleanerProps)
func NewUrlShortener_Override ¶
func NewUrlShortener_Override(u UrlShortener, scope constructs.Construct, id *string, props *UrlShortenerProps)
func SamlIdentityProvider_IsConstruct ¶
func SamlIdentityProvider_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func SlackApp_IsConstruct ¶
func SlackApp_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func SlackEvents_IsConstruct ¶
func SlackEvents_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func SlackTextract_IsConstruct ¶
func SlackTextract_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func SslServerTest_IsConstruct ¶ added in v0.6.8
func SslServerTest_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func StateMachineCustomResourceProvider_IsConstruct ¶
func StateMachineCustomResourceProvider_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func StaticWebsite_DefaultSecurityHeadersBehavior ¶
func StaticWebsite_DefaultSecurityHeadersBehavior() *awscloudfront.ResponseSecurityHeadersBehavior
func StaticWebsite_IsConstruct ¶
func StaticWebsite_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func StaticWebsite_SetDefaultSecurityHeadersBehavior ¶
func StaticWebsite_SetDefaultSecurityHeadersBehavior(val *awscloudfront.ResponseSecurityHeadersBehavior)
func ToolkitCleaner_IsConstruct ¶
func ToolkitCleaner_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func UrlShortener_IsConstruct ¶
func UrlShortener_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
Types ¶
type CodeCommitMirror ¶
type CodeCommitMirror interface { constructs.Construct // The tree node. Node() constructs.Node // Returns a string representation of this construct. ToString() *string }
Mirror a repository to AWS CodeCommit on schedule.
func NewCodeCommitMirror ¶
func NewCodeCommitMirror(scope constructs.Construct, id *string, props *CodeCommitMirrorProps) CodeCommitMirror
type CodeCommitMirrorProps ¶
type CodeCommitMirrorProps struct { // The ECS cluster where to run the mirroring operation. Cluster awsecs.ICluster `field:"required" json:"cluster" yaml:"cluster"` // The source repository. Repository CodeCommitMirrorSourceRepository `field:"required" json:"repository" yaml:"repository"` // The schedule for the mirroring operation. // Default: - everyday at midnight. // Schedule awsevents.Schedule `field:"optional" json:"schedule" yaml:"schedule"` // Where to run the mirroring Fargate tasks. // Default: - public subnets. // SubnetSelection *awsec2.SubnetSelection `field:"optional" json:"subnetSelection" yaml:"subnetSelection"` }
Properties for a CodeCommitMirror.
type CodeCommitMirrorSourceRepository ¶
type CodeCommitMirrorSourceRepository interface { // The name of the repository. Name() *string // The HTTPS clone URL in plain text, used for a public repository. PlainTextUrl() *string // The HTTPS clone URL if the repository is private. // // The secret should contain the username and/or token. // // Example: // `https://TOKEN@github.com/owner/name` // `https://USERNAME:TOKEN@bitbucket.org/owner/name.git` // SecretUrl() awsecs.Secret }
A source repository for AWS CodeCommit mirroring.
func CodeCommitMirrorSourceRepository_GitHub ¶
func CodeCommitMirrorSourceRepository_GitHub(owner *string, name *string) CodeCommitMirrorSourceRepository
Public GitHub repository.
func CodeCommitMirrorSourceRepository_Private ¶
func CodeCommitMirrorSourceRepository_Private(name *string, url awsecs.Secret) CodeCommitMirrorSourceRepository
Private repository with HTTPS clone URL stored in a AWS Secrets Manager secret or a AWS Systems Manager secure string parameter.
type DmarcAlignment ¶ added in v0.6.32
type DmarcAlignment string
The DMARC alignment mode.
const ( // Relaxed alignment mode. DmarcAlignment_RELAXED DmarcAlignment = "RELAXED" // Strict alignment mode. DmarcAlignment_STRICT DmarcAlignment = "STRICT" )
type DmarcPolicy ¶ added in v0.6.32
type DmarcPolicy string
The DMARC policy to apply to messages that fail DMARC compliance.
const ( // Do not apply any special handling to messages that fail DMARC compliance. DmarcPolicy_NONE DmarcPolicy = "NONE" // Quarantine messages that fail DMARC compliance. // // (usually by sending them to spam). DmarcPolicy_QUARANTINE DmarcPolicy = "QUARANTINE" // Reject messages that fail DMARC compliance. // // (usually by rejecting them outright). DmarcPolicy_REJECT DmarcPolicy = "REJECT" )
type DmarcReporter ¶ added in v0.6.32
type DmarcReporter interface { constructs.Construct // The tree node. Node() constructs.Node // Returns a string representation of this construct. ToString() *string }
Creates a DMARC record in Route 53 and invokes a Lambda function to process incoming reports.
func NewDmarcReporter ¶ added in v0.6.32
func NewDmarcReporter(scope constructs.Construct, id *string, props *DmarcReporterProps) DmarcReporter
type DmarcReporterProps ¶ added in v0.6.32
type DmarcReporterProps struct { // The DMARC policy to apply to messages that fail DMARC compliance. // // This can be one of the following values: // - none: Do not apply any special handling to messages that fail DMARC compliance. // - quarantine: Quarantine messages that fail DMARC compliance. // - reject: Reject messages that fail DMARC compliance. DmarcPolicy DmarcPolicy `field:"required" json:"dmarcPolicy" yaml:"dmarcPolicy"` // A Lambda function to invoke after the message is saved to S3. // // The Lambda // function will be invoked with a SESMessage as event. Function awslambda.IFunction `field:"required" json:"function" yaml:"function"` // The Route 53 hosted zone to create the DMARC record in. HostedZone awsroute53.IHostedZone `field:"required" json:"hostedZone" yaml:"hostedZone"` // The SES receipt rule set where a receipt rule will be added. ReceiptRuleSet awsses.IReceiptRuleSet `field:"required" json:"receiptRuleSet" yaml:"receiptRuleSet"` // Additional email addresses to send DMARC reports to. AdditionalEmailAddresses *[]*string `field:"optional" json:"additionalEmailAddresses" yaml:"additionalEmailAddresses"` // An existing rule after which the new rule will be placed in the rule set. // Default: - The new rule is inserted at the beginning of the rule list. // AfterRule awsses.IReceiptRule `field:"optional" json:"afterRule" yaml:"afterRule"` // The alignment mode to use for DKIM signatures. // // This can be one of the following values: // - relaxed: Use relaxed alignment mode. // - strict: Use strict alignment mode. // Default: relaxed. // DmarcDkimAlignment DmarcAlignment `field:"optional" json:"dmarcDkimAlignment" yaml:"dmarcDkimAlignment"` // The percentage of messages that should be checked for DMARC compliance. // // This is a value between 0 and 100. // Default: 100. // DmarcPercentage *float64 `field:"optional" json:"dmarcPercentage" yaml:"dmarcPercentage"` // The alignment mode to use for SPF signatures. // // This can be one of the following values: // - relaxed: Use relaxed alignment mode. // - strict: Use strict alignment mode. // Default: relaxed. // DmarcSpfAlignment DmarcAlignment `field:"optional" json:"dmarcSpfAlignment" yaml:"dmarcSpfAlignment"` // The DMARC policy to apply to messages that fail DMARC compliance for subdomains. // // This can be one of the following values: // - none: Do not apply any special handling to messages that fail DMARC compliance. // - quarantine: Quarantine messages that fail DMARC compliance. // - reject: Reject messages that fail DMARC compliance. // Default: inherited from dmarcPolicy. // DmarcSubdomainPolicy DmarcPolicy `field:"optional" json:"dmarcSubdomainPolicy" yaml:"dmarcSubdomainPolicy"` // The email address to send DMARC reports to. // // This email address must be verified in SES. // Default: dmarc-reports@${hostedZone.zoneName} // EmailAddress *string `field:"optional" json:"emailAddress" yaml:"emailAddress"` }
Properties for a DmarcReporter.
type EcsServiceRoller ¶
type EcsServiceRoller interface { constructs.Construct // The tree node. Node() constructs.Node // Returns a string representation of this construct. ToString() *string }
Roll your ECS service tasks on schedule or with a rule.
func NewEcsServiceRoller ¶
func NewEcsServiceRoller(scope constructs.Construct, id *string, props *EcsServiceRollerProps) EcsServiceRoller
type EcsServiceRollerProps ¶
type EcsServiceRollerProps struct { // The ECS cluster where the services run. Cluster awsecs.ICluster `field:"required" json:"cluster" yaml:"cluster"` // The ECS service for which tasks should be rolled. Service awsecs.IService `field:"required" json:"service" yaml:"service"` // The rule or schedule that should trigger a roll. // Default: - roll everyday at midnight. // Trigger RollTrigger `field:"optional" json:"trigger" yaml:"trigger"` }
Properties for a EcsServiceRoller.
type EmailReceiver ¶
type EmailReceiver interface { constructs.Construct // The tree node. Node() constructs.Node // Returns a string representation of this construct. ToString() *string }
Receive emails through SES, save them to S3 and invokes a Lambda function.
func NewEmailReceiver ¶
func NewEmailReceiver(scope constructs.Construct, id *string, props *EmailReceiverProps) EmailReceiver
type EmailReceiverProps ¶
type EmailReceiverProps struct { // A Lambda function to invoke after the message is saved to S3. // // The Lambda // function will be invoked with a SESMessage as event. Function awslambda.IFunction `field:"required" json:"function" yaml:"function"` // The SES receipt rule set where a receipt rule will be added. ReceiptRuleSet awsses.IReceiptRuleSet `field:"required" json:"receiptRuleSet" yaml:"receiptRuleSet"` // The recipients for which emails should be received. Recipients *[]*string `field:"required" json:"recipients" yaml:"recipients"` // An existing rule after which the new rule will be placed in the rule set. // Default: - The new rule is inserted at the beginning of the rule list. // AfterRule awsses.IReceiptRule `field:"optional" json:"afterRule" yaml:"afterRule"` // Whether the receiver is active. // Default: true. // Enabled *bool `field:"optional" json:"enabled" yaml:"enabled"` // A regular expression to whitelist source email addresses. // Default: - no whitelisting of source email addresses. // SourceWhitelist *string `field:"optional" json:"sourceWhitelist" yaml:"sourceWhitelist"` }
Properties for an EmailReceiver.
type IStateMachine ¶
type IStateMachine interface { // The ARN of the state machine. StateMachineArn() *string }
A State Machine.
type MjmlTemplate ¶ added in v0.9.10
type MjmlTemplate interface { constructs.Construct // The tree node. Node() constructs.Node // The name of the template. TemplateName() *string // Returns a string representation of this construct. ToString() *string }
SES email template from [MJML](https://mjml.io/).
func NewMjmlTemplate ¶ added in v0.9.10
func NewMjmlTemplate(scope constructs.Construct, id *string, props *MjmlTemplateProps) MjmlTemplate
type MjmlTemplateProps ¶ added in v0.9.10
type MjmlTemplateProps struct { // The MJML for the email. Mjml *string `field:"required" json:"mjml" yaml:"mjml"` // The subject line of the email. Subject *string `field:"required" json:"subject" yaml:"subject"` // The name of the template. // Default: - a CloudFormation generated name. // TemplateName *string `field:"optional" json:"templateName" yaml:"templateName"` }
Properties for a MjmlTemplate.
type RollTrigger ¶
type RollTrigger interface { // Roll rule. // Default: - roll everyday at midnight. // Rule() awsevents.Rule // Roll schedule. // Default: - roll everyday at midnight. // Schedule() awsevents.Schedule }
The rule or schedule that should trigger a roll.
func RollTrigger_FromRule ¶
func RollTrigger_FromRule(rule awsevents.Rule) RollTrigger
Rule that should trigger a roll.
func RollTrigger_FromSchedule ¶
func RollTrigger_FromSchedule(schedule awsevents.Schedule) RollTrigger
Schedule that should trigger a roll.
type SamlFederatedPrincipal ¶
type SamlFederatedPrincipal interface { awsiam.FederatedPrincipal // When this Principal is used in an AssumeRole policy, the action to use. // Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`. AssumeRoleAction() *string // The conditions under which the policy is in effect. // See: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html // // Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`. Conditions() *map[string]interface{} // federated identity provider (i.e. 'cognito-identity.amazonaws.com' for users authenticated through Cognito). // Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`. Federated() *string // The principal to grant permissions to. // Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`. GrantPrincipal() awsiam.IPrincipal // Return the policy fragment that identifies this principal in a Policy. // Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`. PolicyFragment() awsiam.PrincipalPolicyFragment // The AWS account ID of this principal. // // Can be undefined when the account is not known // (for example, for service principals). // Can be a Token - in that case, // it's assumed to be AWS::AccountId. // Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`. PrincipalAccount() *string // Add the principal to the AssumeRolePolicyDocument. // // Add the statements to the AssumeRolePolicyDocument necessary to give this principal // permissions to assume the given role. // Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`. AddToAssumeRolePolicy(document awsiam.PolicyDocument) // Add to the policy of this principal. // Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`. AddToPolicy(statement awsiam.PolicyStatement) *bool // Add to the policy of this principal. // Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`. AddToPrincipalPolicy(_statement awsiam.PolicyStatement) *awsiam.AddToPrincipalPolicyResult // Return whether or not this principal is equal to the given principal. // Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`. DedupeString() *string // JSON-ify the principal. // // Used when JSON.stringify() is called // Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`. ToJSON() *map[string]*[]*string // Returns a string representation of an object. // Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`. ToString() *string // Returns a new PrincipalWithConditions using this principal as the base, with the passed conditions added. // // When there is a value for the same operator and key in both the principal and the // conditions parameter, the value from the conditions parameter will be used. // // Returns: a new PrincipalWithConditions object. // Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`. WithConditions(conditions *map[string]interface{}) awsiam.PrincipalBase // Returns a new principal using this principal as the base, with session tags enabled. // // Returns: a new SessionTagsPrincipal object. // Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`. WithSessionTags() awsiam.PrincipalBase }
Principal entity that represents a SAML federated identity provider. Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
func NewSamlFederatedPrincipal
deprecated
func NewSamlFederatedPrincipal(identityProvider SamlIdentityProvider) SamlFederatedPrincipal
Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
type SamlIdentityProvider ¶
type SamlIdentityProvider interface { constructs.Construct // The tree node. // Deprecated: use `SamlProvider` from `aws-cdk-lib/aws-iam`. Node() constructs.Node // The ARN of the SAML identity provider. // Deprecated: use `SamlProvider` from `aws-cdk-lib/aws-iam`. SamlIdentityProviderArn() *string // Returns a string representation of this construct. // Deprecated: use `SamlProvider` from `aws-cdk-lib/aws-iam`. ToString() *string }
Create a SAML identity provider. Deprecated: use `SamlProvider` from `aws-cdk-lib/aws-iam`.
func NewSamlIdentityProvider
deprecated
func NewSamlIdentityProvider(scope constructs.Construct, id *string, props *SamlIdentityProviderProps) SamlIdentityProvider
Deprecated: use `SamlProvider` from `aws-cdk-lib/aws-iam`.
type SamlIdentityProviderProps ¶
type SamlIdentityProviderProps struct { // An XML document generated by an identity provider (IdP) that supports SAML 2.0. // // The document includes the issuer's name, expiration information, and keys that // can be used to validate the SAML authentication response (assertions) that are // received from the IdP. You must generate the metadata document using the identity // management software that is used as your organization's IdP. // Deprecated: use `SamlProviderProps` from `aws-cdk-lib/aws-iam`. MetadataDocument *string `field:"required" json:"metadataDocument" yaml:"metadataDocument"` // A name for the SAML identity provider. // Default: - derived for the node's unique id. // // Deprecated: use `SamlProviderProps` from `aws-cdk-lib/aws-iam`. Name *string `field:"optional" json:"name" yaml:"name"` }
Properties for a SamlProvider. Deprecated: use `SamlProviderProps` from `aws-cdk-lib/aws-iam`.
type SlackApp ¶
type SlackApp interface { constructs.Construct // The ID of the application. AppId() *string // A dynamic reference to the client ID of the app. ClientId() *string // A dynamic reference to the client secret of the app. ClientSecret() *string // An AWS Secrets Manager secret containing the credentials of the application. // // “` // { // "appId": "...", // "clientId": "...", // "clientSecret": "...", // "verificationToken": "...", // "signingSecret": "..." // } // “`. Credentials() awssecretsmanager.ISecret // The tree node. Node() constructs.Node // A dynamic reference to the signing secret of the app. SigningSecret() *string // A dynamic reference to the verification token of the app. VerificationToken() *string // Returns a string representation of this construct. ToString() *string }
A Slack application deployed with a manifest. See: https://api.slack.com/reference/manifests
func NewSlackApp ¶
func NewSlackApp(scope constructs.Construct, id *string, props *SlackAppProps) SlackApp
type SlackAppManifest ¶
type SlackAppManifest interface {
Render(construct constructs.IConstruct) *string
}
A Slack app manifest. See: https://api.slack.com/reference/manifests
func NewSlackAppManifest ¶
func NewSlackAppManifest(props *SlackAppManifestProps) SlackAppManifest
type SlackAppManifestAppHome ¶
type SlackAppManifestAppHome struct { // Wether the Home tab is enabled. // Default: false. // HomeTab *bool `field:"optional" json:"homeTab" yaml:"homeTab"` // Wether the Messages is enabled. // Default: false. // MessagesTab *bool `field:"optional" json:"messagesTab" yaml:"messagesTab"` // Whether the users can send messages to your app in the Messages tab of your App Home. // Default: false. // MessagesTabReadOnly *bool `field:"optional" json:"messagesTabReadOnly" yaml:"messagesTabReadOnly"` }
App Home configuration. See: https://api.slack.com/surfaces/tabs
type SlackAppManifestDefinition ¶
type SlackAppManifestDefinition interface { // Renders the JSON app manifest encoded as a string. Render(construct constructs.IConstruct) *string }
A Slack app manifest definition.
func SlackAppManifestDefinition_FromFile ¶
func SlackAppManifestDefinition_FromFile(file *string) SlackAppManifestDefinition
Creates a Slack app manifest from a file containg a JSON app manifest.
func SlackAppManifestDefinition_FromManifest ¶
func SlackAppManifestDefinition_FromManifest(props *SlackAppManifestProps) SlackAppManifestDefinition
Creates a Slack app manifest by specifying properties.
func SlackAppManifestDefinition_FromString ¶
func SlackAppManifestDefinition_FromString(manifest *string) SlackAppManifestDefinition
Create a Slack app manifest from a JSON app manifest encoded as a string.
type SlackAppManifestEventSubscriptions ¶
type SlackAppManifestEventSubscriptions struct { // The full https URL that acts as the Events API request URL. // See: https://api.slack.com/events-api#the-events-api__subscribing-to-event-types__events-api-request-urls // RequestUrl *string `field:"required" json:"requestUrl" yaml:"requestUrl"` // Event types you want the app to subscribe to. // // A maximum of 100 event types can be used. // See: https://api.slack.com/events // BotEvents *[]*string `field:"optional" json:"botEvents" yaml:"botEvents"` // Event types you want the app to subscribe to on behalf of authorized users. // // A maximum of 100 event types can be used. UserEvents *[]*string `field:"optional" json:"userEvents" yaml:"userEvents"` }
Events API configuration for the app. See: https://api.slack.com/events-api
type SlackAppManifestInteractivity ¶
type SlackAppManifestInteractivity struct { // Whether or not interactivity features are enabled. // Default: true. // Enabled *bool `field:"optional" json:"enabled" yaml:"enabled"` // The full https URL that acts as th interactive Options Load URL. MessageMenuOptionsUrl *string `field:"optional" json:"messageMenuOptionsUrl" yaml:"messageMenuOptionsUrl"` // The full https URL that acts as the interactive Request URL. RequestUrl *string `field:"optional" json:"requestUrl" yaml:"requestUrl"` }
Interactivity configuration for the app. See: https://api.slack.com/interactivity/handling#setup
type SlackAppManifestOauthConfig ¶
type SlackAppManifestOauthConfig struct { // Bot scopes to request upon app installation. // // A maximum of 255 scopes can be included. // See: https://api.slack.com/scopes // BotScopes *[]*string `field:"optional" json:"botScopes" yaml:"botScopes"` // OAuth redirect URLs. // // A maximum of 1000 redirect URLs can be included. // See: https://api.slack.com/authentication/oauth-v2#redirect_urls // RedirectUrls *[]*string `field:"optional" json:"redirectUrls" yaml:"redirectUrls"` // User scopes to request upon app installation. // // A maximum of 255 scopes can be included. // See: https://api.slack.com/scopes // UserScopes *[]*string `field:"optional" json:"userScopes" yaml:"userScopes"` }
OAuth configuration for the app.
type SlackAppManifestProps ¶
type SlackAppManifestProps struct { // The name of the app. // // Maximum length is 35 characters. Name *string `field:"required" json:"name" yaml:"name"` // An array of IP addresses that conform to the Allowed IP Ranges feature. // See: https://api.slack.com/authentication/best-practices#ip_allowlisting // AllowedIpAddressRanges *[]*string `field:"optional" json:"allowedIpAddressRanges" yaml:"allowedIpAddressRanges"` // App Home configuration. // See: https://api.slack.com/surfaces/tabs // AppHome *SlackAppManifestAppHome `field:"optional" json:"appHome" yaml:"appHome"` // A hex color value that specifies the background color used on hovercards that display information about your app. // // Can be 3-digit (#000) or 6-digit (#000000) hex values with or without #. BackgroundColor *string `field:"optional" json:"backgroundColor" yaml:"backgroundColor"` // Bot user configuration. // See: https://api.slack.com/bot-users // BotUser *SlackkAppManifestBotUser `field:"optional" json:"botUser" yaml:"botUser"` // A short description of the app for display to users. // // Maximum length is 140 characters. // Default: - no short description. // Description *string `field:"optional" json:"description" yaml:"description"` // Events API configuration for the app. // See: https://api.slack.com/events-api // EventSubscriptions *SlackAppManifestEventSubscriptions `field:"optional" json:"eventSubscriptions" yaml:"eventSubscriptions"` // Interactivity configuration for the app. Interactivity *SlackAppManifestInteractivity `field:"optional" json:"interactivity" yaml:"interactivity"` // A longer version of the description of the app. // // Maximum length is 4000 characters. LongDescription *string `field:"optional" json:"longDescription" yaml:"longDescription"` // The major version of the manifest schema to target. // Default: - do not target a specific major version. // MajorVersion *float64 `field:"optional" json:"majorVersion" yaml:"majorVersion"` // The minor version of the manifest schema to target. // Default: - do not target a specific minor version. // MinorVersion *float64 `field:"optional" json:"minorVersion" yaml:"minorVersion"` // OAuth configuration for the app. OauthConfig *SlackAppManifestOauthConfig `field:"optional" json:"oauthConfig" yaml:"oauthConfig"` // Whether org-wide deploy is enabled. // See: https://api.slack.com/enterprise/apps // // Default: false. // OrgDeploy *bool `field:"optional" json:"orgDeploy" yaml:"orgDeploy"` // Shortcuts configuration. // // A maximum of 5 shortcuts can be included. // See: https://api.slack.com/interactivity/shortcuts // Shortcuts *[]*SlackAppManifestShortcut `field:"optional" json:"shortcuts" yaml:"shortcuts"` // Slash commands configuration. // // A maximum of 5 slash commands can be included. // See: https://api.slack.com/interactivity/slash-commands // SlashCommands *[]*SlackAppManifestSlashCommand `field:"optional" json:"slashCommands" yaml:"slashCommands"` // Whether Socket Mode is enabled. // See: https://api.slack.com/apis/connections/socket // // Default: false. // SocketMode *bool `field:"optional" json:"socketMode" yaml:"socketMode"` // Valid unfurl domains to register. // // A maximum of 5 unfurl domains can be included. // See: https://api.slack.com/reference/messaging/link-unfurling#configuring_domains // UnfurlDomains *[]*string `field:"optional" json:"unfurlDomains" yaml:"unfurlDomains"` // Workflow steps. // // A maximum of 10 workflow steps can be included. // See: https://api.slack.com/workflows/steps // WorkflowSteps *[]*SlackAppManifestWorkflowStep `field:"optional" json:"workflowSteps" yaml:"workflowSteps"` }
Properties for a Slack app manifest. See: https://api.slack.com/reference/manifests
type SlackAppManifestSettings ¶
type SlackAppManifestSettings struct { // An array of IP addresses that conform to the Allowed IP Ranges feature. // See: https://api.slack.com/authentication/best-practices#ip_allowlisting // AllowedIpAddressRanges *[]*string `field:"optional" json:"allowedIpAddressRanges" yaml:"allowedIpAddressRanges"` // Events API configuration for the app. // See: https://api.slack.com/events-api // EventSubscriptions *SlackAppManifestEventSubscriptions `field:"optional" json:"eventSubscriptions" yaml:"eventSubscriptions"` // Interactivity configuration for the app. Interactivity *SlackAppManifestInteractivity `field:"optional" json:"interactivity" yaml:"interactivity"` // Whether org-wide deploy is enabled. // See: https://api.slack.com/enterprise/apps // // Default: false. // OrgDeploy *bool `field:"optional" json:"orgDeploy" yaml:"orgDeploy"` // Whether Socket Mode is enabled. // See: https://api.slack.com/apis/connections/socket // // Default: false. // SocketMode *bool `field:"optional" json:"socketMode" yaml:"socketMode"` }
Settings section of the app config pages.
type SlackAppManifestShortcut ¶
type SlackAppManifestShortcut struct { // The callback ID of the shortcut. // // Maximum length is 255 characters. CallbackId *string `field:"required" json:"callbackId" yaml:"callbackId"` // A short description of the shortcut. // // Maximum length is 150 characters. Description *string `field:"required" json:"description" yaml:"description"` // The name of the shortcut. Name *string `field:"required" json:"name" yaml:"name"` // The type of shortcut. // See: https://api.slack.com/interactivity/shortcuts // Type SlackAppManifestShortcutType `field:"required" json:"type" yaml:"type"` }
Shortcut configuration. See: https://api.slack.com/interactivity/shortcuts
type SlackAppManifestShortcutType ¶
type SlackAppManifestShortcutType string
Type of shortcuts. See: https://api.slack.com/interactivity/shortcuts
const ( // Message shortcuts are shown to users in the context menus of messages within Slack. // See: https://api.slack.com/interactivity/shortcuts/using#message_shortcuts // SlackAppManifestShortcutType_MESSAGE SlackAppManifestShortcutType = "MESSAGE" // Global shortcuts are available to users via the shortcuts button in the composer, and when using search in Slack. // See: https://api.slack.com/interactivity/shortcuts/using#global_shortcuts // SlackAppManifestShortcutType_GLOBAL SlackAppManifestShortcutType = "GLOBAL" )
type SlackAppManifestSlashCommand ¶
type SlackAppManifestSlashCommand struct { // The actual slash command. // // Maximum length is 32 characters. Command *string `field:"required" json:"command" yaml:"command"` // The description of the slash command. // // Maximum length is 2000 characters. Description *string `field:"required" json:"description" yaml:"description"` // Whether channels, users, and links typed with the slash command should be escaped. // Default: false. // ShouldEscape *bool `field:"optional" json:"shouldEscape" yaml:"shouldEscape"` // The full https URL that acts as the slash command's request URL. // See: https://api.slack.com/interactivity/slash-commands#creating_commands // Url *string `field:"optional" json:"url" yaml:"url"` // The short usage hint about the slash command for users. // // Maximum length is 1000 characters. UsageHint *string `field:"optional" json:"usageHint" yaml:"usageHint"` }
Slash command configuration. See: https://api.slack.com/interactivity/slash-commands
type SlackAppManifestWorkflowStep ¶
type SlackAppManifestWorkflowStep struct { // The callback ID of the workflow step. // // Maximum length of 50 characters. CallbackId *string `field:"required" json:"callbackId" yaml:"callbackId"` // The name of the workflow step. // // Maximum length of 50 characters. Name *string `field:"required" json:"name" yaml:"name"` }
Workflow step. See: https://api.slack.com/workflows/steps
type SlackAppProps ¶
type SlackAppProps struct { // An AWS Secrets Manager secret containing the app configuration token. // // Must use the following JSON format: // // “` // { // "refreshToken": "<token>" // } // “`. ConfigurationTokenSecret awssecretsmanager.ISecret `field:"required" json:"configurationTokenSecret" yaml:"configurationTokenSecret"` // The definition of the app manifest. // See: https://api.slack.com/reference/manifests // Manifest SlackAppManifestDefinition `field:"required" json:"manifest" yaml:"manifest"` // The AWS Secrets Manager secret where to store the app credentials. // Default: - a new secret is created. // CredentialsSecret awssecretsmanager.ISecret `field:"optional" json:"credentialsSecret" yaml:"credentialsSecret"` }
Properties for a SlackApp.
type SlackEvents ¶
type SlackEvents interface { constructs.Construct // The custom event bus where Slack events are sent. EventBus() awsevents.EventBus // The tree node. Node() constructs.Node // Returns a string representation of this construct. ToString() *string }
Send Slack events to Amazon EventBridge.
func NewSlackEvents ¶
func NewSlackEvents(scope constructs.Construct, id *string, props *SlackEventsProps) SlackEvents
type SlackEventsProps ¶
type SlackEventsProps struct { // The signing secret of the Slack app. SigningSecret awscdk.SecretValue `field:"required" json:"signingSecret" yaml:"signingSecret"` // A name for the API Gateway resource. // Default: SlackEventsApi. // ApiName *string `field:"optional" json:"apiName" yaml:"apiName"` // Whether to use a custom event bus. // Default: false. // CustomEventBus *bool `field:"optional" json:"customEventBus" yaml:"customEventBus"` }
Properties for a SlackEvents.
type SlackTextract ¶
type SlackTextract interface { constructs.Construct // The tree node. Node() constructs.Node // Returns a string representation of this construct. ToString() *string }
Extract text from images posted to Slack using Amazon Textract.
func NewSlackTextract ¶
func NewSlackTextract(scope constructs.Construct, id *string, props *SlackTextractProps) SlackTextract
type SlackTextractProps ¶
type SlackTextractProps struct { // The application id of the Slack app. AppId *string `field:"required" json:"appId" yaml:"appId"` // The **bot** token of the Slack app. // // The following scopes are required: `chat:write` and `files:read`. BotToken awscdk.SecretValue `field:"required" json:"botToken" yaml:"botToken"` // The signing secret of the Slack app. SigningSecret awscdk.SecretValue `field:"required" json:"signingSecret" yaml:"signingSecret"` }
Properties for a SlackTextract.
type SlackkAppManifestBotUser ¶
type SlackkAppManifestBotUser struct { // The display name of the bot user. // // Maximum length is 80 characters. DisplayName *string `field:"required" json:"displayName" yaml:"displayName"` // Whether the bot user will always appear to be online. // Default: false. // AlwaysOnline *bool `field:"optional" json:"alwaysOnline" yaml:"alwaysOnline"` }
Bot user configuration. See: https://api.slack.com/bot-users
type SslServerTest ¶ added in v0.6.8
type SslServerTest interface { constructs.Construct // The topic to which the SSL test results are sent when the grade is below the minimum grade. AlarmTopic() awssns.ITopic // The tree node. Node() constructs.Node // Returns a string representation of this construct. ToString() *string }
Perform SSL server test for a hostname.
func NewSslServerTest ¶ added in v0.6.8
func NewSslServerTest(scope constructs.Construct, id *string, props *SslServerTestProps) SslServerTest
type SslServerTestGrade ¶ added in v0.6.8
type SslServerTestGrade string
SSL Server test grade.
const ( SslServerTestGrade_A_PLUS SslServerTestGrade = "A_PLUS" SslServerTestGrade_A SslServerTestGrade = "A" SslServerTestGrade_A_MINUS SslServerTestGrade = "A_MINUS" SslServerTestGrade_B SslServerTestGrade = "B" SslServerTestGrade_C SslServerTestGrade = "C" SslServerTestGrade_D SslServerTestGrade = "D" SslServerTestGrade_E SslServerTestGrade = "E" SslServerTestGrade_F SslServerTestGrade = "F" )
type SslServerTestProps ¶ added in v0.6.8
type SslServerTestProps struct { // The hostname to test. Host *string `field:"required" json:"host" yaml:"host"` // The topic to which the results must be sent when the grade is below the minimum grade. // Default: - a new topic is created. // AlarmTopic awssns.ITopic `field:"optional" json:"alarmTopic" yaml:"alarmTopic"` // Minimum grade for the test. The grade is calculated using the worst grade of all endpoints. // // Used to send the results to an alarm SNS topic. // Default: SslServerTestGrade.A_PLUS // MinimumGrade SslServerTestGrade `field:"optional" json:"minimumGrade" yaml:"minimumGrade"` // The schedule for the test. // Default: - every day. // Schedule awsevents.Schedule `field:"optional" json:"schedule" yaml:"schedule"` }
Properties for a SslServerTest.
type StateMachineCustomResourceProvider ¶
type StateMachineCustomResourceProvider interface { constructs.Construct // The tree node. Node() constructs.Node // The service token. ServiceToken() *string // Returns a string representation of this construct. ToString() *string }
A state machine custom resource provider.
func NewStateMachineCustomResourceProvider ¶
func NewStateMachineCustomResourceProvider(scope constructs.Construct, id *string, props *StateMachineCustomResourceProviderProps) StateMachineCustomResourceProvider
type StateMachineCustomResourceProviderProps ¶
type StateMachineCustomResourceProviderProps struct { // The state machine. StateMachine IStateMachine `field:"required" json:"stateMachine" yaml:"stateMachine"` // Timeout. // Default: Duration.minutes(30) // Timeout awscdk.Duration `field:"optional" json:"timeout" yaml:"timeout"` }
Properties for a StateMachineCustomResourceProvider.
type StaticWebsite ¶
type StaticWebsite interface { constructs.Construct // The S3 bucket of this static website. Bucket() awss3.Bucket // The CloudFront distribution of this static website. Distribution() awscloudfront.Distribution // The tree node. Node() constructs.Node // Returns a string representation of this construct. ToString() *string }
A CloudFront static website hosted on S3.
func NewStaticWebsite ¶
func NewStaticWebsite(scope constructs.Construct, id *string, props *StaticWebsiteProps) StaticWebsite
type StaticWebsiteProps ¶
type StaticWebsiteProps struct { // The domain name for this static website. // // Example: // www.my-static-website.com // DomainName *string `field:"required" json:"domainName" yaml:"domainName"` // The hosted zone where records should be added. HostedZone awsroute53.IHostedZone `field:"required" json:"hostedZone" yaml:"hostedZone"` // A backend configuration that will be saved as `config.json` in the S3 bucket of the static website. // // The frontend can query this config by doing `fetch('/config.json')`. // // Example: // { userPoolId: '1234', apiEndoint: 'https://www.my-api.com/api' } // BackendConfiguration interface{} `field:"optional" json:"backendConfiguration" yaml:"backendConfiguration"` // Cache policy for the default behavior. // Default: CachePolicy.CACHING_OPTIMIZED // CachePolicy awscloudfront.ICachePolicy `field:"optional" json:"cachePolicy" yaml:"cachePolicy"` // The Lambda@Edge functions to invoke before serving the contents. // Default: - an origin request function that redirects all requests for a path to /index.html // EdgeLambdas *[]*awscloudfront.EdgeLambda `field:"optional" json:"edgeLambdas" yaml:"edgeLambdas"` // A list of domain names that should redirect to `domainName`. // Default: - the domain name of the hosted zone. // Redirects *[]*string `field:"optional" json:"redirects" yaml:"redirects"` // Response headers policy for the default behavior. // Default: - a new policy is created with best practice security headers. // ResponseHeadersPolicy awscloudfront.ResponseHeadersPolicy `field:"optional" json:"responseHeadersPolicy" yaml:"responseHeadersPolicy"` }
Properties for a StaticWebsite.
type ToolkitCleaner ¶
type ToolkitCleaner interface { constructs.Construct // The tree node. Node() constructs.Node // Returns a string representation of this construct. ToString() *string }
Clean unused S3 and ECR assets from your CDK Toolkit.
func NewToolkitCleaner ¶
func NewToolkitCleaner(scope constructs.Construct, id *string, props *ToolkitCleanerProps) ToolkitCleaner
type ToolkitCleanerProps ¶
type ToolkitCleanerProps struct { // The timeout for the Lambda functions that clean assets. // Default: Duration.minutes(5) // CleanAssetsTimeout awscdk.Duration `field:"optional" json:"cleanAssetsTimeout" yaml:"cleanAssetsTimeout"` // Only output number of assets and total size that would be deleted but without actually deleting assets. DryRun *bool `field:"optional" json:"dryRun" yaml:"dryRun"` // Retain unused assets that were created recently. // Default: - all unused assets are removed. // RetainAssetsNewerThan awscdk.Duration `field:"optional" json:"retainAssetsNewerThan" yaml:"retainAssetsNewerThan"` // The schedule for the cleaner. // Default: - every day. // Schedule awsevents.Schedule `field:"optional" json:"schedule" yaml:"schedule"` // Whether to clean on schedule. // // If you'd like to run the cleanup manually // via the console, set to `false`. // Default: true. // ScheduleEnabled *bool `field:"optional" json:"scheduleEnabled" yaml:"scheduleEnabled"` }
Properties for a ToolkitCleaner.
type UrlShortener ¶
type UrlShortener interface { constructs.Construct // The underlying API Gateway REST API. Api() awsapigateway.RestApi // The endpoint of the URL shortener API. ApiEndpoint() *string // The tree node. Node() constructs.Node // Grant access to invoke the URL shortener if protected by IAM authorization. GrantInvoke(grantee awsiam.IGrantable) awsiam.Grant // Returns a string representation of this construct. ToString() *string }
URL shortener.
func NewUrlShortener ¶
func NewUrlShortener(scope constructs.Construct, id *string, props *UrlShortenerProps) UrlShortener
type UrlShortenerProps ¶
type UrlShortenerProps struct { // The hosted zone for the short URLs domain. HostedZone awsroute53.IHostedZone `field:"required" json:"hostedZone" yaml:"hostedZone"` // Authorizer for API gateway. // Default: - do not use an authorizer for the API. // ApiGatewayAuthorizer awsapigateway.IAuthorizer `field:"optional" json:"apiGatewayAuthorizer" yaml:"apiGatewayAuthorizer"` // An interface VPC endpoint for API gateway. // // Specifying this property will // make the API private. // See: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-private-apis.html // // Default: - API is public. // ApiGatewayEndpoint awsec2.IInterfaceVpcEndpoint `field:"optional" json:"apiGatewayEndpoint" yaml:"apiGatewayEndpoint"` // A name for the bucket saving the redirects. // Default: - derived from short link domain name. // BucketName *string `field:"optional" json:"bucketName" yaml:"bucketName"` // Allowed origins for CORS. // Default: - CORS is not enabled. // CorsAllowOrigins *[]*string `field:"optional" json:"corsAllowOrigins" yaml:"corsAllowOrigins"` // Expiration for short urls. // Default: cdk.Duration.days(365) // Expiration awscdk.Duration `field:"optional" json:"expiration" yaml:"expiration"` // Whether to use IAM authorization. // Default: - do not use IAM authorization. // IamAuthorization *bool `field:"optional" json:"iamAuthorization" yaml:"iamAuthorization"` // The record name to use in the hosted zone. // Default: - zone root. // RecordName *string `field:"optional" json:"recordName" yaml:"recordName"` }
Properties for a UrlShortener.
Source Files ¶
- CodeCommitMirror.go
- CodeCommitMirrorProps.go
- CodeCommitMirrorSourceRepository.go
- CodeCommitMirrorSourceRepository__checks.go
- CodeCommitMirror__checks.go
- DmarcAlignment.go
- DmarcPolicy.go
- DmarcReporter.go
- DmarcReporterProps.go
- DmarcReporter__checks.go
- EcsServiceRoller.go
- EcsServiceRollerProps.go
- EcsServiceRoller__checks.go
- EmailReceiver.go
- EmailReceiverProps.go
- EmailReceiver__checks.go
- IStateMachine.go
- MjmlTemplate.go
- MjmlTemplateProps.go
- MjmlTemplate__checks.go
- RollTrigger.go
- RollTrigger__checks.go
- SamlFederatedPrincipal.go
- SamlFederatedPrincipal__checks.go
- SamlIdentityProvider.go
- SamlIdentityProviderProps.go
- SamlIdentityProvider__checks.go
- SlackApp.go
- SlackAppManifest.go
- SlackAppManifestAppHome.go
- SlackAppManifestDefinition.go
- SlackAppManifestDefinition__checks.go
- SlackAppManifestEventSubscriptions.go
- SlackAppManifestInteractivity.go
- SlackAppManifestOauthConfig.go
- SlackAppManifestProps.go
- SlackAppManifestSettings.go
- SlackAppManifestShortcut.go
- SlackAppManifestShortcutType.go
- SlackAppManifestSlashCommand.go
- SlackAppManifestWorkflowStep.go
- SlackAppManifest__checks.go
- SlackAppProps.go
- SlackApp__checks.go
- SlackEvents.go
- SlackEventsProps.go
- SlackEvents__checks.go
- SlackTextract.go
- SlackTextractProps.go
- SlackTextract__checks.go
- SlackkAppManifestBotUser.go
- SslServerTest.go
- SslServerTestGrade.go
- SslServerTestProps.go
- SslServerTest__checks.go
- StateMachineCustomResourceProvider.go
- StateMachineCustomResourceProviderProps.go
- StateMachineCustomResourceProvider__checks.go
- StaticWebsite.go
- StaticWebsiteProps.go
- StaticWebsite__checks.go
- ToolkitCleaner.go
- ToolkitCleanerProps.go
- ToolkitCleaner__checks.go
- UrlShortener.go
- UrlShortenerProps.go
- UrlShortener__checks.go
- main.go