Documentation ¶
Index ¶
- func CfnAccountAuditConfiguration_CFN_RESOURCE_TYPE_NAME() *string
- func CfnAccountAuditConfiguration_IsCfnElement(x interface{}) *bool
- func CfnAccountAuditConfiguration_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnAccountAuditConfiguration_IsConstruct(x interface{}) *bool
- func CfnAuthorizer_CFN_RESOURCE_TYPE_NAME() *string
- func CfnAuthorizer_IsCfnElement(x interface{}) *bool
- func CfnAuthorizer_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnAuthorizer_IsConstruct(x interface{}) *bool
- func CfnBillingGroup_CFN_RESOURCE_TYPE_NAME() *string
- func CfnBillingGroup_IsCfnElement(x interface{}) *bool
- func CfnBillingGroup_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnBillingGroup_IsConstruct(x interface{}) *bool
- func CfnCACertificate_CFN_RESOURCE_TYPE_NAME() *string
- func CfnCACertificate_IsCfnElement(x interface{}) *bool
- func CfnCACertificate_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnCACertificate_IsConstruct(x interface{}) *bool
- func CfnCertificate_CFN_RESOURCE_TYPE_NAME() *string
- func CfnCertificate_IsCfnElement(x interface{}) *bool
- func CfnCertificate_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnCertificate_IsConstruct(x interface{}) *bool
- func CfnCustomMetric_CFN_RESOURCE_TYPE_NAME() *string
- func CfnCustomMetric_IsCfnElement(x interface{}) *bool
- func CfnCustomMetric_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnCustomMetric_IsConstruct(x interface{}) *bool
- func CfnDimension_CFN_RESOURCE_TYPE_NAME() *string
- func CfnDimension_IsCfnElement(x interface{}) *bool
- func CfnDimension_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnDimension_IsConstruct(x interface{}) *bool
- func CfnDomainConfiguration_CFN_RESOURCE_TYPE_NAME() *string
- func CfnDomainConfiguration_IsCfnElement(x interface{}) *bool
- func CfnDomainConfiguration_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnDomainConfiguration_IsConstruct(x interface{}) *bool
- func CfnFleetMetric_CFN_RESOURCE_TYPE_NAME() *string
- func CfnFleetMetric_IsCfnElement(x interface{}) *bool
- func CfnFleetMetric_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnFleetMetric_IsConstruct(x interface{}) *bool
- func CfnJobTemplate_CFN_RESOURCE_TYPE_NAME() *string
- func CfnJobTemplate_IsCfnElement(x interface{}) *bool
- func CfnJobTemplate_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnJobTemplate_IsConstruct(x interface{}) *bool
- func CfnLogging_CFN_RESOURCE_TYPE_NAME() *string
- func CfnLogging_IsCfnElement(x interface{}) *bool
- func CfnLogging_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnLogging_IsConstruct(x interface{}) *bool
- func CfnMitigationAction_CFN_RESOURCE_TYPE_NAME() *string
- func CfnMitigationAction_IsCfnElement(x interface{}) *bool
- func CfnMitigationAction_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnMitigationAction_IsConstruct(x interface{}) *bool
- func CfnPolicyPrincipalAttachment_CFN_RESOURCE_TYPE_NAME() *string
- func CfnPolicyPrincipalAttachment_IsCfnElement(x interface{}) *bool
- func CfnPolicyPrincipalAttachment_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnPolicyPrincipalAttachment_IsConstruct(x interface{}) *bool
- func CfnPolicy_CFN_RESOURCE_TYPE_NAME() *string
- func CfnPolicy_IsCfnElement(x interface{}) *bool
- func CfnPolicy_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnPolicy_IsConstruct(x interface{}) *bool
- func CfnProvisioningTemplate_CFN_RESOURCE_TYPE_NAME() *string
- func CfnProvisioningTemplate_IsCfnElement(x interface{}) *bool
- func CfnProvisioningTemplate_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnProvisioningTemplate_IsConstruct(x interface{}) *bool
- func CfnResourceSpecificLogging_CFN_RESOURCE_TYPE_NAME() *string
- func CfnResourceSpecificLogging_IsCfnElement(x interface{}) *bool
- func CfnResourceSpecificLogging_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnResourceSpecificLogging_IsConstruct(x interface{}) *bool
- func CfnRoleAlias_CFN_RESOURCE_TYPE_NAME() *string
- func CfnRoleAlias_IsCfnElement(x interface{}) *bool
- func CfnRoleAlias_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnRoleAlias_IsConstruct(x interface{}) *bool
- func CfnScheduledAudit_CFN_RESOURCE_TYPE_NAME() *string
- func CfnScheduledAudit_IsCfnElement(x interface{}) *bool
- func CfnScheduledAudit_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnScheduledAudit_IsConstruct(x interface{}) *bool
- func CfnSecurityProfile_CFN_RESOURCE_TYPE_NAME() *string
- func CfnSecurityProfile_IsCfnElement(x interface{}) *bool
- func CfnSecurityProfile_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnSecurityProfile_IsConstruct(x interface{}) *bool
- func CfnSoftwarePackageVersion_CFN_RESOURCE_TYPE_NAME() *string
- func CfnSoftwarePackageVersion_IsCfnElement(x interface{}) *bool
- func CfnSoftwarePackageVersion_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnSoftwarePackageVersion_IsConstruct(x interface{}) *bool
- func CfnSoftwarePackage_CFN_RESOURCE_TYPE_NAME() *string
- func CfnSoftwarePackage_IsCfnElement(x interface{}) *bool
- func CfnSoftwarePackage_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnSoftwarePackage_IsConstruct(x interface{}) *bool
- func CfnThingGroup_CFN_RESOURCE_TYPE_NAME() *string
- func CfnThingGroup_IsCfnElement(x interface{}) *bool
- func CfnThingGroup_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnThingGroup_IsConstruct(x interface{}) *bool
- func CfnThingPrincipalAttachment_CFN_RESOURCE_TYPE_NAME() *string
- func CfnThingPrincipalAttachment_IsCfnElement(x interface{}) *bool
- func CfnThingPrincipalAttachment_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnThingPrincipalAttachment_IsConstruct(x interface{}) *bool
- func CfnThingType_CFN_RESOURCE_TYPE_NAME() *string
- func CfnThingType_IsCfnElement(x interface{}) *bool
- func CfnThingType_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnThingType_IsConstruct(x interface{}) *bool
- func CfnThing_CFN_RESOURCE_TYPE_NAME() *string
- func CfnThing_IsCfnElement(x interface{}) *bool
- func CfnThing_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnThing_IsConstruct(x interface{}) *bool
- func CfnTopicRuleDestination_CFN_RESOURCE_TYPE_NAME() *string
- func CfnTopicRuleDestination_IsCfnElement(x interface{}) *bool
- func CfnTopicRuleDestination_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnTopicRuleDestination_IsConstruct(x interface{}) *bool
- func CfnTopicRule_CFN_RESOURCE_TYPE_NAME() *string
- func CfnTopicRule_IsCfnElement(x interface{}) *bool
- func CfnTopicRule_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnTopicRule_IsConstruct(x interface{}) *bool
- func NewCfnAccountAuditConfiguration_Override(c CfnAccountAuditConfiguration, scope constructs.Construct, id *string, ...)
- func NewCfnAuthorizer_Override(c CfnAuthorizer, scope constructs.Construct, id *string, ...)
- func NewCfnBillingGroup_Override(c CfnBillingGroup, scope constructs.Construct, id *string, ...)
- func NewCfnCACertificate_Override(c CfnCACertificate, scope constructs.Construct, id *string, ...)
- func NewCfnCertificate_Override(c CfnCertificate, scope constructs.Construct, id *string, ...)
- func NewCfnCustomMetric_Override(c CfnCustomMetric, scope constructs.Construct, id *string, ...)
- func NewCfnDimension_Override(c CfnDimension, scope constructs.Construct, id *string, ...)
- func NewCfnDomainConfiguration_Override(c CfnDomainConfiguration, scope constructs.Construct, id *string, ...)
- func NewCfnFleetMetric_Override(c CfnFleetMetric, scope constructs.Construct, id *string, ...)
- func NewCfnJobTemplate_Override(c CfnJobTemplate, scope constructs.Construct, id *string, ...)
- func NewCfnLogging_Override(c CfnLogging, scope constructs.Construct, id *string, props *CfnLoggingProps)
- func NewCfnMitigationAction_Override(c CfnMitigationAction, scope constructs.Construct, id *string, ...)
- func NewCfnPolicyPrincipalAttachment_Override(c CfnPolicyPrincipalAttachment, scope constructs.Construct, id *string, ...)
- func NewCfnPolicy_Override(c CfnPolicy, scope constructs.Construct, id *string, props *CfnPolicyProps)
- func NewCfnProvisioningTemplate_Override(c CfnProvisioningTemplate, scope constructs.Construct, id *string, ...)
- func NewCfnResourceSpecificLogging_Override(c CfnResourceSpecificLogging, scope constructs.Construct, id *string, ...)
- func NewCfnRoleAlias_Override(c CfnRoleAlias, scope constructs.Construct, id *string, ...)
- func NewCfnScheduledAudit_Override(c CfnScheduledAudit, scope constructs.Construct, id *string, ...)
- func NewCfnSecurityProfile_Override(c CfnSecurityProfile, scope constructs.Construct, id *string, ...)
- func NewCfnSoftwarePackageVersion_Override(c CfnSoftwarePackageVersion, scope constructs.Construct, id *string, ...)
- func NewCfnSoftwarePackage_Override(c CfnSoftwarePackage, scope constructs.Construct, id *string, ...)
- func NewCfnThingGroup_Override(c CfnThingGroup, scope constructs.Construct, id *string, ...)
- func NewCfnThingPrincipalAttachment_Override(c CfnThingPrincipalAttachment, scope constructs.Construct, id *string, ...)
- func NewCfnThingType_Override(c CfnThingType, scope constructs.Construct, id *string, ...)
- func NewCfnThing_Override(c CfnThing, scope constructs.Construct, id *string, props *CfnThingProps)
- func NewCfnTopicRuleDestination_Override(c CfnTopicRuleDestination, scope constructs.Construct, id *string, ...)
- func NewCfnTopicRule_Override(c CfnTopicRule, scope constructs.Construct, id *string, ...)
- type CfnAccountAuditConfiguration
- type CfnAccountAuditConfigurationProps
- type CfnAccountAuditConfiguration_AuditCheckConfigurationProperty
- type CfnAccountAuditConfiguration_AuditCheckConfigurationsProperty
- type CfnAccountAuditConfiguration_AuditNotificationTargetConfigurationsProperty
- type CfnAccountAuditConfiguration_AuditNotificationTargetProperty
- type CfnAuthorizer
- type CfnAuthorizerProps
- type CfnBillingGroup
- type CfnBillingGroupProps
- type CfnBillingGroup_BillingGroupPropertiesProperty
- type CfnCACertificate
- type CfnCACertificateProps
- type CfnCACertificate_RegistrationConfigProperty
- type CfnCertificate
- type CfnCertificateProps
- type CfnCustomMetric
- type CfnCustomMetricProps
- type CfnDimension
- type CfnDimensionProps
- type CfnDomainConfiguration
- type CfnDomainConfigurationProps
- type CfnDomainConfiguration_AuthorizerConfigProperty
- type CfnDomainConfiguration_ServerCertificateSummaryProperty
- type CfnDomainConfiguration_TlsConfigProperty
- type CfnFleetMetric
- type CfnFleetMetricProps
- type CfnFleetMetric_AggregationTypeProperty
- type CfnJobTemplate
- type CfnJobTemplateProps
- type CfnJobTemplate_AbortConfigProperty
- type CfnJobTemplate_AbortCriteriaProperty
- type CfnJobTemplate_ExponentialRolloutRateProperty
- type CfnJobTemplate_JobExecutionsRetryConfigProperty
- type CfnJobTemplate_JobExecutionsRolloutConfigProperty
- type CfnJobTemplate_MaintenanceWindowProperty
- type CfnJobTemplate_PresignedUrlConfigProperty
- type CfnJobTemplate_RateIncreaseCriteriaProperty
- type CfnJobTemplate_RetryCriteriaProperty
- type CfnJobTemplate_TimeoutConfigProperty
- type CfnLogging
- type CfnLoggingProps
- type CfnMitigationAction
- type CfnMitigationActionProps
- type CfnMitigationAction_ActionParamsProperty
- type CfnMitigationAction_AddThingsToThingGroupParamsProperty
- type CfnMitigationAction_EnableIoTLoggingParamsProperty
- type CfnMitigationAction_PublishFindingToSnsParamsProperty
- type CfnMitigationAction_ReplaceDefaultPolicyVersionParamsProperty
- type CfnMitigationAction_UpdateCACertificateParamsProperty
- type CfnMitigationAction_UpdateDeviceCertificateParamsProperty
- type CfnPolicy
- type CfnPolicyPrincipalAttachment
- type CfnPolicyPrincipalAttachmentProps
- type CfnPolicyProps
- type CfnProvisioningTemplate
- type CfnProvisioningTemplateProps
- type CfnProvisioningTemplate_ProvisioningHookProperty
- type CfnResourceSpecificLogging
- type CfnResourceSpecificLoggingProps
- type CfnRoleAlias
- type CfnRoleAliasProps
- type CfnScheduledAudit
- type CfnScheduledAuditProps
- type CfnSecurityProfile
- type CfnSecurityProfileProps
- type CfnSecurityProfile_AlertTargetProperty
- type CfnSecurityProfile_BehaviorCriteriaProperty
- type CfnSecurityProfile_BehaviorProperty
- type CfnSecurityProfile_MachineLearningDetectionConfigProperty
- type CfnSecurityProfile_MetricDimensionProperty
- type CfnSecurityProfile_MetricToRetainProperty
- type CfnSecurityProfile_MetricValueProperty
- type CfnSecurityProfile_StatisticalThresholdProperty
- type CfnSoftwarePackage
- type CfnSoftwarePackageProps
- type CfnSoftwarePackageVersion
- type CfnSoftwarePackageVersionProps
- type CfnThing
- type CfnThingGroup
- type CfnThingGroupProps
- type CfnThingGroup_AttributePayloadProperty
- type CfnThingGroup_ThingGroupPropertiesProperty
- type CfnThingPrincipalAttachment
- type CfnThingPrincipalAttachmentProps
- type CfnThingProps
- type CfnThingType
- type CfnThingTypeProps
- type CfnThingType_ThingTypePropertiesProperty
- type CfnThing_AttributePayloadProperty
- type CfnTopicRule
- type CfnTopicRuleDestination
- type CfnTopicRuleDestinationProps
- type CfnTopicRuleDestination_HttpUrlDestinationSummaryProperty
- type CfnTopicRuleDestination_VpcDestinationPropertiesProperty
- type CfnTopicRuleProps
- type CfnTopicRule_ActionProperty
- type CfnTopicRule_AssetPropertyTimestampProperty
- type CfnTopicRule_AssetPropertyValueProperty
- type CfnTopicRule_AssetPropertyVariantProperty
- type CfnTopicRule_CloudwatchAlarmActionProperty
- type CfnTopicRule_CloudwatchLogsActionProperty
- type CfnTopicRule_CloudwatchMetricActionProperty
- type CfnTopicRule_DynamoDBActionProperty
- type CfnTopicRule_DynamoDBv2ActionProperty
- type CfnTopicRule_ElasticsearchActionProperty
- type CfnTopicRule_FirehoseActionProperty
- type CfnTopicRule_HttpActionHeaderProperty
- type CfnTopicRule_HttpActionProperty
- type CfnTopicRule_HttpAuthorizationProperty
- type CfnTopicRule_IotAnalyticsActionProperty
- type CfnTopicRule_IotEventsActionProperty
- type CfnTopicRule_IotSiteWiseActionProperty
- type CfnTopicRule_KafkaActionProperty
- type CfnTopicRule_KinesisActionProperty
- type CfnTopicRule_LambdaActionProperty
- type CfnTopicRule_LocationActionProperty
- type CfnTopicRule_OpenSearchActionProperty
- type CfnTopicRule_PutAssetPropertyValueEntryProperty
- type CfnTopicRule_PutItemInputProperty
- type CfnTopicRule_RepublishActionHeadersProperty
- type CfnTopicRule_RepublishActionProperty
- type CfnTopicRule_S3ActionProperty
- type CfnTopicRule_SigV4AuthorizationProperty
- type CfnTopicRule_SnsActionProperty
- type CfnTopicRule_SqsActionProperty
- type CfnTopicRule_StepFunctionsActionProperty
- type CfnTopicRule_TimestampProperty
- type CfnTopicRule_TimestreamActionProperty
- type CfnTopicRule_TimestreamDimensionProperty
- type CfnTopicRule_TimestreamTimestampProperty
- type CfnTopicRule_TopicRulePayloadProperty
- type CfnTopicRule_UserPropertyProperty
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CfnAccountAuditConfiguration_CFN_RESOURCE_TYPE_NAME ¶
func CfnAccountAuditConfiguration_CFN_RESOURCE_TYPE_NAME() *string
func CfnAccountAuditConfiguration_IsCfnElement ¶
func CfnAccountAuditConfiguration_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnAccountAuditConfiguration_IsCfnResource ¶
func CfnAccountAuditConfiguration_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnAccountAuditConfiguration_IsConstruct ¶
func CfnAccountAuditConfiguration_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnAuthorizer_CFN_RESOURCE_TYPE_NAME ¶
func CfnAuthorizer_CFN_RESOURCE_TYPE_NAME() *string
func CfnAuthorizer_IsCfnElement ¶
func CfnAuthorizer_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnAuthorizer_IsCfnResource ¶
func CfnAuthorizer_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnAuthorizer_IsConstruct ¶
func CfnAuthorizer_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnBillingGroup_CFN_RESOURCE_TYPE_NAME ¶ added in v2.80.0
func CfnBillingGroup_CFN_RESOURCE_TYPE_NAME() *string
func CfnBillingGroup_IsCfnElement ¶ added in v2.80.0
func CfnBillingGroup_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnBillingGroup_IsCfnResource ¶ added in v2.80.0
func CfnBillingGroup_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnBillingGroup_IsConstruct ¶ added in v2.80.0
func CfnBillingGroup_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnCACertificate_CFN_RESOURCE_TYPE_NAME ¶ added in v2.31.0
func CfnCACertificate_CFN_RESOURCE_TYPE_NAME() *string
func CfnCACertificate_IsCfnElement ¶ added in v2.31.0
func CfnCACertificate_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnCACertificate_IsCfnResource ¶ added in v2.31.0
func CfnCACertificate_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnCACertificate_IsConstruct ¶ added in v2.31.0
func CfnCACertificate_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnCertificate_CFN_RESOURCE_TYPE_NAME ¶
func CfnCertificate_CFN_RESOURCE_TYPE_NAME() *string
func CfnCertificate_IsCfnElement ¶
func CfnCertificate_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnCertificate_IsCfnResource ¶
func CfnCertificate_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnCertificate_IsConstruct ¶
func CfnCertificate_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnCustomMetric_CFN_RESOURCE_TYPE_NAME ¶
func CfnCustomMetric_CFN_RESOURCE_TYPE_NAME() *string
func CfnCustomMetric_IsCfnElement ¶
func CfnCustomMetric_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnCustomMetric_IsCfnResource ¶
func CfnCustomMetric_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnCustomMetric_IsConstruct ¶
func CfnCustomMetric_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnDimension_CFN_RESOURCE_TYPE_NAME ¶
func CfnDimension_CFN_RESOURCE_TYPE_NAME() *string
func CfnDimension_IsCfnElement ¶
func CfnDimension_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnDimension_IsCfnResource ¶
func CfnDimension_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnDimension_IsConstruct ¶
func CfnDimension_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnDomainConfiguration_CFN_RESOURCE_TYPE_NAME ¶
func CfnDomainConfiguration_CFN_RESOURCE_TYPE_NAME() *string
func CfnDomainConfiguration_IsCfnElement ¶
func CfnDomainConfiguration_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnDomainConfiguration_IsCfnResource ¶
func CfnDomainConfiguration_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnDomainConfiguration_IsConstruct ¶
func CfnDomainConfiguration_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnFleetMetric_CFN_RESOURCE_TYPE_NAME ¶
func CfnFleetMetric_CFN_RESOURCE_TYPE_NAME() *string
func CfnFleetMetric_IsCfnElement ¶
func CfnFleetMetric_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnFleetMetric_IsCfnResource ¶
func CfnFleetMetric_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnFleetMetric_IsConstruct ¶
func CfnFleetMetric_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnJobTemplate_CFN_RESOURCE_TYPE_NAME ¶
func CfnJobTemplate_CFN_RESOURCE_TYPE_NAME() *string
func CfnJobTemplate_IsCfnElement ¶
func CfnJobTemplate_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnJobTemplate_IsCfnResource ¶
func CfnJobTemplate_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnJobTemplate_IsConstruct ¶
func CfnJobTemplate_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnLogging_CFN_RESOURCE_TYPE_NAME ¶
func CfnLogging_CFN_RESOURCE_TYPE_NAME() *string
func CfnLogging_IsCfnElement ¶
func CfnLogging_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnLogging_IsCfnResource ¶
func CfnLogging_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnLogging_IsConstruct ¶
func CfnLogging_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnMitigationAction_CFN_RESOURCE_TYPE_NAME ¶
func CfnMitigationAction_CFN_RESOURCE_TYPE_NAME() *string
func CfnMitigationAction_IsCfnElement ¶
func CfnMitigationAction_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnMitigationAction_IsCfnResource ¶
func CfnMitigationAction_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnMitigationAction_IsConstruct ¶
func CfnMitigationAction_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnPolicyPrincipalAttachment_CFN_RESOURCE_TYPE_NAME ¶
func CfnPolicyPrincipalAttachment_CFN_RESOURCE_TYPE_NAME() *string
func CfnPolicyPrincipalAttachment_IsCfnElement ¶
func CfnPolicyPrincipalAttachment_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnPolicyPrincipalAttachment_IsCfnResource ¶
func CfnPolicyPrincipalAttachment_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnPolicyPrincipalAttachment_IsConstruct ¶
func CfnPolicyPrincipalAttachment_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnPolicy_CFN_RESOURCE_TYPE_NAME ¶
func CfnPolicy_CFN_RESOURCE_TYPE_NAME() *string
func CfnPolicy_IsCfnElement ¶
func CfnPolicy_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnPolicy_IsCfnResource ¶
func CfnPolicy_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnPolicy_IsConstruct ¶
func CfnPolicy_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnProvisioningTemplate_CFN_RESOURCE_TYPE_NAME ¶
func CfnProvisioningTemplate_CFN_RESOURCE_TYPE_NAME() *string
func CfnProvisioningTemplate_IsCfnElement ¶
func CfnProvisioningTemplate_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnProvisioningTemplate_IsCfnResource ¶
func CfnProvisioningTemplate_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnProvisioningTemplate_IsConstruct ¶
func CfnProvisioningTemplate_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnResourceSpecificLogging_CFN_RESOURCE_TYPE_NAME ¶
func CfnResourceSpecificLogging_CFN_RESOURCE_TYPE_NAME() *string
func CfnResourceSpecificLogging_IsCfnElement ¶
func CfnResourceSpecificLogging_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnResourceSpecificLogging_IsCfnResource ¶
func CfnResourceSpecificLogging_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnResourceSpecificLogging_IsConstruct ¶
func CfnResourceSpecificLogging_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnRoleAlias_CFN_RESOURCE_TYPE_NAME ¶ added in v2.25.0
func CfnRoleAlias_CFN_RESOURCE_TYPE_NAME() *string
func CfnRoleAlias_IsCfnElement ¶ added in v2.25.0
func CfnRoleAlias_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnRoleAlias_IsCfnResource ¶ added in v2.25.0
func CfnRoleAlias_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnRoleAlias_IsConstruct ¶ added in v2.25.0
func CfnRoleAlias_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnScheduledAudit_CFN_RESOURCE_TYPE_NAME ¶
func CfnScheduledAudit_CFN_RESOURCE_TYPE_NAME() *string
func CfnScheduledAudit_IsCfnElement ¶
func CfnScheduledAudit_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnScheduledAudit_IsCfnResource ¶
func CfnScheduledAudit_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnScheduledAudit_IsConstruct ¶
func CfnScheduledAudit_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnSecurityProfile_CFN_RESOURCE_TYPE_NAME ¶
func CfnSecurityProfile_CFN_RESOURCE_TYPE_NAME() *string
func CfnSecurityProfile_IsCfnElement ¶
func CfnSecurityProfile_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnSecurityProfile_IsCfnResource ¶
func CfnSecurityProfile_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnSecurityProfile_IsConstruct ¶
func CfnSecurityProfile_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnSoftwarePackageVersion_CFN_RESOURCE_TYPE_NAME ¶ added in v2.101.0
func CfnSoftwarePackageVersion_CFN_RESOURCE_TYPE_NAME() *string
func CfnSoftwarePackageVersion_IsCfnElement ¶ added in v2.101.0
func CfnSoftwarePackageVersion_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnSoftwarePackageVersion_IsCfnResource ¶ added in v2.101.0
func CfnSoftwarePackageVersion_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnSoftwarePackageVersion_IsConstruct ¶ added in v2.101.0
func CfnSoftwarePackageVersion_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnSoftwarePackage_CFN_RESOURCE_TYPE_NAME ¶ added in v2.101.0
func CfnSoftwarePackage_CFN_RESOURCE_TYPE_NAME() *string
func CfnSoftwarePackage_IsCfnElement ¶ added in v2.101.0
func CfnSoftwarePackage_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnSoftwarePackage_IsCfnResource ¶ added in v2.101.0
func CfnSoftwarePackage_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnSoftwarePackage_IsConstruct ¶ added in v2.101.0
func CfnSoftwarePackage_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnThingGroup_CFN_RESOURCE_TYPE_NAME ¶ added in v2.80.0
func CfnThingGroup_CFN_RESOURCE_TYPE_NAME() *string
func CfnThingGroup_IsCfnElement ¶ added in v2.80.0
func CfnThingGroup_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnThingGroup_IsCfnResource ¶ added in v2.80.0
func CfnThingGroup_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnThingGroup_IsConstruct ¶ added in v2.80.0
func CfnThingGroup_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnThingPrincipalAttachment_CFN_RESOURCE_TYPE_NAME ¶
func CfnThingPrincipalAttachment_CFN_RESOURCE_TYPE_NAME() *string
func CfnThingPrincipalAttachment_IsCfnElement ¶
func CfnThingPrincipalAttachment_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnThingPrincipalAttachment_IsCfnResource ¶
func CfnThingPrincipalAttachment_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnThingPrincipalAttachment_IsConstruct ¶
func CfnThingPrincipalAttachment_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnThingType_CFN_RESOURCE_TYPE_NAME ¶ added in v2.80.0
func CfnThingType_CFN_RESOURCE_TYPE_NAME() *string
func CfnThingType_IsCfnElement ¶ added in v2.80.0
func CfnThingType_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnThingType_IsCfnResource ¶ added in v2.80.0
func CfnThingType_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnThingType_IsConstruct ¶ added in v2.80.0
func CfnThingType_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnThing_CFN_RESOURCE_TYPE_NAME ¶
func CfnThing_CFN_RESOURCE_TYPE_NAME() *string
func CfnThing_IsCfnElement ¶
func CfnThing_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnThing_IsCfnResource ¶
func CfnThing_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnThing_IsConstruct ¶
func CfnThing_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnTopicRuleDestination_CFN_RESOURCE_TYPE_NAME ¶
func CfnTopicRuleDestination_CFN_RESOURCE_TYPE_NAME() *string
func CfnTopicRuleDestination_IsCfnElement ¶
func CfnTopicRuleDestination_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnTopicRuleDestination_IsCfnResource ¶
func CfnTopicRuleDestination_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnTopicRuleDestination_IsConstruct ¶
func CfnTopicRuleDestination_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnTopicRule_CFN_RESOURCE_TYPE_NAME ¶
func CfnTopicRule_CFN_RESOURCE_TYPE_NAME() *string
func CfnTopicRule_IsCfnElement ¶
func CfnTopicRule_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnTopicRule_IsCfnResource ¶
func CfnTopicRule_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnTopicRule_IsConstruct ¶
func CfnTopicRule_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func NewCfnAccountAuditConfiguration_Override ¶
func NewCfnAccountAuditConfiguration_Override(c CfnAccountAuditConfiguration, scope constructs.Construct, id *string, props *CfnAccountAuditConfigurationProps)
func NewCfnAuthorizer_Override ¶
func NewCfnAuthorizer_Override(c CfnAuthorizer, scope constructs.Construct, id *string, props *CfnAuthorizerProps)
func NewCfnBillingGroup_Override ¶ added in v2.80.0
func NewCfnBillingGroup_Override(c CfnBillingGroup, scope constructs.Construct, id *string, props *CfnBillingGroupProps)
func NewCfnCACertificate_Override ¶ added in v2.31.0
func NewCfnCACertificate_Override(c CfnCACertificate, scope constructs.Construct, id *string, props *CfnCACertificateProps)
func NewCfnCertificate_Override ¶
func NewCfnCertificate_Override(c CfnCertificate, scope constructs.Construct, id *string, props *CfnCertificateProps)
func NewCfnCustomMetric_Override ¶
func NewCfnCustomMetric_Override(c CfnCustomMetric, scope constructs.Construct, id *string, props *CfnCustomMetricProps)
func NewCfnDimension_Override ¶
func NewCfnDimension_Override(c CfnDimension, scope constructs.Construct, id *string, props *CfnDimensionProps)
func NewCfnDomainConfiguration_Override ¶
func NewCfnDomainConfiguration_Override(c CfnDomainConfiguration, scope constructs.Construct, id *string, props *CfnDomainConfigurationProps)
func NewCfnFleetMetric_Override ¶
func NewCfnFleetMetric_Override(c CfnFleetMetric, scope constructs.Construct, id *string, props *CfnFleetMetricProps)
func NewCfnJobTemplate_Override ¶
func NewCfnJobTemplate_Override(c CfnJobTemplate, scope constructs.Construct, id *string, props *CfnJobTemplateProps)
func NewCfnLogging_Override ¶
func NewCfnLogging_Override(c CfnLogging, scope constructs.Construct, id *string, props *CfnLoggingProps)
func NewCfnMitigationAction_Override ¶
func NewCfnMitigationAction_Override(c CfnMitigationAction, scope constructs.Construct, id *string, props *CfnMitigationActionProps)
func NewCfnPolicyPrincipalAttachment_Override ¶
func NewCfnPolicyPrincipalAttachment_Override(c CfnPolicyPrincipalAttachment, scope constructs.Construct, id *string, props *CfnPolicyPrincipalAttachmentProps)
func NewCfnPolicy_Override ¶
func NewCfnPolicy_Override(c CfnPolicy, scope constructs.Construct, id *string, props *CfnPolicyProps)
func NewCfnProvisioningTemplate_Override ¶
func NewCfnProvisioningTemplate_Override(c CfnProvisioningTemplate, scope constructs.Construct, id *string, props *CfnProvisioningTemplateProps)
func NewCfnResourceSpecificLogging_Override ¶
func NewCfnResourceSpecificLogging_Override(c CfnResourceSpecificLogging, scope constructs.Construct, id *string, props *CfnResourceSpecificLoggingProps)
func NewCfnRoleAlias_Override ¶ added in v2.25.0
func NewCfnRoleAlias_Override(c CfnRoleAlias, scope constructs.Construct, id *string, props *CfnRoleAliasProps)
func NewCfnScheduledAudit_Override ¶
func NewCfnScheduledAudit_Override(c CfnScheduledAudit, scope constructs.Construct, id *string, props *CfnScheduledAuditProps)
func NewCfnSecurityProfile_Override ¶
func NewCfnSecurityProfile_Override(c CfnSecurityProfile, scope constructs.Construct, id *string, props *CfnSecurityProfileProps)
func NewCfnSoftwarePackageVersion_Override ¶ added in v2.101.0
func NewCfnSoftwarePackageVersion_Override(c CfnSoftwarePackageVersion, scope constructs.Construct, id *string, props *CfnSoftwarePackageVersionProps)
func NewCfnSoftwarePackage_Override ¶ added in v2.101.0
func NewCfnSoftwarePackage_Override(c CfnSoftwarePackage, scope constructs.Construct, id *string, props *CfnSoftwarePackageProps)
func NewCfnThingGroup_Override ¶ added in v2.80.0
func NewCfnThingGroup_Override(c CfnThingGroup, scope constructs.Construct, id *string, props *CfnThingGroupProps)
func NewCfnThingPrincipalAttachment_Override ¶
func NewCfnThingPrincipalAttachment_Override(c CfnThingPrincipalAttachment, scope constructs.Construct, id *string, props *CfnThingPrincipalAttachmentProps)
func NewCfnThingType_Override ¶ added in v2.80.0
func NewCfnThingType_Override(c CfnThingType, scope constructs.Construct, id *string, props *CfnThingTypeProps)
func NewCfnThing_Override ¶
func NewCfnThing_Override(c CfnThing, scope constructs.Construct, id *string, props *CfnThingProps)
func NewCfnTopicRuleDestination_Override ¶
func NewCfnTopicRuleDestination_Override(c CfnTopicRuleDestination, scope constructs.Construct, id *string, props *CfnTopicRuleDestinationProps)
func NewCfnTopicRule_Override ¶
func NewCfnTopicRule_Override(c CfnTopicRule, scope constructs.Construct, id *string, props *CfnTopicRuleProps)
Types ¶
type CfnAccountAuditConfiguration ¶
type CfnAccountAuditConfiguration interface { awscdk.CfnResource awscdk.IInspectable // The ID of the account. AccountId() *string SetAccountId(val *string) // Specifies which audit checks are enabled and disabled for this account. AuditCheckConfigurations() interface{} SetAuditCheckConfigurations(val interface{}) // Information about the targets to which audit notifications are sent. AuditNotificationTargetConfigurations() interface{} SetAuditNotificationTargetConfigurations(val interface{}) // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The Amazon Resource Name (ARN) of the role that grants permission to AWS IoT to access information about your devices, policies, certificates, and other items as required when performing an audit. RoleArn() *string SetRoleArn(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Use the `AWS::IoT::AccountAuditConfiguration` resource to configure or reconfigure the Device Defender audit settings for your account.
Settings include how audit notifications are sent and which audit checks are enabled or disabled. For API reference, see [UpdateAccountAuditConfiguration](https://docs.aws.amazon.com/iot/latest/apireference/API_UpdateAccountAuditConfiguration.html) and for detailed information on all available audit checks, see [Audit checks](https://docs.aws.amazon.com/iot/latest/developerguide/device-defender-audit-checks.html) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnAccountAuditConfiguration := awscdk.Aws_iot.NewCfnAccountAuditConfiguration(this, jsii.String("MyCfnAccountAuditConfiguration"), &CfnAccountAuditConfigurationProps{ AccountId: jsii.String("accountId"), AuditCheckConfigurations: &AuditCheckConfigurationsProperty{ AuthenticatedCognitoRoleOverlyPermissiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, CaCertificateExpiringCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, CaCertificateKeyQualityCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, ConflictingClientIdsCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, DeviceCertificateExpiringCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, DeviceCertificateKeyQualityCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, DeviceCertificateSharedCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, IntermediateCaRevokedForActiveDeviceCertificatesCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, IotPolicyOverlyPermissiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, IoTPolicyPotentialMisConfigurationCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, IotRoleAliasAllowsAccessToUnusedServicesCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, IotRoleAliasOverlyPermissiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, LoggingDisabledCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, RevokedCaCertificateStillActiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, RevokedDeviceCertificateStillActiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, UnauthenticatedCognitoRoleOverlyPermissiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, }, RoleArn: jsii.String("roleArn"), // the properties below are optional AuditNotificationTargetConfigurations: &AuditNotificationTargetConfigurationsProperty{ Sns: &AuditNotificationTargetProperty{ Enabled: jsii.Boolean(false), RoleArn: jsii.String("roleArn"), TargetArn: jsii.String("targetArn"), }, }, })
func NewCfnAccountAuditConfiguration ¶
func NewCfnAccountAuditConfiguration(scope constructs.Construct, id *string, props *CfnAccountAuditConfigurationProps) CfnAccountAuditConfiguration
type CfnAccountAuditConfigurationProps ¶
type CfnAccountAuditConfigurationProps struct { // The ID of the account. // // You can use the expression `!Sub "${AWS::AccountId}"` to use your account ID. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-accountauditconfiguration.html#cfn-iot-accountauditconfiguration-accountid // AccountId *string `field:"required" json:"accountId" yaml:"accountId"` // Specifies which audit checks are enabled and disabled for this account. // // Some data collection might start immediately when certain checks are enabled. When a check is disabled, any data collected so far in relation to the check is deleted. To disable a check, set the value of the `Enabled:` key to `false` . // // If an enabled check is removed from the template, it will also be disabled. // // You can't disable a check if it's used by any scheduled audit. You must delete the check from the scheduled audit or delete the scheduled audit itself to disable the check. // // For more information on avialbe auidt checks see [AWS::IoT::AccountAuditConfiguration AuditCheckConfigurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-accountauditconfiguration.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations // AuditCheckConfigurations interface{} `field:"required" json:"auditCheckConfigurations" yaml:"auditCheckConfigurations"` // The Amazon Resource Name (ARN) of the role that grants permission to AWS IoT to access information about your devices, policies, certificates, and other items as required when performing an audit. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-accountauditconfiguration.html#cfn-iot-accountauditconfiguration-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // Information about the targets to which audit notifications are sent. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-accountauditconfiguration.html#cfn-iot-accountauditconfiguration-auditnotificationtargetconfigurations // AuditNotificationTargetConfigurations interface{} `field:"optional" json:"auditNotificationTargetConfigurations" yaml:"auditNotificationTargetConfigurations"` }
Properties for defining a `CfnAccountAuditConfiguration`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnAccountAuditConfigurationProps := &CfnAccountAuditConfigurationProps{ AccountId: jsii.String("accountId"), AuditCheckConfigurations: &AuditCheckConfigurationsProperty{ AuthenticatedCognitoRoleOverlyPermissiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, CaCertificateExpiringCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, CaCertificateKeyQualityCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, ConflictingClientIdsCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, DeviceCertificateExpiringCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, DeviceCertificateKeyQualityCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, DeviceCertificateSharedCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, IntermediateCaRevokedForActiveDeviceCertificatesCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, IotPolicyOverlyPermissiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, IoTPolicyPotentialMisConfigurationCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, IotRoleAliasAllowsAccessToUnusedServicesCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, IotRoleAliasOverlyPermissiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, LoggingDisabledCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, RevokedCaCertificateStillActiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, RevokedDeviceCertificateStillActiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, UnauthenticatedCognitoRoleOverlyPermissiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, }, RoleArn: jsii.String("roleArn"), // the properties below are optional AuditNotificationTargetConfigurations: &AuditNotificationTargetConfigurationsProperty{ Sns: &AuditNotificationTargetProperty{ Enabled: jsii.Boolean(false), RoleArn: jsii.String("roleArn"), TargetArn: jsii.String("targetArn"), }, }, }
type CfnAccountAuditConfiguration_AuditCheckConfigurationProperty ¶
type CfnAccountAuditConfiguration_AuditCheckConfigurationProperty struct { // True if this audit check is enabled for this account. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfiguration.html#cfn-iot-accountauditconfiguration-auditcheckconfiguration-enabled // Enabled interface{} `field:"optional" json:"enabled" yaml:"enabled"` }
Which audit checks are enabled and disabled for this account.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" auditCheckConfigurationProperty := &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }
type CfnAccountAuditConfiguration_AuditCheckConfigurationsProperty ¶
type CfnAccountAuditConfiguration_AuditCheckConfigurationsProperty struct { // Checks the permissiveness of an authenticated Amazon Cognito identity pool role. // // For this check, AWS IoT Device Defender audits all Amazon Cognito identity pools that have been used to connect to the AWS IoT message broker during the 31 days before the audit is performed. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-authenticatedcognitoroleoverlypermissivecheck // AuthenticatedCognitoRoleOverlyPermissiveCheck interface{} `field:"optional" json:"authenticatedCognitoRoleOverlyPermissiveCheck" yaml:"authenticatedCognitoRoleOverlyPermissiveCheck"` // Checks if a CA certificate is expiring. // // This check applies to CA certificates expiring within 30 days or that have expired. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-cacertificateexpiringcheck // CaCertificateExpiringCheck interface{} `field:"optional" json:"caCertificateExpiringCheck" yaml:"caCertificateExpiringCheck"` // Checks the quality of the CA certificate key. // // The quality checks if the key is in a valid format, not expired, and if the key meets a minimum required size. This check applies to CA certificates that are `ACTIVE` or `PENDING_TRANSFER` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-cacertificatekeyqualitycheck // CaCertificateKeyQualityCheck interface{} `field:"optional" json:"caCertificateKeyQualityCheck" yaml:"caCertificateKeyQualityCheck"` // Checks if multiple devices connect using the same client ID. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-conflictingclientidscheck // ConflictingClientIdsCheck interface{} `field:"optional" json:"conflictingClientIdsCheck" yaml:"conflictingClientIdsCheck"` // Checks if a device certificate is expiring. // // This check applies to device certificates expiring within 30 days or that have expired. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-devicecertificateexpiringcheck // DeviceCertificateExpiringCheck interface{} `field:"optional" json:"deviceCertificateExpiringCheck" yaml:"deviceCertificateExpiringCheck"` // Checks the quality of the device certificate key. // // The quality checks if the key is in a valid format, not expired, signed by a registered certificate authority, and if the key meets a minimum required size. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-devicecertificatekeyqualitycheck // DeviceCertificateKeyQualityCheck interface{} `field:"optional" json:"deviceCertificateKeyQualityCheck" yaml:"deviceCertificateKeyQualityCheck"` // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-devicecertificatesharedcheck // DeviceCertificateSharedCheck interface{} `field:"optional" json:"deviceCertificateSharedCheck" yaml:"deviceCertificateSharedCheck"` // The configuration for a specific audit check. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-intermediatecarevokedforactivedevicecertificatescheck // IntermediateCaRevokedForActiveDeviceCertificatesCheck interface{} `` /* 138-byte string literal not displayed */ // Checks the permissiveness of a policy attached to an authenticated Amazon Cognito identity pool role. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-iotpolicyoverlypermissivecheck // IotPolicyOverlyPermissiveCheck interface{} `field:"optional" json:"iotPolicyOverlyPermissiveCheck" yaml:"iotPolicyOverlyPermissiveCheck"` // The configuration for a specific audit check. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-iotpolicypotentialmisconfigurationcheck // IoTPolicyPotentialMisConfigurationCheck interface{} `field:"optional" json:"ioTPolicyPotentialMisConfigurationCheck" yaml:"ioTPolicyPotentialMisConfigurationCheck"` // Checks if a role alias has access to services that haven't been used for the AWS IoT device in the last year. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-iotrolealiasallowsaccesstounusedservicescheck // IotRoleAliasAllowsAccessToUnusedServicesCheck interface{} `field:"optional" json:"iotRoleAliasAllowsAccessToUnusedServicesCheck" yaml:"iotRoleAliasAllowsAccessToUnusedServicesCheck"` // Checks if the temporary credentials provided by AWS IoT role aliases are overly permissive. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-iotrolealiasoverlypermissivecheck // IotRoleAliasOverlyPermissiveCheck interface{} `field:"optional" json:"iotRoleAliasOverlyPermissiveCheck" yaml:"iotRoleAliasOverlyPermissiveCheck"` // Checks if AWS IoT logs are disabled. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-loggingdisabledcheck // LoggingDisabledCheck interface{} `field:"optional" json:"loggingDisabledCheck" yaml:"loggingDisabledCheck"` // Checks if a revoked CA certificate is still active. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-revokedcacertificatestillactivecheck // RevokedCaCertificateStillActiveCheck interface{} `field:"optional" json:"revokedCaCertificateStillActiveCheck" yaml:"revokedCaCertificateStillActiveCheck"` // Checks if a revoked device certificate is still active. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-revokeddevicecertificatestillactivecheck // RevokedDeviceCertificateStillActiveCheck interface{} `field:"optional" json:"revokedDeviceCertificateStillActiveCheck" yaml:"revokedDeviceCertificateStillActiveCheck"` // Checks if policy attached to an unauthenticated Amazon Cognito identity pool role is too permissive. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditcheckconfigurations.html#cfn-iot-accountauditconfiguration-auditcheckconfigurations-unauthenticatedcognitoroleoverlypermissivecheck // UnauthenticatedCognitoRoleOverlyPermissiveCheck interface{} `` /* 126-byte string literal not displayed */ }
The types of audit checks that can be performed.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" auditCheckConfigurationsProperty := &AuditCheckConfigurationsProperty{ AuthenticatedCognitoRoleOverlyPermissiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, CaCertificateExpiringCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, CaCertificateKeyQualityCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, ConflictingClientIdsCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, DeviceCertificateExpiringCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, DeviceCertificateKeyQualityCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, DeviceCertificateSharedCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, IntermediateCaRevokedForActiveDeviceCertificatesCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, IotPolicyOverlyPermissiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, IoTPolicyPotentialMisConfigurationCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, IotRoleAliasAllowsAccessToUnusedServicesCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, IotRoleAliasOverlyPermissiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, LoggingDisabledCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, RevokedCaCertificateStillActiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, RevokedDeviceCertificateStillActiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, UnauthenticatedCognitoRoleOverlyPermissiveCheck: &AuditCheckConfigurationProperty{ Enabled: jsii.Boolean(false), }, }
type CfnAccountAuditConfiguration_AuditNotificationTargetConfigurationsProperty ¶
type CfnAccountAuditConfiguration_AuditNotificationTargetConfigurationsProperty struct { // The `Sns` notification target. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditnotificationtargetconfigurations.html#cfn-iot-accountauditconfiguration-auditnotificationtargetconfigurations-sns // Sns interface{} `field:"optional" json:"sns" yaml:"sns"` }
The configuration of the audit notification target.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" auditNotificationTargetConfigurationsProperty := &AuditNotificationTargetConfigurationsProperty{ Sns: &AuditNotificationTargetProperty{ Enabled: jsii.Boolean(false), RoleArn: jsii.String("roleArn"), TargetArn: jsii.String("targetArn"), }, }
type CfnAccountAuditConfiguration_AuditNotificationTargetProperty ¶
type CfnAccountAuditConfiguration_AuditNotificationTargetProperty struct { // True if notifications to the target are enabled. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditnotificationtarget.html#cfn-iot-accountauditconfiguration-auditnotificationtarget-enabled // Enabled interface{} `field:"optional" json:"enabled" yaml:"enabled"` // The ARN of the role that grants permission to send notifications to the target. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditnotificationtarget.html#cfn-iot-accountauditconfiguration-auditnotificationtarget-rolearn // RoleArn *string `field:"optional" json:"roleArn" yaml:"roleArn"` // The ARN of the target (SNS topic) to which audit notifications are sent. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-accountauditconfiguration-auditnotificationtarget.html#cfn-iot-accountauditconfiguration-auditnotificationtarget-targetarn // TargetArn *string `field:"optional" json:"targetArn" yaml:"targetArn"` }
Information about the targets to which audit notifications are sent.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" auditNotificationTargetProperty := &AuditNotificationTargetProperty{ Enabled: jsii.Boolean(false), RoleArn: jsii.String("roleArn"), TargetArn: jsii.String("targetArn"), }
type CfnAuthorizer ¶
type CfnAuthorizer interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // The Amazon Resource Name (ARN) of the authorizer. AttrArn() *string // The authorizer's Lambda function ARN. AuthorizerFunctionArn() *string SetAuthorizerFunctionArn(val *string) // The authorizer name. AuthorizerName() *string SetAuthorizerName(val *string) // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // When `true` , the result from the authorizer's Lambda function is cached for clients that use persistent HTTP connections. EnableCachingForHttp() interface{} SetEnableCachingForHttp(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // Specifies whether AWS IoT validates the token signature in an authorization request. SigningDisabled() interface{} SetSigningDisabled(val interface{}) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // The status of the authorizer. Status() *string SetStatus(val *string) // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // Metadata which can be used to manage the custom authorizer. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // The key used to extract the token from the HTTP headers. TokenKeyName() *string SetTokenKeyName(val *string) // The public keys used to validate the token signature returned by your custom authentication service. TokenSigningPublicKeys() interface{} SetTokenSigningPublicKeys(val interface{}) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Specifies an authorizer.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnAuthorizer := awscdk.Aws_iot.NewCfnAuthorizer(this, jsii.String("MyCfnAuthorizer"), &CfnAuthorizerProps{ AuthorizerFunctionArn: jsii.String("authorizerFunctionArn"), // the properties below are optional AuthorizerName: jsii.String("authorizerName"), EnableCachingForHttp: jsii.Boolean(false), SigningDisabled: jsii.Boolean(false), Status: jsii.String("status"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, TokenKeyName: jsii.String("tokenKeyName"), TokenSigningPublicKeys: map[string]*string{ "tokenSigningPublicKeysKey": jsii.String("tokenSigningPublicKeys"), }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html
func NewCfnAuthorizer ¶
func NewCfnAuthorizer(scope constructs.Construct, id *string, props *CfnAuthorizerProps) CfnAuthorizer
type CfnAuthorizerProps ¶
type CfnAuthorizerProps struct { // The authorizer's Lambda function ARN. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html#cfn-iot-authorizer-authorizerfunctionarn // AuthorizerFunctionArn *string `field:"required" json:"authorizerFunctionArn" yaml:"authorizerFunctionArn"` // The authorizer name. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html#cfn-iot-authorizer-authorizername // AuthorizerName *string `field:"optional" json:"authorizerName" yaml:"authorizerName"` // When `true` , the result from the authorizer's Lambda function is cached for clients that use persistent HTTP connections. // // The results are cached for the time specified by the Lambda function in `refreshAfterInSeconds` . This value doesn't affect authorization of clients that use MQTT connections. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html#cfn-iot-authorizer-enablecachingforhttp // EnableCachingForHttp interface{} `field:"optional" json:"enableCachingForHttp" yaml:"enableCachingForHttp"` // Specifies whether AWS IoT validates the token signature in an authorization request. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html#cfn-iot-authorizer-signingdisabled // SigningDisabled interface{} `field:"optional" json:"signingDisabled" yaml:"signingDisabled"` // The status of the authorizer. // // Valid values: `ACTIVE` | `INACTIVE`. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html#cfn-iot-authorizer-status // Status *string `field:"optional" json:"status" yaml:"status"` // Metadata which can be used to manage the custom authorizer. // // > For URI Request parameters use format: ...key1=value1&key2=value2... // > // > For the CLI command-line parameter use format: &&tags "key1=value1&key2=value2..." // > // > For the cli-input-json file use format: "tags": "key1=value1&key2=value2..." // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html#cfn-iot-authorizer-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` // The key used to extract the token from the HTTP headers. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html#cfn-iot-authorizer-tokenkeyname // TokenKeyName *string `field:"optional" json:"tokenKeyName" yaml:"tokenKeyName"` // The public keys used to validate the token signature returned by your custom authentication service. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html#cfn-iot-authorizer-tokensigningpublickeys // TokenSigningPublicKeys interface{} `field:"optional" json:"tokenSigningPublicKeys" yaml:"tokenSigningPublicKeys"` }
Properties for defining a `CfnAuthorizer`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnAuthorizerProps := &CfnAuthorizerProps{ AuthorizerFunctionArn: jsii.String("authorizerFunctionArn"), // the properties below are optional AuthorizerName: jsii.String("authorizerName"), EnableCachingForHttp: jsii.Boolean(false), SigningDisabled: jsii.Boolean(false), Status: jsii.String("status"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, TokenKeyName: jsii.String("tokenKeyName"), TokenSigningPublicKeys: map[string]*string{ "tokenSigningPublicKeysKey": jsii.String("tokenSigningPublicKeys"), }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html
type CfnBillingGroup ¶ added in v2.80.0
type CfnBillingGroup interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // The ARN of the billing group. AttrArn() *string // The ID of the billing group. AttrId() *string // The name of the billing group. BillingGroupName() *string SetBillingGroupName(val *string) // The properties of the billing group. BillingGroupProperties() interface{} SetBillingGroupProperties(val interface{}) // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // Metadata which can be used to manage the billing group. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Creates a new billing group.
Requires permission to access the [CreateBillingGroup](https://docs.aws.amazon.com//service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions) action.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnBillingGroup := awscdk.Aws_iot.NewCfnBillingGroup(this, jsii.String("MyCfnBillingGroup"), &CfnBillingGroupProps{ BillingGroupName: jsii.String("billingGroupName"), BillingGroupProperties: &BillingGroupPropertiesProperty{ BillingGroupDescription: jsii.String("billingGroupDescription"), }, Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-billinggroup.html
func NewCfnBillingGroup ¶ added in v2.80.0
func NewCfnBillingGroup(scope constructs.Construct, id *string, props *CfnBillingGroupProps) CfnBillingGroup
type CfnBillingGroupProps ¶ added in v2.80.0
type CfnBillingGroupProps struct { // The name of the billing group. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-billinggroup.html#cfn-iot-billinggroup-billinggroupname // BillingGroupName *string `field:"optional" json:"billingGroupName" yaml:"billingGroupName"` // The properties of the billing group. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-billinggroup.html#cfn-iot-billinggroup-billinggroupproperties // BillingGroupProperties interface{} `field:"optional" json:"billingGroupProperties" yaml:"billingGroupProperties"` // Metadata which can be used to manage the billing group. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-billinggroup.html#cfn-iot-billinggroup-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnBillingGroup`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnBillingGroupProps := &CfnBillingGroupProps{ BillingGroupName: jsii.String("billingGroupName"), BillingGroupProperties: &BillingGroupPropertiesProperty{ BillingGroupDescription: jsii.String("billingGroupDescription"), }, Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-billinggroup.html
type CfnBillingGroup_BillingGroupPropertiesProperty ¶ added in v2.80.0
type CfnBillingGroup_BillingGroupPropertiesProperty struct { // The description of the billing group. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-billinggroup-billinggroupproperties.html#cfn-iot-billinggroup-billinggroupproperties-billinggroupdescription // BillingGroupDescription *string `field:"optional" json:"billingGroupDescription" yaml:"billingGroupDescription"` }
The properties of a billing group.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" billingGroupPropertiesProperty := &BillingGroupPropertiesProperty{ BillingGroupDescription: jsii.String("billingGroupDescription"), }
type CfnCACertificate ¶ added in v2.31.0
type CfnCACertificate interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // Returns the Amazon Resource Name (ARN) for the CA certificate. For example:. // // `{ "Fn::GetAtt": ["MyCACertificate", "Arn"] }` // // A value similar to the following is returned: // // `arn:aws:iot:us-east-1:123456789012:cacert/a6be6b84559801927e35a8f901fae08b5971d78d1562e29504ff9663b276a5f5`. AttrArn() *string // The CA certificate ID. AttrId() *string // Whether the CA certificate is configured for auto registration of device certificates. AutoRegistrationStatus() *string SetAutoRegistrationStatus(val *string) // The certificate data in PEM format. CaCertificatePem() *string SetCaCertificatePem(val *string) // The mode of the CA. CertificateMode() *string SetCertificateMode(val *string) // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // Information about the registration configuration. RegistrationConfig() interface{} SetRegistrationConfig(val interface{}) // If true, removes auto registration. RemoveAutoRegistration() interface{} SetRemoveAutoRegistration(val interface{}) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // The status of the CA certificate. Status() *string SetStatus(val *string) // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // An array of key-value pairs to apply to this resource. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // The private key verification certificate. VerificationCertificatePem() *string SetVerificationCertificatePem(val *string) // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Specifies a CA certificate.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnCACertificate := awscdk.Aws_iot.NewCfnCACertificate(this, jsii.String("MyCfnCACertificate"), &CfnCACertificateProps{ CaCertificatePem: jsii.String("caCertificatePem"), Status: jsii.String("status"), // the properties below are optional AutoRegistrationStatus: jsii.String("autoRegistrationStatus"), CertificateMode: jsii.String("certificateMode"), RegistrationConfig: &RegistrationConfigProperty{ RoleArn: jsii.String("roleArn"), TemplateBody: jsii.String("templateBody"), TemplateName: jsii.String("templateName"), }, RemoveAutoRegistration: jsii.Boolean(false), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, VerificationCertificatePem: jsii.String("verificationCertificatePem"), })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-cacertificate.html
func NewCfnCACertificate ¶ added in v2.31.0
func NewCfnCACertificate(scope constructs.Construct, id *string, props *CfnCACertificateProps) CfnCACertificate
type CfnCACertificateProps ¶ added in v2.31.0
type CfnCACertificateProps struct { // The certificate data in PEM format. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-cacertificate.html#cfn-iot-cacertificate-cacertificatepem // CaCertificatePem *string `field:"required" json:"caCertificatePem" yaml:"caCertificatePem"` // The status of the CA certificate. // // Valid values are "ACTIVE" and "INACTIVE". // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-cacertificate.html#cfn-iot-cacertificate-status // Status *string `field:"required" json:"status" yaml:"status"` // Whether the CA certificate is configured for auto registration of device certificates. // // Valid values are "ENABLE" and "DISABLE". // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-cacertificate.html#cfn-iot-cacertificate-autoregistrationstatus // AutoRegistrationStatus *string `field:"optional" json:"autoRegistrationStatus" yaml:"autoRegistrationStatus"` // The mode of the CA. // // All the device certificates that are registered using this CA will be registered in the same mode as the CA. For more information about certificate mode for device certificates, see [certificate mode](https://docs.aws.amazon.com//iot/latest/apireference/API_CertificateDescription.html#iot-Type-CertificateDescription-certificateMode) . // // Valid values are "DEFAULT" and "SNI_ONLY". // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-cacertificate.html#cfn-iot-cacertificate-certificatemode // CertificateMode *string `field:"optional" json:"certificateMode" yaml:"certificateMode"` // Information about the registration configuration. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-cacertificate.html#cfn-iot-cacertificate-registrationconfig // RegistrationConfig interface{} `field:"optional" json:"registrationConfig" yaml:"registrationConfig"` // If true, removes auto registration. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-cacertificate.html#cfn-iot-cacertificate-removeautoregistration // RemoveAutoRegistration interface{} `field:"optional" json:"removeAutoRegistration" yaml:"removeAutoRegistration"` // An array of key-value pairs to apply to this resource. // // For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-cacertificate.html#cfn-iot-cacertificate-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` // The private key verification certificate. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-cacertificate.html#cfn-iot-cacertificate-verificationcertificatepem // VerificationCertificatePem *string `field:"optional" json:"verificationCertificatePem" yaml:"verificationCertificatePem"` }
Properties for defining a `CfnCACertificate`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnCACertificateProps := &CfnCACertificateProps{ CaCertificatePem: jsii.String("caCertificatePem"), Status: jsii.String("status"), // the properties below are optional AutoRegistrationStatus: jsii.String("autoRegistrationStatus"), CertificateMode: jsii.String("certificateMode"), RegistrationConfig: &RegistrationConfigProperty{ RoleArn: jsii.String("roleArn"), TemplateBody: jsii.String("templateBody"), TemplateName: jsii.String("templateName"), }, RemoveAutoRegistration: jsii.Boolean(false), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, VerificationCertificatePem: jsii.String("verificationCertificatePem"), }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-cacertificate.html
type CfnCACertificate_RegistrationConfigProperty ¶ added in v2.37.0
type CfnCACertificate_RegistrationConfigProperty struct { // The ARN of the role. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cacertificate-registrationconfig.html#cfn-iot-cacertificate-registrationconfig-rolearn // RoleArn *string `field:"optional" json:"roleArn" yaml:"roleArn"` // The template body. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cacertificate-registrationconfig.html#cfn-iot-cacertificate-registrationconfig-templatebody // TemplateBody *string `field:"optional" json:"templateBody" yaml:"templateBody"` // The name of the provisioning template. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cacertificate-registrationconfig.html#cfn-iot-cacertificate-registrationconfig-templatename // TemplateName *string `field:"optional" json:"templateName" yaml:"templateName"` }
The registration configuration.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" registrationConfigProperty := &RegistrationConfigProperty{ RoleArn: jsii.String("roleArn"), TemplateBody: jsii.String("templateBody"), TemplateName: jsii.String("templateName"), }
type CfnCertificate ¶
type CfnCertificate interface { awscdk.CfnResource awscdk.IInspectable // Returns the Amazon Resource Name (ARN) for the certificate. For example:. // // `{ "Fn::GetAtt": ["MyCertificate", "Arn"] }` // // A value similar to the following is returned: // // `arn:aws:iot:ap-southeast-2:123456789012:cert/a1234567b89c012d3e4fg567hij8k9l01mno1p23q45678901rs234567890t1u2`. AttrArn() *string // The certificate ID. AttrId() *string // The CA certificate used to sign the device certificate being registered, not available when CertificateMode is SNI_ONLY. CaCertificatePem() *string SetCaCertificatePem(val *string) // Specifies which mode of certificate registration to use with this resource. CertificateMode() *string SetCertificateMode(val *string) // The certificate data in PEM format. CertificatePem() *string SetCertificatePem(val *string) // The certificate signing request (CSR). CertificateSigningRequest() *string SetCertificateSigningRequest(val *string) // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // The status of the certificate. Status() *string SetStatus(val *string) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Use the `AWS::IoT::Certificate` resource to declare an AWS IoT X.509 certificate. For information about working with X.509 certificates, see [X.509 Client Certificates](https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html) in the *AWS IoT Developer Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnCertificate := awscdk.Aws_iot.NewCfnCertificate(this, jsii.String("MyCfnCertificate"), &CfnCertificateProps{ Status: jsii.String("status"), // the properties below are optional CaCertificatePem: jsii.String("caCertificatePem"), CertificateMode: jsii.String("certificateMode"), CertificatePem: jsii.String("certificatePem"), CertificateSigningRequest: jsii.String("certificateSigningRequest"), })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html
func NewCfnCertificate ¶
func NewCfnCertificate(scope constructs.Construct, id *string, props *CfnCertificateProps) CfnCertificate
type CfnCertificateProps ¶
type CfnCertificateProps struct { // The status of the certificate. // // Valid values are ACTIVE, INACTIVE, REVOKED, PENDING_TRANSFER, and PENDING_ACTIVATION. // // The status value REGISTER_INACTIVE is deprecated and should not be used. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-status // Status *string `field:"required" json:"status" yaml:"status"` // The CA certificate used to sign the device certificate being registered, not available when CertificateMode is SNI_ONLY. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-cacertificatepem // CaCertificatePem *string `field:"optional" json:"caCertificatePem" yaml:"caCertificatePem"` // Specifies which mode of certificate registration to use with this resource. // // Valid options are DEFAULT with CaCertificatePem and CertificatePem, SNI_ONLY with CertificatePem, and Default with CertificateSigningRequest. // // `DEFAULT` : A certificate in `DEFAULT` mode is either generated by AWS IoT Core or registered with an issuer certificate authority (CA). Devices with certificates in `DEFAULT` mode aren't required to send the Server Name Indication (SNI) extension when connecting to AWS IoT Core . However, to use features such as custom domains and VPC endpoints, we recommend that you use the SNI extension when connecting to AWS IoT Core . // // `SNI_ONLY` : A certificate in `SNI_ONLY` mode is registered without an issuer CA. Devices with certificates in `SNI_ONLY` mode must send the SNI extension when connecting to AWS IoT Core . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-certificatemode // CertificateMode *string `field:"optional" json:"certificateMode" yaml:"certificateMode"` // The certificate data in PEM format. // // Requires SNI_ONLY for the certificate mode or the accompanying CACertificatePem for registration. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-certificatepem // CertificatePem *string `field:"optional" json:"certificatePem" yaml:"certificatePem"` // The certificate signing request (CSR). // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-certificatesigningrequest // CertificateSigningRequest *string `field:"optional" json:"certificateSigningRequest" yaml:"certificateSigningRequest"` }
Properties for defining a `CfnCertificate`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnCertificateProps := &CfnCertificateProps{ Status: jsii.String("status"), // the properties below are optional CaCertificatePem: jsii.String("caCertificatePem"), CertificateMode: jsii.String("certificateMode"), CertificatePem: jsii.String("certificatePem"), CertificateSigningRequest: jsii.String("certificateSigningRequest"), }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html
type CfnCustomMetric ¶
type CfnCustomMetric interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // The Amazon Resource Number (ARN) of the custom metric; // // for example, `arn: *aws-partition* :iot: *region* : *accountId* :custommetric/ *metricName*` . AttrMetricArn() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The friendly name in the console for the custom metric. DisplayName() *string SetDisplayName(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The name of the custom metric. MetricName() *string SetMetricName(val *string) // The type of the custom metric. // // Types include `string-list` , `ip-address-list` , `number-list` , and `number` . MetricType() *string SetMetricType(val *string) // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // Metadata that can be used to manage the custom metric. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Use the `AWS::IoT::CustomMetric` resource to define a custom metric published by your devices to Device Defender.
For API reference, see [CreateCustomMetric](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateCustomMetric.html) and for general information, see [Custom metrics](https://docs.aws.amazon.com/iot/latest/developerguide/dd-detect-custom-metrics.html) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnCustomMetric := awscdk.Aws_iot.NewCfnCustomMetric(this, jsii.String("MyCfnCustomMetric"), &CfnCustomMetricProps{ MetricType: jsii.String("metricType"), // the properties below are optional DisplayName: jsii.String("displayName"), MetricName: jsii.String("metricName"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-custommetric.html
func NewCfnCustomMetric ¶
func NewCfnCustomMetric(scope constructs.Construct, id *string, props *CfnCustomMetricProps) CfnCustomMetric
type CfnCustomMetricProps ¶
type CfnCustomMetricProps struct { // The type of the custom metric. Types include `string-list` , `ip-address-list` , `number-list` , and `number` . // // > The type `number` only takes a single metric value as an input, but when you submit the metrics value in the DeviceMetrics report, you must pass it as an array with a single value. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-custommetric.html#cfn-iot-custommetric-metrictype // MetricType *string `field:"required" json:"metricType" yaml:"metricType"` // The friendly name in the console for the custom metric. // // This name doesn't have to be unique. Don't use this name as the metric identifier in the device metric report. You can update the friendly name after you define it. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-custommetric.html#cfn-iot-custommetric-displayname // DisplayName *string `field:"optional" json:"displayName" yaml:"displayName"` // The name of the custom metric. // // This will be used in the metric report submitted from the device/thing. The name can't begin with `aws:` . You can’t change the name after you define it. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-custommetric.html#cfn-iot-custommetric-metricname // MetricName *string `field:"optional" json:"metricName" yaml:"metricName"` // Metadata that can be used to manage the custom metric. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-custommetric.html#cfn-iot-custommetric-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnCustomMetric`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnCustomMetricProps := &CfnCustomMetricProps{ MetricType: jsii.String("metricType"), // the properties below are optional DisplayName: jsii.String("displayName"), MetricName: jsii.String("metricName"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-custommetric.html
type CfnDimension ¶
type CfnDimension interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // The Amazon Resource Name (ARN) of the dimension. AttrArn() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // A unique identifier for the dimension. Name() *string SetName(val *string) // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Specifies the value or list of values for the dimension. StringValues() *[]*string SetStringValues(val *[]*string) // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // Metadata that can be used to manage the dimension. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // Specifies the type of dimension. Type() *string SetType(val *string) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Use the `AWS::IoT::Dimension` to limit the scope of a metric used in a security profile for AWS IoT Device Defender .
For example, using a `TOPIC_FILTER` dimension, you can narrow down the scope of the metric to only MQTT topics where the name matches the pattern specified in the dimension. For API reference, see [CreateDimension](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateDimension.html) and for general information, see [Scoping metrics in security profiles using dimensions](https://docs.aws.amazon.com/iot/latest/developerguide/scoping-security-behavior.html) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnDimension := awscdk.Aws_iot.NewCfnDimension(this, jsii.String("MyCfnDimension"), &CfnDimensionProps{ StringValues: []*string{ jsii.String("stringValues"), }, Type: jsii.String("type"), // the properties below are optional Name: jsii.String("name"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-dimension.html
func NewCfnDimension ¶
func NewCfnDimension(scope constructs.Construct, id *string, props *CfnDimensionProps) CfnDimension
type CfnDimensionProps ¶
type CfnDimensionProps struct { // Specifies the value or list of values for the dimension. // // For `TOPIC_FILTER` dimensions, this is a pattern used to match the MQTT topic (for example, "admin/#"). // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-dimension.html#cfn-iot-dimension-stringvalues // StringValues *[]*string `field:"required" json:"stringValues" yaml:"stringValues"` // Specifies the type of dimension. // // Supported types: `TOPIC_FILTER.` // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-dimension.html#cfn-iot-dimension-type // Type *string `field:"required" json:"type" yaml:"type"` // A unique identifier for the dimension. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-dimension.html#cfn-iot-dimension-name // Name *string `field:"optional" json:"name" yaml:"name"` // Metadata that can be used to manage the dimension. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-dimension.html#cfn-iot-dimension-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnDimension`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnDimensionProps := &CfnDimensionProps{ StringValues: []*string{ jsii.String("stringValues"), }, Type: jsii.String("type"), // the properties below are optional Name: jsii.String("name"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-dimension.html
type CfnDomainConfiguration ¶
type CfnDomainConfiguration interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // The Amazon Resource Name (ARN) of the domain configuration. AttrArn() *string // The type of service delivered by the domain. AttrDomainType() *string // The ARNs of the certificates that AWS IoT passes to the device during the TLS handshake. // // Currently you can specify only one certificate ARN. This value is not required for AWS -managed domains. AttrServerCertificates() awscdk.IResolvable // An object that specifies the authorization service for a domain. AuthorizerConfig() interface{} SetAuthorizerConfig(val interface{}) // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The name of the domain configuration. DomainConfigurationName() *string SetDomainConfigurationName(val *string) // The status to which the domain configuration should be updated. DomainConfigurationStatus() *string SetDomainConfigurationStatus(val *string) // The name of the domain. DomainName() *string SetDomainName(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The ARNs of the certificates that AWS IoT passes to the device during the TLS handshake. ServerCertificateArns() *[]*string SetServerCertificateArns(val *[]*string) // The type of service delivered by the endpoint. ServiceType() *string SetServiceType(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // Metadata which can be used to manage the domain configuration. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // An object that specifies the TLS configuration for a domain. TlsConfig() interface{} SetTlsConfig(val interface{}) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // The certificate used to validate the server certificate and prove domain name ownership. ValidationCertificateArn() *string SetValidationCertificateArn(val *string) // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Specifies a domain configuration.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnDomainConfiguration := awscdk.Aws_iot.NewCfnDomainConfiguration(this, jsii.String("MyCfnDomainConfiguration"), &CfnDomainConfigurationProps{ AuthorizerConfig: &AuthorizerConfigProperty{ AllowAuthorizerOverride: jsii.Boolean(false), DefaultAuthorizerName: jsii.String("defaultAuthorizerName"), }, DomainConfigurationName: jsii.String("domainConfigurationName"), DomainConfigurationStatus: jsii.String("domainConfigurationStatus"), DomainName: jsii.String("domainName"), ServerCertificateArns: []*string{ jsii.String("serverCertificateArns"), }, ServiceType: jsii.String("serviceType"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, TlsConfig: &TlsConfigProperty{ SecurityPolicy: jsii.String("securityPolicy"), }, ValidationCertificateArn: jsii.String("validationCertificateArn"), })
func NewCfnDomainConfiguration ¶
func NewCfnDomainConfiguration(scope constructs.Construct, id *string, props *CfnDomainConfigurationProps) CfnDomainConfiguration
type CfnDomainConfigurationProps ¶
type CfnDomainConfigurationProps struct { // An object that specifies the authorization service for a domain. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-domainconfiguration.html#cfn-iot-domainconfiguration-authorizerconfig // AuthorizerConfig interface{} `field:"optional" json:"authorizerConfig" yaml:"authorizerConfig"` // The name of the domain configuration. // // This value must be unique to a region. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-domainconfiguration.html#cfn-iot-domainconfiguration-domainconfigurationname // DomainConfigurationName *string `field:"optional" json:"domainConfigurationName" yaml:"domainConfigurationName"` // The status to which the domain configuration should be updated. // // Valid values: `ENABLED` | `DISABLED`. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-domainconfiguration.html#cfn-iot-domainconfiguration-domainconfigurationstatus // DomainConfigurationStatus *string `field:"optional" json:"domainConfigurationStatus" yaml:"domainConfigurationStatus"` // The name of the domain. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-domainconfiguration.html#cfn-iot-domainconfiguration-domainname // DomainName *string `field:"optional" json:"domainName" yaml:"domainName"` // The ARNs of the certificates that AWS IoT passes to the device during the TLS handshake. // // Currently you can specify only one certificate ARN. This value is not required for AWS -managed domains. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-domainconfiguration.html#cfn-iot-domainconfiguration-servercertificatearns // ServerCertificateArns *[]*string `field:"optional" json:"serverCertificateArns" yaml:"serverCertificateArns"` // The type of service delivered by the endpoint. // // > AWS IoT Core currently supports only the `DATA` service type. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-domainconfiguration.html#cfn-iot-domainconfiguration-servicetype // ServiceType *string `field:"optional" json:"serviceType" yaml:"serviceType"` // Metadata which can be used to manage the domain configuration. // // > For URI Request parameters use format: ...key1=value1&key2=value2... // > // > For the CLI command-line parameter use format: &&tags "key1=value1&key2=value2..." // > // > For the cli-input-json file use format: "tags": "key1=value1&key2=value2..." // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-domainconfiguration.html#cfn-iot-domainconfiguration-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` // An object that specifies the TLS configuration for a domain. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-domainconfiguration.html#cfn-iot-domainconfiguration-tlsconfig // TlsConfig interface{} `field:"optional" json:"tlsConfig" yaml:"tlsConfig"` // The certificate used to validate the server certificate and prove domain name ownership. // // This certificate must be signed by a public certificate authority. This value is not required for AWS -managed domains. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-domainconfiguration.html#cfn-iot-domainconfiguration-validationcertificatearn // ValidationCertificateArn *string `field:"optional" json:"validationCertificateArn" yaml:"validationCertificateArn"` }
Properties for defining a `CfnDomainConfiguration`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnDomainConfigurationProps := &CfnDomainConfigurationProps{ AuthorizerConfig: &AuthorizerConfigProperty{ AllowAuthorizerOverride: jsii.Boolean(false), DefaultAuthorizerName: jsii.String("defaultAuthorizerName"), }, DomainConfigurationName: jsii.String("domainConfigurationName"), DomainConfigurationStatus: jsii.String("domainConfigurationStatus"), DomainName: jsii.String("domainName"), ServerCertificateArns: []*string{ jsii.String("serverCertificateArns"), }, ServiceType: jsii.String("serviceType"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, TlsConfig: &TlsConfigProperty{ SecurityPolicy: jsii.String("securityPolicy"), }, ValidationCertificateArn: jsii.String("validationCertificateArn"), }
type CfnDomainConfiguration_AuthorizerConfigProperty ¶
type CfnDomainConfiguration_AuthorizerConfigProperty struct { // A Boolean that specifies whether the domain configuration's authorization service can be overridden. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-domainconfiguration-authorizerconfig.html#cfn-iot-domainconfiguration-authorizerconfig-allowauthorizeroverride // AllowAuthorizerOverride interface{} `field:"optional" json:"allowAuthorizerOverride" yaml:"allowAuthorizerOverride"` // The name of the authorization service for a domain configuration. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-domainconfiguration-authorizerconfig.html#cfn-iot-domainconfiguration-authorizerconfig-defaultauthorizername // DefaultAuthorizerName *string `field:"optional" json:"defaultAuthorizerName" yaml:"defaultAuthorizerName"` }
An object that specifies the authorization service for a domain.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" authorizerConfigProperty := &AuthorizerConfigProperty{ AllowAuthorizerOverride: jsii.Boolean(false), DefaultAuthorizerName: jsii.String("defaultAuthorizerName"), }
type CfnDomainConfiguration_ServerCertificateSummaryProperty ¶
type CfnDomainConfiguration_ServerCertificateSummaryProperty struct { // The ARN of the server certificate. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-domainconfiguration-servercertificatesummary.html#cfn-iot-domainconfiguration-servercertificatesummary-servercertificatearn // ServerCertificateArn *string `field:"optional" json:"serverCertificateArn" yaml:"serverCertificateArn"` // The status of the server certificate. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-domainconfiguration-servercertificatesummary.html#cfn-iot-domainconfiguration-servercertificatesummary-servercertificatestatus // ServerCertificateStatus *string `field:"optional" json:"serverCertificateStatus" yaml:"serverCertificateStatus"` // Details that explain the status of the server certificate. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-domainconfiguration-servercertificatesummary.html#cfn-iot-domainconfiguration-servercertificatesummary-servercertificatestatusdetail // ServerCertificateStatusDetail *string `field:"optional" json:"serverCertificateStatusDetail" yaml:"serverCertificateStatusDetail"` }
An object that contains information about a server certificate.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" serverCertificateSummaryProperty := &ServerCertificateSummaryProperty{ ServerCertificateArn: jsii.String("serverCertificateArn"), ServerCertificateStatus: jsii.String("serverCertificateStatus"), ServerCertificateStatusDetail: jsii.String("serverCertificateStatusDetail"), }
type CfnDomainConfiguration_TlsConfigProperty ¶ added in v2.78.0
type CfnDomainConfiguration_TlsConfigProperty struct { // The security policy for a domain configuration. // // For more information, see [Security policies](https://docs.aws.amazon.com/iot/latest/developerguide/transport-security.html#tls-policy-table) in the *AWS IoT Core developer guide* . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-domainconfiguration-tlsconfig.html#cfn-iot-domainconfiguration-tlsconfig-securitypolicy // SecurityPolicy *string `field:"optional" json:"securityPolicy" yaml:"securityPolicy"` }
An object that specifies the TLS configuration for a domain.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" tlsConfigProperty := &TlsConfigProperty{ SecurityPolicy: jsii.String("securityPolicy"), }
type CfnFleetMetric ¶
type CfnFleetMetric interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // The field to aggregate. AggregationField() *string SetAggregationField(val *string) // The type of the aggregation query. AggregationType() interface{} SetAggregationType(val interface{}) // The time the fleet metric was created. AttrCreationDate() awscdk.IResolvable // The time the fleet metric was last modified. AttrLastModifiedDate() awscdk.IResolvable // The Amazon Resource Name (ARN) of the fleet metric. AttrMetricArn() *string // The fleet metric version. AttrVersion() awscdk.IResolvable // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The fleet metric description. Description() *string SetDescription(val *string) // The name of the index to search. IndexName() *string SetIndexName(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The name of the fleet metric to create. MetricName() *string SetMetricName(val *string) // The tree node. Node() constructs.Node // The time in seconds between fleet metric emissions. Period() *float64 SetPeriod(val *float64) // The search query string. QueryString() *string SetQueryString(val *string) // The query version. QueryVersion() *string SetQueryVersion(val *string) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // Metadata which can be used to manage the fleet metric. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // Used to support unit transformation such as milliseconds to seconds. Unit() *string SetUnit(val *string) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Use the `AWS::IoT::FleetMetric` resource to declare a fleet metric.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnFleetMetric := awscdk.Aws_iot.NewCfnFleetMetric(this, jsii.String("MyCfnFleetMetric"), &CfnFleetMetricProps{ MetricName: jsii.String("metricName"), // the properties below are optional AggregationField: jsii.String("aggregationField"), AggregationType: &AggregationTypeProperty{ Name: jsii.String("name"), Values: []*string{ jsii.String("values"), }, }, Description: jsii.String("description"), IndexName: jsii.String("indexName"), Period: jsii.Number(123), QueryString: jsii.String("queryString"), QueryVersion: jsii.String("queryVersion"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, Unit: jsii.String("unit"), })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-fleetmetric.html
func NewCfnFleetMetric ¶
func NewCfnFleetMetric(scope constructs.Construct, id *string, props *CfnFleetMetricProps) CfnFleetMetric
type CfnFleetMetricProps ¶
type CfnFleetMetricProps struct { // The name of the fleet metric to create. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-fleetmetric.html#cfn-iot-fleetmetric-metricname // MetricName *string `field:"required" json:"metricName" yaml:"metricName"` // The field to aggregate. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-fleetmetric.html#cfn-iot-fleetmetric-aggregationfield // AggregationField *string `field:"optional" json:"aggregationField" yaml:"aggregationField"` // The type of the aggregation query. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-fleetmetric.html#cfn-iot-fleetmetric-aggregationtype // AggregationType interface{} `field:"optional" json:"aggregationType" yaml:"aggregationType"` // The fleet metric description. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-fleetmetric.html#cfn-iot-fleetmetric-description // Description *string `field:"optional" json:"description" yaml:"description"` // The name of the index to search. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-fleetmetric.html#cfn-iot-fleetmetric-indexname // IndexName *string `field:"optional" json:"indexName" yaml:"indexName"` // The time in seconds between fleet metric emissions. // // Range [60(1 min), 86400(1 day)] and must be multiple of 60. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-fleetmetric.html#cfn-iot-fleetmetric-period // Period *float64 `field:"optional" json:"period" yaml:"period"` // The search query string. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-fleetmetric.html#cfn-iot-fleetmetric-querystring // QueryString *string `field:"optional" json:"queryString" yaml:"queryString"` // The query version. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-fleetmetric.html#cfn-iot-fleetmetric-queryversion // QueryVersion *string `field:"optional" json:"queryVersion" yaml:"queryVersion"` // Metadata which can be used to manage the fleet metric. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-fleetmetric.html#cfn-iot-fleetmetric-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` // Used to support unit transformation such as milliseconds to seconds. // // Must be a unit supported by CW metric. Default to null. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-fleetmetric.html#cfn-iot-fleetmetric-unit // Unit *string `field:"optional" json:"unit" yaml:"unit"` }
Properties for defining a `CfnFleetMetric`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnFleetMetricProps := &CfnFleetMetricProps{ MetricName: jsii.String("metricName"), // the properties below are optional AggregationField: jsii.String("aggregationField"), AggregationType: &AggregationTypeProperty{ Name: jsii.String("name"), Values: []*string{ jsii.String("values"), }, }, Description: jsii.String("description"), IndexName: jsii.String("indexName"), Period: jsii.Number(123), QueryString: jsii.String("queryString"), QueryVersion: jsii.String("queryVersion"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, Unit: jsii.String("unit"), }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-fleetmetric.html
type CfnFleetMetric_AggregationTypeProperty ¶
type CfnFleetMetric_AggregationTypeProperty struct { // The name of the aggregation type. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-fleetmetric-aggregationtype.html#cfn-iot-fleetmetric-aggregationtype-name // Name *string `field:"required" json:"name" yaml:"name"` // A list of the values of aggregation types. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-fleetmetric-aggregationtype.html#cfn-iot-fleetmetric-aggregationtype-values // Values *[]*string `field:"required" json:"values" yaml:"values"` }
The type of aggregation queries.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" aggregationTypeProperty := &AggregationTypeProperty{ Name: jsii.String("name"), Values: []*string{ jsii.String("values"), }, }
type CfnJobTemplate ¶
type CfnJobTemplate interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // The criteria that determine when and how a job abort takes place. AbortConfig() interface{} SetAbortConfig(val interface{}) // The ARN of the job to use as the basis for the job template. AttrArn() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // A description of the job template. Description() *string SetDescription(val *string) DestinationPackageVersions() *[]*string SetDestinationPackageVersions(val *[]*string) // The job document. Document() *string SetDocument(val *string) // An S3 link, or S3 object URL, to the job document. DocumentSource() *string SetDocumentSource(val *string) // The ARN of the job to use as the basis for the job template. JobArn() *string SetJobArn(val *string) // Allows you to create the criteria to retry a job. JobExecutionsRetryConfig() interface{} SetJobExecutionsRetryConfig(val interface{}) // Allows you to create a staged rollout of a job. JobExecutionsRolloutConfig() interface{} SetJobExecutionsRolloutConfig(val interface{}) // A unique identifier for the job template. JobTemplateId() *string SetJobTemplateId(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // An optional configuration within the SchedulingConfig to setup a recurring maintenance window with a predetermined start time and duration for the rollout of a job document to all devices in a target group for a job. MaintenanceWindows() interface{} SetMaintenanceWindows(val interface{}) // The tree node. Node() constructs.Node // Configuration for pre-signed S3 URLs. PresignedUrlConfig() interface{} SetPresignedUrlConfig(val interface{}) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // Metadata that can be used to manage the job template. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // Specifies the amount of time each device has to finish its execution of the job. TimeoutConfig() interface{} SetTimeoutConfig(val interface{}) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Represents a job template.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var abortConfig interface{} var jobExecutionsRolloutConfig interface{} var presignedUrlConfig interface{} var timeoutConfig interface{} cfnJobTemplate := awscdk.Aws_iot.NewCfnJobTemplate(this, jsii.String("MyCfnJobTemplate"), &CfnJobTemplateProps{ Description: jsii.String("description"), JobTemplateId: jsii.String("jobTemplateId"), // the properties below are optional AbortConfig: abortConfig, DestinationPackageVersions: []*string{ jsii.String("destinationPackageVersions"), }, Document: jsii.String("document"), DocumentSource: jsii.String("documentSource"), JobArn: jsii.String("jobArn"), JobExecutionsRetryConfig: &JobExecutionsRetryConfigProperty{ RetryCriteriaList: []interface{}{ &RetryCriteriaProperty{ FailureType: jsii.String("failureType"), NumberOfRetries: jsii.Number(123), }, }, }, JobExecutionsRolloutConfig: jobExecutionsRolloutConfig, MaintenanceWindows: []interface{}{ &MaintenanceWindowProperty{ DurationInMinutes: jsii.Number(123), StartTime: jsii.String("startTime"), }, }, PresignedUrlConfig: presignedUrlConfig, Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, TimeoutConfig: timeoutConfig, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html
func NewCfnJobTemplate ¶
func NewCfnJobTemplate(scope constructs.Construct, id *string, props *CfnJobTemplateProps) CfnJobTemplate
type CfnJobTemplateProps ¶
type CfnJobTemplateProps struct { // A description of the job template. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html#cfn-iot-jobtemplate-description // Description *string `field:"required" json:"description" yaml:"description"` // A unique identifier for the job template. // // We recommend using a UUID. Alpha-numeric characters, "-", and "_" are valid for use here. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html#cfn-iot-jobtemplate-jobtemplateid // JobTemplateId *string `field:"required" json:"jobTemplateId" yaml:"jobTemplateId"` // The criteria that determine when and how a job abort takes place. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html#cfn-iot-jobtemplate-abortconfig // AbortConfig interface{} `field:"optional" json:"abortConfig" yaml:"abortConfig"` // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html#cfn-iot-jobtemplate-destinationpackageversions // DestinationPackageVersions *[]*string `field:"optional" json:"destinationPackageVersions" yaml:"destinationPackageVersions"` // The job document. // // Required if you don't specify a value for `documentSource` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html#cfn-iot-jobtemplate-document // Document *string `field:"optional" json:"document" yaml:"document"` // An S3 link, or S3 object URL, to the job document. // // The link is an Amazon S3 object URL and is required if you don't specify a value for `document` . // // For example, `--document-source https://s3. *region-code* .amazonaws.com/example-firmware/device-firmware.1.0` // // For more information, see [Methods for accessing a bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-bucket-intro.html) . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html#cfn-iot-jobtemplate-documentsource // DocumentSource *string `field:"optional" json:"documentSource" yaml:"documentSource"` // The ARN of the job to use as the basis for the job template. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html#cfn-iot-jobtemplate-jobarn // JobArn *string `field:"optional" json:"jobArn" yaml:"jobArn"` // Allows you to create the criteria to retry a job. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html#cfn-iot-jobtemplate-jobexecutionsretryconfig // JobExecutionsRetryConfig interface{} `field:"optional" json:"jobExecutionsRetryConfig" yaml:"jobExecutionsRetryConfig"` // Allows you to create a staged rollout of a job. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html#cfn-iot-jobtemplate-jobexecutionsrolloutconfig // JobExecutionsRolloutConfig interface{} `field:"optional" json:"jobExecutionsRolloutConfig" yaml:"jobExecutionsRolloutConfig"` // An optional configuration within the SchedulingConfig to setup a recurring maintenance window with a predetermined start time and duration for the rollout of a job document to all devices in a target group for a job. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html#cfn-iot-jobtemplate-maintenancewindows // MaintenanceWindows interface{} `field:"optional" json:"maintenanceWindows" yaml:"maintenanceWindows"` // Configuration for pre-signed S3 URLs. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html#cfn-iot-jobtemplate-presignedurlconfig // PresignedUrlConfig interface{} `field:"optional" json:"presignedUrlConfig" yaml:"presignedUrlConfig"` // Metadata that can be used to manage the job template. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html#cfn-iot-jobtemplate-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` // Specifies the amount of time each device has to finish its execution of the job. // // A timer is started when the job execution status is set to `IN_PROGRESS` . If the job execution status is not set to another terminal state before the timer expires, it will be automatically set to `TIMED_OUT` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html#cfn-iot-jobtemplate-timeoutconfig // TimeoutConfig interface{} `field:"optional" json:"timeoutConfig" yaml:"timeoutConfig"` }
Properties for defining a `CfnJobTemplate`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var abortConfig interface{} var jobExecutionsRolloutConfig interface{} var presignedUrlConfig interface{} var timeoutConfig interface{} cfnJobTemplateProps := &CfnJobTemplateProps{ Description: jsii.String("description"), JobTemplateId: jsii.String("jobTemplateId"), // the properties below are optional AbortConfig: abortConfig, DestinationPackageVersions: []*string{ jsii.String("destinationPackageVersions"), }, Document: jsii.String("document"), DocumentSource: jsii.String("documentSource"), JobArn: jsii.String("jobArn"), JobExecutionsRetryConfig: &JobExecutionsRetryConfigProperty{ RetryCriteriaList: []interface{}{ &RetryCriteriaProperty{ FailureType: jsii.String("failureType"), NumberOfRetries: jsii.Number(123), }, }, }, JobExecutionsRolloutConfig: jobExecutionsRolloutConfig, MaintenanceWindows: []interface{}{ &MaintenanceWindowProperty{ DurationInMinutes: jsii.Number(123), StartTime: jsii.String("startTime"), }, }, PresignedUrlConfig: presignedUrlConfig, Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, TimeoutConfig: timeoutConfig, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html
type CfnJobTemplate_AbortConfigProperty ¶ added in v2.55.0
type CfnJobTemplate_AbortConfigProperty struct { // The list of criteria that determine when and how to abort the job. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-abortconfig.html#cfn-iot-jobtemplate-abortconfig-criterialist // CriteriaList interface{} `field:"required" json:"criteriaList" yaml:"criteriaList"` }
The criteria that determine when and how a job abort takes place.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" abortConfigProperty := &AbortConfigProperty{ CriteriaList: []interface{}{ &AbortCriteriaProperty{ Action: jsii.String("action"), FailureType: jsii.String("failureType"), MinNumberOfExecutedThings: jsii.Number(123), ThresholdPercentage: jsii.Number(123), }, }, }
type CfnJobTemplate_AbortCriteriaProperty ¶ added in v2.55.0
type CfnJobTemplate_AbortCriteriaProperty struct { // The type of job action to take to initiate the job abort. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-abortcriteria.html#cfn-iot-jobtemplate-abortcriteria-action // Action *string `field:"required" json:"action" yaml:"action"` // The type of job execution failures that can initiate a job abort. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-abortcriteria.html#cfn-iot-jobtemplate-abortcriteria-failuretype // FailureType *string `field:"required" json:"failureType" yaml:"failureType"` // The minimum number of things which must receive job execution notifications before the job can be aborted. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-abortcriteria.html#cfn-iot-jobtemplate-abortcriteria-minnumberofexecutedthings // MinNumberOfExecutedThings *float64 `field:"required" json:"minNumberOfExecutedThings" yaml:"minNumberOfExecutedThings"` // The minimum percentage of job execution failures that must occur to initiate the job abort. // // AWS IoT Core supports up to two digits after the decimal (for example, 10.9 and 10.99, but not 10.999). // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-abortcriteria.html#cfn-iot-jobtemplate-abortcriteria-thresholdpercentage // ThresholdPercentage *float64 `field:"required" json:"thresholdPercentage" yaml:"thresholdPercentage"` }
The criteria that determine when and how a job abort takes place.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" abortCriteriaProperty := &AbortCriteriaProperty{ Action: jsii.String("action"), FailureType: jsii.String("failureType"), MinNumberOfExecutedThings: jsii.Number(123), ThresholdPercentage: jsii.Number(123), }
type CfnJobTemplate_ExponentialRolloutRateProperty ¶ added in v2.55.0
type CfnJobTemplate_ExponentialRolloutRateProperty struct { // The minimum number of things that will be notified of a pending job, per minute at the start of job rollout. // // This parameter allows you to define the initial rate of rollout. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-exponentialrolloutrate.html#cfn-iot-jobtemplate-exponentialrolloutrate-baserateperminute // BaseRatePerMinute *float64 `field:"required" json:"baseRatePerMinute" yaml:"baseRatePerMinute"` // The exponential factor to increase the rate of rollout for a job. // // AWS IoT Core supports up to one digit after the decimal (for example, 1.5, but not 1.55). // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-exponentialrolloutrate.html#cfn-iot-jobtemplate-exponentialrolloutrate-incrementfactor // IncrementFactor *float64 `field:"required" json:"incrementFactor" yaml:"incrementFactor"` // The criteria to initiate the increase in rate of rollout for a job. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-exponentialrolloutrate.html#cfn-iot-jobtemplate-exponentialrolloutrate-rateincreasecriteria // RateIncreaseCriteria interface{} `field:"required" json:"rateIncreaseCriteria" yaml:"rateIncreaseCriteria"` }
Allows you to create an exponential rate of rollout for a job.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" exponentialRolloutRateProperty := &ExponentialRolloutRateProperty{ BaseRatePerMinute: jsii.Number(123), IncrementFactor: jsii.Number(123), RateIncreaseCriteria: &RateIncreaseCriteriaProperty{ NumberOfNotifiedThings: jsii.Number(123), NumberOfSucceededThings: jsii.Number(123), }, }
type CfnJobTemplate_JobExecutionsRetryConfigProperty ¶ added in v2.61.0
type CfnJobTemplate_JobExecutionsRetryConfigProperty struct { // The list of criteria that determines how many retries are allowed for each failure type for a job. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-jobexecutionsretryconfig.html#cfn-iot-jobtemplate-jobexecutionsretryconfig-retrycriterialist // RetryCriteriaList interface{} `field:"optional" json:"retryCriteriaList" yaml:"retryCriteriaList"` }
The configuration that determines how many retries are allowed for each failure type for a job.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" jobExecutionsRetryConfigProperty := &JobExecutionsRetryConfigProperty{ RetryCriteriaList: []interface{}{ &RetryCriteriaProperty{ FailureType: jsii.String("failureType"), NumberOfRetries: jsii.Number(123), }, }, }
type CfnJobTemplate_JobExecutionsRolloutConfigProperty ¶ added in v2.55.0
type CfnJobTemplate_JobExecutionsRolloutConfigProperty struct { // The rate of increase for a job rollout. // // This parameter allows you to define an exponential rate for a job rollout. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-jobexecutionsrolloutconfig.html#cfn-iot-jobtemplate-jobexecutionsrolloutconfig-exponentialrolloutrate // ExponentialRolloutRate interface{} `field:"optional" json:"exponentialRolloutRate" yaml:"exponentialRolloutRate"` // The maximum number of things that will be notified of a pending job, per minute. // // This parameter allows you to create a staged rollout. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-jobexecutionsrolloutconfig.html#cfn-iot-jobtemplate-jobexecutionsrolloutconfig-maximumperminute // MaximumPerMinute *float64 `field:"optional" json:"maximumPerMinute" yaml:"maximumPerMinute"` }
Allows you to create a staged rollout of a job.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" jobExecutionsRolloutConfigProperty := &JobExecutionsRolloutConfigProperty{ ExponentialRolloutRate: &ExponentialRolloutRateProperty{ BaseRatePerMinute: jsii.Number(123), IncrementFactor: jsii.Number(123), RateIncreaseCriteria: &RateIncreaseCriteriaProperty{ NumberOfNotifiedThings: jsii.Number(123), NumberOfSucceededThings: jsii.Number(123), }, }, MaximumPerMinute: jsii.Number(123), }
type CfnJobTemplate_MaintenanceWindowProperty ¶ added in v2.70.0
type CfnJobTemplate_MaintenanceWindowProperty struct { // Displays the duration of the next maintenance window. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-maintenancewindow.html#cfn-iot-jobtemplate-maintenancewindow-durationinminutes // DurationInMinutes *float64 `field:"optional" json:"durationInMinutes" yaml:"durationInMinutes"` // Displays the start time of the next maintenance window. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-maintenancewindow.html#cfn-iot-jobtemplate-maintenancewindow-starttime // StartTime *string `field:"optional" json:"startTime" yaml:"startTime"` }
An optional configuration within the `SchedulingConfig` to setup a recurring maintenance window with a predetermined start time and duration for the rollout of a job document to all devices in a target group for a job.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" maintenanceWindowProperty := &MaintenanceWindowProperty{ DurationInMinutes: jsii.Number(123), StartTime: jsii.String("startTime"), }
type CfnJobTemplate_PresignedUrlConfigProperty ¶ added in v2.55.0
type CfnJobTemplate_PresignedUrlConfigProperty struct { // The ARN of an IAM role that grants grants permission to download files from the S3 bucket where the job data/updates are stored. // // The role must also grant permission for IoT to download the files. // // > For information about addressing the confused deputy problem, see [cross-service confused deputy prevention](https://docs.aws.amazon.com/iot/latest/developerguide/cross-service-confused-deputy-prevention.html) in the *AWS IoT Core developer guide* . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-presignedurlconfig.html#cfn-iot-jobtemplate-presignedurlconfig-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // How long (in seconds) pre-signed URLs are valid. // // Valid values are 60 - 3600, the default value is 3600 seconds. Pre-signed URLs are generated when Jobs receives an MQTT request for the job document. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-presignedurlconfig.html#cfn-iot-jobtemplate-presignedurlconfig-expiresinsec // ExpiresInSec *float64 `field:"optional" json:"expiresInSec" yaml:"expiresInSec"` }
Configuration for pre-signed S3 URLs.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" presignedUrlConfigProperty := &PresignedUrlConfigProperty{ RoleArn: jsii.String("roleArn"), // the properties below are optional ExpiresInSec: jsii.Number(123), }
type CfnJobTemplate_RateIncreaseCriteriaProperty ¶ added in v2.55.0
type CfnJobTemplate_RateIncreaseCriteriaProperty struct { // The threshold for number of notified things that will initiate the increase in rate of rollout. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-rateincreasecriteria.html#cfn-iot-jobtemplate-rateincreasecriteria-numberofnotifiedthings // NumberOfNotifiedThings *float64 `field:"optional" json:"numberOfNotifiedThings" yaml:"numberOfNotifiedThings"` // The threshold for number of succeeded things that will initiate the increase in rate of rollout. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-rateincreasecriteria.html#cfn-iot-jobtemplate-rateincreasecriteria-numberofsucceededthings // NumberOfSucceededThings *float64 `field:"optional" json:"numberOfSucceededThings" yaml:"numberOfSucceededThings"` }
Allows you to define a criteria to initiate the increase in rate of rollout for a job.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" rateIncreaseCriteriaProperty := &RateIncreaseCriteriaProperty{ NumberOfNotifiedThings: jsii.Number(123), NumberOfSucceededThings: jsii.Number(123), }
type CfnJobTemplate_RetryCriteriaProperty ¶ added in v2.61.0
type CfnJobTemplate_RetryCriteriaProperty struct { // The type of job execution failures that can initiate a job retry. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-retrycriteria.html#cfn-iot-jobtemplate-retrycriteria-failuretype // FailureType *string `field:"optional" json:"failureType" yaml:"failureType"` // The number of retries allowed for a failure type for the job. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-retrycriteria.html#cfn-iot-jobtemplate-retrycriteria-numberofretries // NumberOfRetries *float64 `field:"optional" json:"numberOfRetries" yaml:"numberOfRetries"` }
The criteria that determines how many retries are allowed for each failure type for a job.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" retryCriteriaProperty := &RetryCriteriaProperty{ FailureType: jsii.String("failureType"), NumberOfRetries: jsii.Number(123), }
type CfnJobTemplate_TimeoutConfigProperty ¶ added in v2.55.0
type CfnJobTemplate_TimeoutConfigProperty struct { // Specifies the amount of time, in minutes, this device has to finish execution of this job. // // The timeout interval can be anywhere between 1 minute and 7 days (1 to 10080 minutes). The in progress timer can't be updated and will apply to all job executions for the job. Whenever a job execution remains in the IN_PROGRESS status for longer than this interval, the job execution will fail and switch to the terminal `TIMED_OUT` status. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-jobtemplate-timeoutconfig.html#cfn-iot-jobtemplate-timeoutconfig-inprogresstimeoutinminutes // InProgressTimeoutInMinutes *float64 `field:"required" json:"inProgressTimeoutInMinutes" yaml:"inProgressTimeoutInMinutes"` }
Specifies the amount of time each device has to finish its execution of the job.
A timer is started when the job execution status is set to `IN_PROGRESS` . If the job execution status is not set to another terminal state before the timer expires, it will be automatically set to `TIMED_OUT` .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" timeoutConfigProperty := &TimeoutConfigProperty{ InProgressTimeoutInMinutes: jsii.Number(123), }
type CfnLogging ¶
type CfnLogging interface { awscdk.CfnResource awscdk.IInspectable // The account ID. AccountId() *string SetAccountId(val *string) // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The default log level. DefaultLogLevel() *string SetDefaultLogLevel(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The role ARN used for the log. RoleArn() *string SetRoleArn(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Configure logging.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnLogging := awscdk.Aws_iot.NewCfnLogging(this, jsii.String("MyCfnLogging"), &CfnLoggingProps{ AccountId: jsii.String("accountId"), DefaultLogLevel: jsii.String("defaultLogLevel"), RoleArn: jsii.String("roleArn"), })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-logging.html
func NewCfnLogging ¶
func NewCfnLogging(scope constructs.Construct, id *string, props *CfnLoggingProps) CfnLogging
type CfnLoggingProps ¶
type CfnLoggingProps struct { // The account ID. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-logging.html#cfn-iot-logging-accountid // AccountId *string `field:"required" json:"accountId" yaml:"accountId"` // The default log level. // // Valid Values: `DEBUG | INFO | ERROR | WARN | DISABLED`. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-logging.html#cfn-iot-logging-defaultloglevel // DefaultLogLevel *string `field:"required" json:"defaultLogLevel" yaml:"defaultLogLevel"` // The role ARN used for the log. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-logging.html#cfn-iot-logging-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` }
Properties for defining a `CfnLogging`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnLoggingProps := &CfnLoggingProps{ AccountId: jsii.String("accountId"), DefaultLogLevel: jsii.String("defaultLogLevel"), RoleArn: jsii.String("roleArn"), }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-logging.html
type CfnMitigationAction ¶
type CfnMitigationAction interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // The friendly name of the mitigation action. ActionName() *string SetActionName(val *string) // The set of parameters for this mitigation action. ActionParams() interface{} SetActionParams(val interface{}) // The Amazon Resource Name (ARN) of the mitigation action. AttrMitigationActionArn() *string // The ID of the mitigation action. AttrMitigationActionId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The IAM role ARN used to apply this mitigation action. RoleArn() *string SetRoleArn(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // Metadata that can be used to manage the mitigation action. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Defines an action that can be applied to audit findings by using StartAuditMitigationActionsTask.
For API reference, see [CreateMitigationAction](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateMitigationAction.html) and for general information, see [Mitigation actions](https://docs.aws.amazon.com/iot/latest/developerguide/dd-mitigation-actions.html) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnMitigationAction := awscdk.Aws_iot.NewCfnMitigationAction(this, jsii.String("MyCfnMitigationAction"), &CfnMitigationActionProps{ ActionParams: &ActionParamsProperty{ AddThingsToThingGroupParams: &AddThingsToThingGroupParamsProperty{ ThingGroupNames: []*string{ jsii.String("thingGroupNames"), }, // the properties below are optional OverrideDynamicGroups: jsii.Boolean(false), }, EnableIoTLoggingParams: &EnableIoTLoggingParamsProperty{ LogLevel: jsii.String("logLevel"), RoleArnForLogging: jsii.String("roleArnForLogging"), }, PublishFindingToSnsParams: &PublishFindingToSnsParamsProperty{ TopicArn: jsii.String("topicArn"), }, ReplaceDefaultPolicyVersionParams: &ReplaceDefaultPolicyVersionParamsProperty{ TemplateName: jsii.String("templateName"), }, UpdateCaCertificateParams: &UpdateCACertificateParamsProperty{ Action: jsii.String("action"), }, UpdateDeviceCertificateParams: &UpdateDeviceCertificateParamsProperty{ Action: jsii.String("action"), }, }, RoleArn: jsii.String("roleArn"), // the properties below are optional ActionName: jsii.String("actionName"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html
func NewCfnMitigationAction ¶
func NewCfnMitigationAction(scope constructs.Construct, id *string, props *CfnMitigationActionProps) CfnMitigationAction
type CfnMitigationActionProps ¶
type CfnMitigationActionProps struct { // The set of parameters for this mitigation action. // // The parameters vary, depending on the kind of action you apply. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html#cfn-iot-mitigationaction-actionparams // ActionParams interface{} `field:"required" json:"actionParams" yaml:"actionParams"` // The IAM role ARN used to apply this mitigation action. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html#cfn-iot-mitigationaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // The friendly name of the mitigation action. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html#cfn-iot-mitigationaction-actionname // ActionName *string `field:"optional" json:"actionName" yaml:"actionName"` // Metadata that can be used to manage the mitigation action. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html#cfn-iot-mitigationaction-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnMitigationAction`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnMitigationActionProps := &CfnMitigationActionProps{ ActionParams: &ActionParamsProperty{ AddThingsToThingGroupParams: &AddThingsToThingGroupParamsProperty{ ThingGroupNames: []*string{ jsii.String("thingGroupNames"), }, // the properties below are optional OverrideDynamicGroups: jsii.Boolean(false), }, EnableIoTLoggingParams: &EnableIoTLoggingParamsProperty{ LogLevel: jsii.String("logLevel"), RoleArnForLogging: jsii.String("roleArnForLogging"), }, PublishFindingToSnsParams: &PublishFindingToSnsParamsProperty{ TopicArn: jsii.String("topicArn"), }, ReplaceDefaultPolicyVersionParams: &ReplaceDefaultPolicyVersionParamsProperty{ TemplateName: jsii.String("templateName"), }, UpdateCaCertificateParams: &UpdateCACertificateParamsProperty{ Action: jsii.String("action"), }, UpdateDeviceCertificateParams: &UpdateDeviceCertificateParamsProperty{ Action: jsii.String("action"), }, }, RoleArn: jsii.String("roleArn"), // the properties below are optional ActionName: jsii.String("actionName"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html
type CfnMitigationAction_ActionParamsProperty ¶
type CfnMitigationAction_ActionParamsProperty struct { // Specifies the group to which you want to add the devices. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-addthingstothinggroupparams // AddThingsToThingGroupParams interface{} `field:"optional" json:"addThingsToThingGroupParams" yaml:"addThingsToThingGroupParams"` // Specifies the logging level and the role with permissions for logging. // // You cannot specify a logging level of `DISABLED` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-enableiotloggingparams // EnableIoTLoggingParams interface{} `field:"optional" json:"enableIoTLoggingParams" yaml:"enableIoTLoggingParams"` // Specifies the topic to which the finding should be published. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-publishfindingtosnsparams // PublishFindingToSnsParams interface{} `field:"optional" json:"publishFindingToSnsParams" yaml:"publishFindingToSnsParams"` // Replaces the policy version with a default or blank policy. // // You specify the template name. Only a value of `BLANK_POLICY` is currently supported. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-replacedefaultpolicyversionparams // ReplaceDefaultPolicyVersionParams interface{} `field:"optional" json:"replaceDefaultPolicyVersionParams" yaml:"replaceDefaultPolicyVersionParams"` // Specifies the new state for the CA certificate. // // Only a value of `DEACTIVATE` is currently supported. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-updatecacertificateparams // UpdateCaCertificateParams interface{} `field:"optional" json:"updateCaCertificateParams" yaml:"updateCaCertificateParams"` // Specifies the new state for a device certificate. // // Only a value of `DEACTIVATE` is currently supported. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-updatedevicecertificateparams // UpdateDeviceCertificateParams interface{} `field:"optional" json:"updateDeviceCertificateParams" yaml:"updateDeviceCertificateParams"` }
Defines the type of action and the parameters for that action.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" actionParamsProperty := &ActionParamsProperty{ AddThingsToThingGroupParams: &AddThingsToThingGroupParamsProperty{ ThingGroupNames: []*string{ jsii.String("thingGroupNames"), }, // the properties below are optional OverrideDynamicGroups: jsii.Boolean(false), }, EnableIoTLoggingParams: &EnableIoTLoggingParamsProperty{ LogLevel: jsii.String("logLevel"), RoleArnForLogging: jsii.String("roleArnForLogging"), }, PublishFindingToSnsParams: &PublishFindingToSnsParamsProperty{ TopicArn: jsii.String("topicArn"), }, ReplaceDefaultPolicyVersionParams: &ReplaceDefaultPolicyVersionParamsProperty{ TemplateName: jsii.String("templateName"), }, UpdateCaCertificateParams: &UpdateCACertificateParamsProperty{ Action: jsii.String("action"), }, UpdateDeviceCertificateParams: &UpdateDeviceCertificateParamsProperty{ Action: jsii.String("action"), }, }
type CfnMitigationAction_AddThingsToThingGroupParamsProperty ¶
type CfnMitigationAction_AddThingsToThingGroupParamsProperty struct { // The list of groups to which you want to add the things that triggered the mitigation action. // // You can add a thing to a maximum of 10 groups, but you can't add a thing to more than one group in the same hierarchy. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-addthingstothinggroupparams.html#cfn-iot-mitigationaction-addthingstothinggroupparams-thinggroupnames // ThingGroupNames *[]*string `field:"required" json:"thingGroupNames" yaml:"thingGroupNames"` // Specifies if this mitigation action can move the things that triggered the mitigation action even if they are part of one or more dynamic thing groups. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-addthingstothinggroupparams.html#cfn-iot-mitigationaction-addthingstothinggroupparams-overridedynamicgroups // OverrideDynamicGroups interface{} `field:"optional" json:"overrideDynamicGroups" yaml:"overrideDynamicGroups"` }
Parameters used when defining a mitigation action that move a set of things to a thing group.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" addThingsToThingGroupParamsProperty := &AddThingsToThingGroupParamsProperty{ ThingGroupNames: []*string{ jsii.String("thingGroupNames"), }, // the properties below are optional OverrideDynamicGroups: jsii.Boolean(false), }
type CfnMitigationAction_EnableIoTLoggingParamsProperty ¶
type CfnMitigationAction_EnableIoTLoggingParamsProperty struct { // Specifies the type of information to be logged. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-enableiotloggingparams.html#cfn-iot-mitigationaction-enableiotloggingparams-loglevel // LogLevel *string `field:"required" json:"logLevel" yaml:"logLevel"` // The Amazon Resource Name (ARN) of the IAM role used for logging. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-enableiotloggingparams.html#cfn-iot-mitigationaction-enableiotloggingparams-rolearnforlogging // RoleArnForLogging *string `field:"required" json:"roleArnForLogging" yaml:"roleArnForLogging"` }
Parameters used when defining a mitigation action that enable AWS IoT Core logging.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" enableIoTLoggingParamsProperty := &EnableIoTLoggingParamsProperty{ LogLevel: jsii.String("logLevel"), RoleArnForLogging: jsii.String("roleArnForLogging"), }
type CfnMitigationAction_PublishFindingToSnsParamsProperty ¶
type CfnMitigationAction_PublishFindingToSnsParamsProperty struct { // The ARN of the topic to which you want to publish the findings. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-publishfindingtosnsparams.html#cfn-iot-mitigationaction-publishfindingtosnsparams-topicarn // TopicArn *string `field:"required" json:"topicArn" yaml:"topicArn"` }
Parameters to define a mitigation action that publishes findings to Amazon SNS.
You can implement your own custom actions in response to the Amazon SNS messages.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" publishFindingToSnsParamsProperty := &PublishFindingToSnsParamsProperty{ TopicArn: jsii.String("topicArn"), }
type CfnMitigationAction_ReplaceDefaultPolicyVersionParamsProperty ¶
type CfnMitigationAction_ReplaceDefaultPolicyVersionParamsProperty struct { // The name of the template to be applied. // // The only supported value is `BLANK_POLICY` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-replacedefaultpolicyversionparams.html#cfn-iot-mitigationaction-replacedefaultpolicyversionparams-templatename // TemplateName *string `field:"required" json:"templateName" yaml:"templateName"` }
Parameters to define a mitigation action that adds a blank policy to restrict permissions.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" replaceDefaultPolicyVersionParamsProperty := &ReplaceDefaultPolicyVersionParamsProperty{ TemplateName: jsii.String("templateName"), }
type CfnMitigationAction_UpdateCACertificateParamsProperty ¶
type CfnMitigationAction_UpdateCACertificateParamsProperty struct { // The action that you want to apply to the CA certificate. // // The only supported value is `DEACTIVATE` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-updatecacertificateparams.html#cfn-iot-mitigationaction-updatecacertificateparams-action // Action *string `field:"required" json:"action" yaml:"action"` }
Parameters to define a mitigation action that changes the state of the CA certificate to inactive.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" updateCACertificateParamsProperty := &UpdateCACertificateParamsProperty{ Action: jsii.String("action"), }
type CfnMitigationAction_UpdateDeviceCertificateParamsProperty ¶
type CfnMitigationAction_UpdateDeviceCertificateParamsProperty struct { // The action that you want to apply to the device certificate. // // The only supported value is `DEACTIVATE` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-updatedevicecertificateparams.html#cfn-iot-mitigationaction-updatedevicecertificateparams-action // Action *string `field:"required" json:"action" yaml:"action"` }
Parameters to define a mitigation action that changes the state of the device certificate to inactive.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" updateDeviceCertificateParamsProperty := &UpdateDeviceCertificateParamsProperty{ Action: jsii.String("action"), }
type CfnPolicy ¶
type CfnPolicy interface { awscdk.CfnResource awscdk.IInspectable // The Amazon Resource Name (ARN) of the AWS IoT policy, such as `arn:aws:iot:us-east-2:123456789012:policy/MyPolicy` . AttrArn() *string // The name of this policy. AttrId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // The JSON document that describes the policy. PolicyDocument() interface{} SetPolicyDocument(val interface{}) // The policy name. PolicyName() *string SetPolicyName(val *string) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Use the `AWS::IoT::Policy` resource to declare an AWS IoT policy.
For more information about working with AWS IoT policies, see [Authorization](https://docs.aws.amazon.com/iot/latest/developerguide/authorization.html) in the *AWS IoT Developer Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var policyDocument interface{} cfnPolicy := awscdk.Aws_iot.NewCfnPolicy(this, jsii.String("MyCfnPolicy"), &CfnPolicyProps{ PolicyDocument: policyDocument, // the properties below are optional PolicyName: jsii.String("policyName"), })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html
func NewCfnPolicy ¶
func NewCfnPolicy(scope constructs.Construct, id *string, props *CfnPolicyProps) CfnPolicy
type CfnPolicyPrincipalAttachment ¶
type CfnPolicyPrincipalAttachment interface { awscdk.CfnResource awscdk.IInspectable AttrId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // The name of the AWS IoT policy. PolicyName() *string SetPolicyName(val *string) // The principal, which can be a certificate ARN (as returned from the `CreateCertificate` operation) or an Amazon Cognito ID. Principal() *string SetPrincipal(val *string) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Use the `AWS::IoT::PolicyPrincipalAttachment` resource to attach an AWS IoT policy to a principal (an X.509 certificate or other credential).
For information about working with AWS IoT policies and principals, see [Authorization](https://docs.aws.amazon.com/iot/latest/developerguide/authorization.html) in the *AWS IoT Developer Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnPolicyPrincipalAttachment := awscdk.Aws_iot.NewCfnPolicyPrincipalAttachment(this, jsii.String("MyCfnPolicyPrincipalAttachment"), &CfnPolicyPrincipalAttachmentProps{ PolicyName: jsii.String("policyName"), Principal: jsii.String("principal"), })
func NewCfnPolicyPrincipalAttachment ¶
func NewCfnPolicyPrincipalAttachment(scope constructs.Construct, id *string, props *CfnPolicyPrincipalAttachmentProps) CfnPolicyPrincipalAttachment
type CfnPolicyPrincipalAttachmentProps ¶
type CfnPolicyPrincipalAttachmentProps struct { // The name of the AWS IoT policy. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html#cfn-iot-policyprincipalattachment-policyname // PolicyName *string `field:"required" json:"policyName" yaml:"policyName"` // The principal, which can be a certificate ARN (as returned from the `CreateCertificate` operation) or an Amazon Cognito ID. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html#cfn-iot-policyprincipalattachment-principal // Principal *string `field:"required" json:"principal" yaml:"principal"` }
Properties for defining a `CfnPolicyPrincipalAttachment`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnPolicyPrincipalAttachmentProps := &CfnPolicyPrincipalAttachmentProps{ PolicyName: jsii.String("policyName"), Principal: jsii.String("principal"), }
type CfnPolicyProps ¶
type CfnPolicyProps struct { // The JSON document that describes the policy. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html#cfn-iot-policy-policydocument // PolicyDocument interface{} `field:"required" json:"policyDocument" yaml:"policyDocument"` // The policy name. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html#cfn-iot-policy-policyname // PolicyName *string `field:"optional" json:"policyName" yaml:"policyName"` }
Properties for defining a `CfnPolicy`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var policyDocument interface{} cfnPolicyProps := &CfnPolicyProps{ PolicyDocument: policyDocument, // the properties below are optional PolicyName: jsii.String("policyName"), }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html
type CfnProvisioningTemplate ¶
type CfnProvisioningTemplate interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // The ARN that identifies the provisioning template. AttrTemplateArn() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The description of the fleet provisioning template. Description() *string SetDescription(val *string) // True to enable the fleet provisioning template, otherwise false. Enabled() interface{} SetEnabled(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Creates a pre-provisioning hook template. PreProvisioningHook() interface{} SetPreProvisioningHook(val interface{}) // The role ARN for the role associated with the fleet provisioning template. ProvisioningRoleArn() *string SetProvisioningRoleArn(val *string) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // Metadata that can be used to manage the fleet provisioning template. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // The JSON formatted contents of the fleet provisioning template version. TemplateBody() *string SetTemplateBody(val *string) // The name of the fleet provisioning template. TemplateName() *string SetTemplateName(val *string) // The type of the provisioning template. TemplateType() *string SetTemplateType(val *string) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Creates a fleet provisioning template.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnProvisioningTemplate := awscdk.Aws_iot.NewCfnProvisioningTemplate(this, jsii.String("MyCfnProvisioningTemplate"), &CfnProvisioningTemplateProps{ ProvisioningRoleArn: jsii.String("provisioningRoleArn"), TemplateBody: jsii.String("templateBody"), // the properties below are optional Description: jsii.String("description"), Enabled: jsii.Boolean(false), PreProvisioningHook: &ProvisioningHookProperty{ PayloadVersion: jsii.String("payloadVersion"), TargetArn: jsii.String("targetArn"), }, Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, TemplateName: jsii.String("templateName"), TemplateType: jsii.String("templateType"), })
func NewCfnProvisioningTemplate ¶
func NewCfnProvisioningTemplate(scope constructs.Construct, id *string, props *CfnProvisioningTemplateProps) CfnProvisioningTemplate
type CfnProvisioningTemplateProps ¶
type CfnProvisioningTemplateProps struct { // The role ARN for the role associated with the fleet provisioning template. // // This IoT role grants permission to provision a device. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-provisioningrolearn // ProvisioningRoleArn *string `field:"required" json:"provisioningRoleArn" yaml:"provisioningRoleArn"` // The JSON formatted contents of the fleet provisioning template version. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-templatebody // TemplateBody *string `field:"required" json:"templateBody" yaml:"templateBody"` // The description of the fleet provisioning template. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-description // Description *string `field:"optional" json:"description" yaml:"description"` // True to enable the fleet provisioning template, otherwise false. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-enabled // Enabled interface{} `field:"optional" json:"enabled" yaml:"enabled"` // Creates a pre-provisioning hook template. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-preprovisioninghook // PreProvisioningHook interface{} `field:"optional" json:"preProvisioningHook" yaml:"preProvisioningHook"` // Metadata that can be used to manage the fleet provisioning template. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` // The name of the fleet provisioning template. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-templatename // TemplateName *string `field:"optional" json:"templateName" yaml:"templateName"` // The type of the provisioning template. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-templatetype // TemplateType *string `field:"optional" json:"templateType" yaml:"templateType"` }
Properties for defining a `CfnProvisioningTemplate`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnProvisioningTemplateProps := &CfnProvisioningTemplateProps{ ProvisioningRoleArn: jsii.String("provisioningRoleArn"), TemplateBody: jsii.String("templateBody"), // the properties below are optional Description: jsii.String("description"), Enabled: jsii.Boolean(false), PreProvisioningHook: &ProvisioningHookProperty{ PayloadVersion: jsii.String("payloadVersion"), TargetArn: jsii.String("targetArn"), }, Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, TemplateName: jsii.String("templateName"), TemplateType: jsii.String("templateType"), }
type CfnProvisioningTemplate_ProvisioningHookProperty ¶
type CfnProvisioningTemplate_ProvisioningHookProperty struct { // The payload that was sent to the target function. // // The valid payload is `"2020-04-01"` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-provisioningtemplate-provisioninghook.html#cfn-iot-provisioningtemplate-provisioninghook-payloadversion // PayloadVersion *string `field:"optional" json:"payloadVersion" yaml:"payloadVersion"` // The ARN of the target function. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-provisioningtemplate-provisioninghook.html#cfn-iot-provisioningtemplate-provisioninghook-targetarn // TargetArn *string `field:"optional" json:"targetArn" yaml:"targetArn"` }
Structure that contains payloadVersion and targetArn.
Provisioning hooks can be used when fleet provisioning to validate device parameters before allowing the device to be provisioned.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" provisioningHookProperty := &ProvisioningHookProperty{ PayloadVersion: jsii.String("payloadVersion"), TargetArn: jsii.String("targetArn"), }
type CfnResourceSpecificLogging ¶
type CfnResourceSpecificLogging interface { awscdk.CfnResource awscdk.IInspectable // The target Id. AttrTargetId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The default log level.Valid Values: `DEBUG | INFO | ERROR | WARN | DISABLED`. LogLevel() *string SetLogLevel(val *string) // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // The target name. TargetName() *string SetTargetName(val *string) // The target type. TargetType() *string SetTargetType(val *string) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Configure resource-specific logging.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnResourceSpecificLogging := awscdk.Aws_iot.NewCfnResourceSpecificLogging(this, jsii.String("MyCfnResourceSpecificLogging"), &CfnResourceSpecificLoggingProps{ LogLevel: jsii.String("logLevel"), TargetName: jsii.String("targetName"), TargetType: jsii.String("targetType"), })
func NewCfnResourceSpecificLogging ¶
func NewCfnResourceSpecificLogging(scope constructs.Construct, id *string, props *CfnResourceSpecificLoggingProps) CfnResourceSpecificLogging
type CfnResourceSpecificLoggingProps ¶
type CfnResourceSpecificLoggingProps struct { // The default log level.Valid Values: `DEBUG | INFO | ERROR | WARN | DISABLED`. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-resourcespecificlogging.html#cfn-iot-resourcespecificlogging-loglevel // LogLevel *string `field:"required" json:"logLevel" yaml:"logLevel"` // The target name. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-resourcespecificlogging.html#cfn-iot-resourcespecificlogging-targetname // TargetName *string `field:"required" json:"targetName" yaml:"targetName"` // The target type. // // Valid Values: `DEFAULT | THING_GROUP`. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-resourcespecificlogging.html#cfn-iot-resourcespecificlogging-targettype // TargetType *string `field:"required" json:"targetType" yaml:"targetType"` }
Properties for defining a `CfnResourceSpecificLogging`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnResourceSpecificLoggingProps := &CfnResourceSpecificLoggingProps{ LogLevel: jsii.String("logLevel"), TargetName: jsii.String("targetName"), TargetType: jsii.String("targetType"), }
type CfnRoleAlias ¶ added in v2.25.0
type CfnRoleAlias interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // The role alias ARN. AttrRoleAliasArn() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The number of seconds for which the credential is valid. CredentialDurationSeconds() *float64 SetCredentialDurationSeconds(val *float64) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The role alias. RoleAlias() *string SetRoleAlias(val *string) // The role ARN. RoleArn() *string SetRoleArn(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // An array of key-value pairs to apply to this resource. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Specifies a role alias.
Requires permission to access the [CreateRoleAlias](https://docs.aws.amazon.com//service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions) action.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnRoleAlias := awscdk.Aws_iot.NewCfnRoleAlias(this, jsii.String("MyCfnRoleAlias"), &CfnRoleAliasProps{ RoleArn: jsii.String("roleArn"), // the properties below are optional CredentialDurationSeconds: jsii.Number(123), RoleAlias: jsii.String("roleAlias"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-rolealias.html
func NewCfnRoleAlias ¶ added in v2.25.0
func NewCfnRoleAlias(scope constructs.Construct, id *string, props *CfnRoleAliasProps) CfnRoleAlias
type CfnRoleAliasProps ¶ added in v2.25.0
type CfnRoleAliasProps struct { // The role ARN. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-rolealias.html#cfn-iot-rolealias-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // The number of seconds for which the credential is valid. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-rolealias.html#cfn-iot-rolealias-credentialdurationseconds // // Default: - 3600. // CredentialDurationSeconds *float64 `field:"optional" json:"credentialDurationSeconds" yaml:"credentialDurationSeconds"` // The role alias. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-rolealias.html#cfn-iot-rolealias-rolealias // RoleAlias *string `field:"optional" json:"roleAlias" yaml:"roleAlias"` // An array of key-value pairs to apply to this resource. // // For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-rolealias.html#cfn-iot-rolealias-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnRoleAlias`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnRoleAliasProps := &CfnRoleAliasProps{ RoleArn: jsii.String("roleArn"), // the properties below are optional CredentialDurationSeconds: jsii.Number(123), RoleAlias: jsii.String("roleAlias"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-rolealias.html
type CfnScheduledAudit ¶
type CfnScheduledAudit interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // The ARN of the scheduled audit. AttrScheduledAuditArn() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The day of the month on which the scheduled audit is run (if the `frequency` is "MONTHLY"). DayOfMonth() *string SetDayOfMonth(val *string) // The day of the week on which the scheduled audit is run (if the `frequency` is "WEEKLY" or "BIWEEKLY"). DayOfWeek() *string SetDayOfWeek(val *string) // How often the scheduled audit occurs. Frequency() *string SetFrequency(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The name of the scheduled audit. ScheduledAuditName() *string SetScheduledAuditName(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // Metadata that can be used to manage the scheduled audit. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // Which checks are performed during the scheduled audit. TargetCheckNames() *[]*string SetTargetCheckNames(val *[]*string) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Use the `AWS::IoT::ScheduledAudit` resource to create a scheduled audit that is run at a specified time interval.
For API reference, see [CreateScheduleAudit](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateScheduledAudit.html) and for general information, see [Audit](https://docs.aws.amazon.com/iot/latest/developerguide/device-defender-audit.html) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnScheduledAudit := awscdk.Aws_iot.NewCfnScheduledAudit(this, jsii.String("MyCfnScheduledAudit"), &CfnScheduledAuditProps{ Frequency: jsii.String("frequency"), TargetCheckNames: []*string{ jsii.String("targetCheckNames"), }, // the properties below are optional DayOfMonth: jsii.String("dayOfMonth"), DayOfWeek: jsii.String("dayOfWeek"), ScheduledAuditName: jsii.String("scheduledAuditName"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html
func NewCfnScheduledAudit ¶
func NewCfnScheduledAudit(scope constructs.Construct, id *string, props *CfnScheduledAuditProps) CfnScheduledAudit
type CfnScheduledAuditProps ¶
type CfnScheduledAuditProps struct { // How often the scheduled audit occurs. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html#cfn-iot-scheduledaudit-frequency // Frequency *string `field:"required" json:"frequency" yaml:"frequency"` // Which checks are performed during the scheduled audit. // // Checks must be enabled for your account. (Use `DescribeAccountAuditConfiguration` to see the list of all checks, including those that are enabled or use `UpdateAccountAuditConfiguration` to select which checks are enabled.) // // The following checks are currently aviable: // // - `AUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK` // - `CA_CERTIFICATE_EXPIRING_CHECK` // - `CA_CERTIFICATE_KEY_QUALITY_CHECK` // - `CONFLICTING_CLIENT_IDS_CHECK` // - `DEVICE_CERTIFICATE_EXPIRING_CHECK` // - `DEVICE_CERTIFICATE_KEY_QUALITY_CHECK` // - `DEVICE_CERTIFICATE_SHARED_CHECK` // - `IOT_POLICY_OVERLY_PERMISSIVE_CHECK` // - `IOT_ROLE_ALIAS_ALLOWS_ACCESS_TO_UNUSED_SERVICES_CHECK` // - `IOT_ROLE_ALIAS_OVERLY_PERMISSIVE_CHECK` // - `LOGGING_DISABLED_CHECK` // - `REVOKED_CA_CERTIFICATE_STILL_ACTIVE_CHECK` // - `REVOKED_DEVICE_CERTIFICATE_STILL_ACTIVE_CHECK` // - `UNAUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK`. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html#cfn-iot-scheduledaudit-targetchecknames // TargetCheckNames *[]*string `field:"required" json:"targetCheckNames" yaml:"targetCheckNames"` // The day of the month on which the scheduled audit is run (if the `frequency` is "MONTHLY"). // // If days 29-31 are specified, and the month does not have that many days, the audit takes place on the "LAST" day of the month. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html#cfn-iot-scheduledaudit-dayofmonth // DayOfMonth *string `field:"optional" json:"dayOfMonth" yaml:"dayOfMonth"` // The day of the week on which the scheduled audit is run (if the `frequency` is "WEEKLY" or "BIWEEKLY"). // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html#cfn-iot-scheduledaudit-dayofweek // DayOfWeek *string `field:"optional" json:"dayOfWeek" yaml:"dayOfWeek"` // The name of the scheduled audit. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html#cfn-iot-scheduledaudit-scheduledauditname // ScheduledAuditName *string `field:"optional" json:"scheduledAuditName" yaml:"scheduledAuditName"` // Metadata that can be used to manage the scheduled audit. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html#cfn-iot-scheduledaudit-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnScheduledAudit`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnScheduledAuditProps := &CfnScheduledAuditProps{ Frequency: jsii.String("frequency"), TargetCheckNames: []*string{ jsii.String("targetCheckNames"), }, // the properties below are optional DayOfMonth: jsii.String("dayOfMonth"), DayOfWeek: jsii.String("dayOfWeek"), ScheduledAuditName: jsii.String("scheduledAuditName"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html
type CfnSecurityProfile ¶
type CfnSecurityProfile interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // A list of metrics whose data is retained (stored). AdditionalMetricsToRetainV2() interface{} SetAdditionalMetricsToRetainV2(val interface{}) // Specifies the destinations to which alerts are sent. AlertTargets() interface{} SetAlertTargets(val interface{}) // The Amazon Resource Name (ARN) of the security profile. AttrSecurityProfileArn() *string // Specifies the behaviors that, when violated by a device (thing), cause an alert. Behaviors() interface{} SetBehaviors(val interface{}) // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // A description of the security profile. SecurityProfileDescription() *string SetSecurityProfileDescription(val *string) // The name you gave to the security profile. SecurityProfileName() *string SetSecurityProfileName(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // Metadata that can be used to manage the security profile. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // The ARN of the target (thing group) to which the security profile is attached. TargetArns() *[]*string SetTargetArns(val *[]*string) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Use the `AWS::IoT::SecurityProfile` resource to create a Device Defender security profile.
For API reference, see [CreateSecurityProfile](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateSecurityProfile.html) and for general information, see [Detect](https://docs.aws.amazon.com/iot/latest/developerguide/device-defender-detect.html) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnSecurityProfile := awscdk.Aws_iot.NewCfnSecurityProfile(this, jsii.String("MyCfnSecurityProfile"), &CfnSecurityProfileProps{ AdditionalMetricsToRetainV2: []interface{}{ &MetricToRetainProperty{ Metric: jsii.String("metric"), // the properties below are optional MetricDimension: &MetricDimensionProperty{ DimensionName: jsii.String("dimensionName"), // the properties below are optional Operator: jsii.String("operator"), }, }, }, AlertTargets: map[string]interface{}{ "alertTargetsKey": &AlertTargetProperty{ "alertTargetArn": jsii.String("alertTargetArn"), "roleArn": jsii.String("roleArn"), }, }, Behaviors: []interface{}{ &BehaviorProperty{ Name: jsii.String("name"), // the properties below are optional Criteria: &BehaviorCriteriaProperty{ ComparisonOperator: jsii.String("comparisonOperator"), ConsecutiveDatapointsToAlarm: jsii.Number(123), ConsecutiveDatapointsToClear: jsii.Number(123), DurationSeconds: jsii.Number(123), MlDetectionConfig: &MachineLearningDetectionConfigProperty{ ConfidenceLevel: jsii.String("confidenceLevel"), }, StatisticalThreshold: &StatisticalThresholdProperty{ Statistic: jsii.String("statistic"), }, Value: &MetricValueProperty{ Cidrs: []*string{ jsii.String("cidrs"), }, Count: jsii.String("count"), Number: jsii.Number(123), Numbers: []interface{}{ jsii.Number(123), }, Ports: []interface{}{ jsii.Number(123), }, Strings: []*string{ jsii.String("strings"), }, }, }, Metric: jsii.String("metric"), MetricDimension: &MetricDimensionProperty{ DimensionName: jsii.String("dimensionName"), // the properties below are optional Operator: jsii.String("operator"), }, SuppressAlerts: jsii.Boolean(false), }, }, SecurityProfileDescription: jsii.String("securityProfileDescription"), SecurityProfileName: jsii.String("securityProfileName"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, TargetArns: []*string{ jsii.String("targetArns"), }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html
func NewCfnSecurityProfile ¶
func NewCfnSecurityProfile(scope constructs.Construct, id *string, props *CfnSecurityProfileProps) CfnSecurityProfile
type CfnSecurityProfileProps ¶
type CfnSecurityProfileProps struct { // A list of metrics whose data is retained (stored). // // By default, data is retained for any metric used in the profile's `behaviors` , but it's also retained for any metric specified here. Can be used with custom metrics; can't be used with dimensions. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-additionalmetricstoretainv2 // AdditionalMetricsToRetainV2 interface{} `field:"optional" json:"additionalMetricsToRetainV2" yaml:"additionalMetricsToRetainV2"` // Specifies the destinations to which alerts are sent. // // (Alerts are always sent to the console.) Alerts are generated when a device (thing) violates a behavior. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-alerttargets // AlertTargets interface{} `field:"optional" json:"alertTargets" yaml:"alertTargets"` // Specifies the behaviors that, when violated by a device (thing), cause an alert. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-behaviors // Behaviors interface{} `field:"optional" json:"behaviors" yaml:"behaviors"` // A description of the security profile. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-securityprofiledescription // SecurityProfileDescription *string `field:"optional" json:"securityProfileDescription" yaml:"securityProfileDescription"` // The name you gave to the security profile. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-securityprofilename // SecurityProfileName *string `field:"optional" json:"securityProfileName" yaml:"securityProfileName"` // Metadata that can be used to manage the security profile. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` // The ARN of the target (thing group) to which the security profile is attached. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-targetarns // TargetArns *[]*string `field:"optional" json:"targetArns" yaml:"targetArns"` }
Properties for defining a `CfnSecurityProfile`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnSecurityProfileProps := &CfnSecurityProfileProps{ AdditionalMetricsToRetainV2: []interface{}{ &MetricToRetainProperty{ Metric: jsii.String("metric"), // the properties below are optional MetricDimension: &MetricDimensionProperty{ DimensionName: jsii.String("dimensionName"), // the properties below are optional Operator: jsii.String("operator"), }, }, }, AlertTargets: map[string]interface{}{ "alertTargetsKey": &AlertTargetProperty{ "alertTargetArn": jsii.String("alertTargetArn"), "roleArn": jsii.String("roleArn"), }, }, Behaviors: []interface{}{ &BehaviorProperty{ Name: jsii.String("name"), // the properties below are optional Criteria: &BehaviorCriteriaProperty{ ComparisonOperator: jsii.String("comparisonOperator"), ConsecutiveDatapointsToAlarm: jsii.Number(123), ConsecutiveDatapointsToClear: jsii.Number(123), DurationSeconds: jsii.Number(123), MlDetectionConfig: &MachineLearningDetectionConfigProperty{ ConfidenceLevel: jsii.String("confidenceLevel"), }, StatisticalThreshold: &StatisticalThresholdProperty{ Statistic: jsii.String("statistic"), }, Value: &MetricValueProperty{ Cidrs: []*string{ jsii.String("cidrs"), }, Count: jsii.String("count"), Number: jsii.Number(123), Numbers: []interface{}{ jsii.Number(123), }, Ports: []interface{}{ jsii.Number(123), }, Strings: []*string{ jsii.String("strings"), }, }, }, Metric: jsii.String("metric"), MetricDimension: &MetricDimensionProperty{ DimensionName: jsii.String("dimensionName"), // the properties below are optional Operator: jsii.String("operator"), }, SuppressAlerts: jsii.Boolean(false), }, }, SecurityProfileDescription: jsii.String("securityProfileDescription"), SecurityProfileName: jsii.String("securityProfileName"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, TargetArns: []*string{ jsii.String("targetArns"), }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html
type CfnSecurityProfile_AlertTargetProperty ¶
type CfnSecurityProfile_AlertTargetProperty struct { // The Amazon Resource Name (ARN) of the notification target to which alerts are sent. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-alerttarget.html#cfn-iot-securityprofile-alerttarget-alerttargetarn // AlertTargetArn *string `field:"required" json:"alertTargetArn" yaml:"alertTargetArn"` // The ARN of the role that grants permission to send alerts to the notification target. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-alerttarget.html#cfn-iot-securityprofile-alerttarget-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` }
A structure containing the alert target ARN and the role ARN.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" alertTargetProperty := &AlertTargetProperty{ AlertTargetArn: jsii.String("alertTargetArn"), RoleArn: jsii.String("roleArn"), }
type CfnSecurityProfile_BehaviorCriteriaProperty ¶
type CfnSecurityProfile_BehaviorCriteriaProperty struct { // The operator that relates the thing measured ( `metric` ) to the criteria (containing a `value` or `statisticalThreshold` ). // // Valid operators include: // // - `string-list` : `in-set` and `not-in-set` // - `number-list` : `in-set` and `not-in-set` // - `ip-address-list` : `in-cidr-set` and `not-in-cidr-set` // - `number` : `less-than` , `less-than-equals` , `greater-than` , and `greater-than-equals`. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-comparisonoperator // ComparisonOperator *string `field:"optional" json:"comparisonOperator" yaml:"comparisonOperator"` // If a device is in violation of the behavior for the specified number of consecutive datapoints, an alarm occurs. // // If not specified, the default is 1. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-consecutivedatapointstoalarm // ConsecutiveDatapointsToAlarm *float64 `field:"optional" json:"consecutiveDatapointsToAlarm" yaml:"consecutiveDatapointsToAlarm"` // If an alarm has occurred and the offending device is no longer in violation of the behavior for the specified number of consecutive datapoints, the alarm is cleared. // // If not specified, the default is 1. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-consecutivedatapointstoclear // ConsecutiveDatapointsToClear *float64 `field:"optional" json:"consecutiveDatapointsToClear" yaml:"consecutiveDatapointsToClear"` // Use this to specify the time duration over which the behavior is evaluated, for those criteria that have a time dimension (for example, `NUM_MESSAGES_SENT` ). // // For a `statisticalThreshhold` metric comparison, measurements from all devices are accumulated over this time duration before being used to calculate percentiles, and later, measurements from an individual device are also accumulated over this time duration before being given a percentile rank. Cannot be used with list-based metric datatypes. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-durationseconds // DurationSeconds *float64 `field:"optional" json:"durationSeconds" yaml:"durationSeconds"` // The confidence level of the detection model. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-mldetectionconfig // MlDetectionConfig interface{} `field:"optional" json:"mlDetectionConfig" yaml:"mlDetectionConfig"` // A statistical ranking (percentile)that indicates a threshold value by which a behavior is determined to be in compliance or in violation of the behavior. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-statisticalthreshold // StatisticalThreshold interface{} `field:"optional" json:"statisticalThreshold" yaml:"statisticalThreshold"` // The value to be compared with the `metric` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-value // Value interface{} `field:"optional" json:"value" yaml:"value"` }
The criteria by which the behavior is determined to be normal.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" behaviorCriteriaProperty := &BehaviorCriteriaProperty{ ComparisonOperator: jsii.String("comparisonOperator"), ConsecutiveDatapointsToAlarm: jsii.Number(123), ConsecutiveDatapointsToClear: jsii.Number(123), DurationSeconds: jsii.Number(123), MlDetectionConfig: &MachineLearningDetectionConfigProperty{ ConfidenceLevel: jsii.String("confidenceLevel"), }, StatisticalThreshold: &StatisticalThresholdProperty{ Statistic: jsii.String("statistic"), }, Value: &MetricValueProperty{ Cidrs: []*string{ jsii.String("cidrs"), }, Count: jsii.String("count"), Number: jsii.Number(123), Numbers: []interface{}{ jsii.Number(123), }, Ports: []interface{}{ jsii.Number(123), }, Strings: []*string{ jsii.String("strings"), }, }, }
type CfnSecurityProfile_BehaviorProperty ¶
type CfnSecurityProfile_BehaviorProperty struct { // The name you've given to the behavior. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html#cfn-iot-securityprofile-behavior-name // Name *string `field:"required" json:"name" yaml:"name"` // The criteria that determine if a device is behaving normally in regard to the `metric` . // // > In the AWS IoT console, you can choose to be sent an alert through Amazon SNS when AWS IoT Device Defender detects that a device is behaving anomalously. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html#cfn-iot-securityprofile-behavior-criteria // Criteria interface{} `field:"optional" json:"criteria" yaml:"criteria"` // What is measured by the behavior. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html#cfn-iot-securityprofile-behavior-metric // Metric *string `field:"optional" json:"metric" yaml:"metric"` // The dimension of the metric. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html#cfn-iot-securityprofile-behavior-metricdimension // MetricDimension interface{} `field:"optional" json:"metricDimension" yaml:"metricDimension"` // The alert status. // // If you set the value to `true` , alerts will be suppressed. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html#cfn-iot-securityprofile-behavior-suppressalerts // SuppressAlerts interface{} `field:"optional" json:"suppressAlerts" yaml:"suppressAlerts"` }
A Device Defender security profile behavior.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" behaviorProperty := &BehaviorProperty{ Name: jsii.String("name"), // the properties below are optional Criteria: &BehaviorCriteriaProperty{ ComparisonOperator: jsii.String("comparisonOperator"), ConsecutiveDatapointsToAlarm: jsii.Number(123), ConsecutiveDatapointsToClear: jsii.Number(123), DurationSeconds: jsii.Number(123), MlDetectionConfig: &MachineLearningDetectionConfigProperty{ ConfidenceLevel: jsii.String("confidenceLevel"), }, StatisticalThreshold: &StatisticalThresholdProperty{ Statistic: jsii.String("statistic"), }, Value: &MetricValueProperty{ Cidrs: []*string{ jsii.String("cidrs"), }, Count: jsii.String("count"), Number: jsii.Number(123), Numbers: []interface{}{ jsii.Number(123), }, Ports: []interface{}{ jsii.Number(123), }, Strings: []*string{ jsii.String("strings"), }, }, }, Metric: jsii.String("metric"), MetricDimension: &MetricDimensionProperty{ DimensionName: jsii.String("dimensionName"), // the properties below are optional Operator: jsii.String("operator"), }, SuppressAlerts: jsii.Boolean(false), }
type CfnSecurityProfile_MachineLearningDetectionConfigProperty ¶
type CfnSecurityProfile_MachineLearningDetectionConfigProperty struct { // The model confidence level. // // There are three levels of confidence, `"high"` , `"medium"` , and `"low"` . // // The higher the confidence level, the lower the sensitivity, and the lower the alarm frequency will be. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-machinelearningdetectionconfig.html#cfn-iot-securityprofile-machinelearningdetectionconfig-confidencelevel // ConfidenceLevel *string `field:"optional" json:"confidenceLevel" yaml:"confidenceLevel"` }
The `MachineLearningDetectionConfig` property type controls confidence of the machine learning model.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" machineLearningDetectionConfigProperty := &MachineLearningDetectionConfigProperty{ ConfidenceLevel: jsii.String("confidenceLevel"), }
type CfnSecurityProfile_MetricDimensionProperty ¶
type CfnSecurityProfile_MetricDimensionProperty struct { // The name of the dimension. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricdimension.html#cfn-iot-securityprofile-metricdimension-dimensionname // DimensionName *string `field:"required" json:"dimensionName" yaml:"dimensionName"` // Operators are constructs that perform logical operations. // // Valid values are `IN` and `NOT_IN` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricdimension.html#cfn-iot-securityprofile-metricdimension-operator // Operator *string `field:"optional" json:"operator" yaml:"operator"` }
The dimension of the metric.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" metricDimensionProperty := &MetricDimensionProperty{ DimensionName: jsii.String("dimensionName"), // the properties below are optional Operator: jsii.String("operator"), }
type CfnSecurityProfile_MetricToRetainProperty ¶
type CfnSecurityProfile_MetricToRetainProperty struct { // A standard of measurement. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metrictoretain.html#cfn-iot-securityprofile-metrictoretain-metric // Metric *string `field:"required" json:"metric" yaml:"metric"` // The dimension of the metric. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metrictoretain.html#cfn-iot-securityprofile-metrictoretain-metricdimension // MetricDimension interface{} `field:"optional" json:"metricDimension" yaml:"metricDimension"` }
The metric you want to retain.
Dimensions are optional.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" metricToRetainProperty := &MetricToRetainProperty{ Metric: jsii.String("metric"), // the properties below are optional MetricDimension: &MetricDimensionProperty{ DimensionName: jsii.String("dimensionName"), // the properties below are optional Operator: jsii.String("operator"), }, }
type CfnSecurityProfile_MetricValueProperty ¶
type CfnSecurityProfile_MetricValueProperty struct { // If the `comparisonOperator` calls for a set of CIDRs, use this to specify that set to be compared with the `metric` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-cidrs // Cidrs *[]*string `field:"optional" json:"cidrs" yaml:"cidrs"` // If the `comparisonOperator` calls for a numeric value, use this to specify that numeric value to be compared with the `metric` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-count // Count *string `field:"optional" json:"count" yaml:"count"` // The numeric values of a metric. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-number // Number *float64 `field:"optional" json:"number" yaml:"number"` // The numeric value of a metric. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-numbers // Numbers interface{} `field:"optional" json:"numbers" yaml:"numbers"` // If the `comparisonOperator` calls for a set of ports, use this to specify that set to be compared with the `metric` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-ports // Ports interface{} `field:"optional" json:"ports" yaml:"ports"` // The string values of a metric. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-strings // Strings *[]*string `field:"optional" json:"strings" yaml:"strings"` }
The value to be compared with the `metric` .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" metricValueProperty := &MetricValueProperty{ Cidrs: []*string{ jsii.String("cidrs"), }, Count: jsii.String("count"), Number: jsii.Number(123), Numbers: []interface{}{ jsii.Number(123), }, Ports: []interface{}{ jsii.Number(123), }, Strings: []*string{ jsii.String("strings"), }, }
type CfnSecurityProfile_StatisticalThresholdProperty ¶
type CfnSecurityProfile_StatisticalThresholdProperty struct { // The percentile that resolves to a threshold value by which compliance with a behavior is determined. // // Metrics are collected over the specified period ( `durationSeconds` ) from all reporting devices in your account and statistical ranks are calculated. Then, the measurements from a device are collected over the same period. If the accumulated measurements from the device fall above or below ( `comparisonOperator` ) the value associated with the percentile specified, then the device is considered to be in compliance with the behavior, otherwise a violation occurs. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-statisticalthreshold.html#cfn-iot-securityprofile-statisticalthreshold-statistic // Statistic *string `field:"optional" json:"statistic" yaml:"statistic"` }
A statistical ranking (percentile) that indicates a threshold value by which a behavior is determined to be in compliance or in violation of the behavior.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" statisticalThresholdProperty := &StatisticalThresholdProperty{ Statistic: jsii.String("statistic"), }
type CfnSoftwarePackage ¶ added in v2.101.0
type CfnSoftwarePackage interface { awscdk.CfnResource awscdk.IInspectable AttrPackageArn() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string Description() *string SetDescription(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node PackageName() *string SetPackageName(val *string) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // An array of key-value pairs to apply to this resource. Tags() *[]*awscdk.CfnTag SetTags(val *[]*awscdk.CfnTag) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
resource definition.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnSoftwarePackage := awscdk.Aws_iot.NewCfnSoftwarePackage(this, jsii.String("MyCfnSoftwarePackage"), &CfnSoftwarePackageProps{ Description: jsii.String("description"), PackageName: jsii.String("packageName"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackage.html
func NewCfnSoftwarePackage ¶ added in v2.101.0
func NewCfnSoftwarePackage(scope constructs.Construct, id *string, props *CfnSoftwarePackageProps) CfnSoftwarePackage
type CfnSoftwarePackageProps ¶ added in v2.101.0
type CfnSoftwarePackageProps struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackage.html#cfn-iot-softwarepackage-description // Description *string `field:"optional" json:"description" yaml:"description"` // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackage.html#cfn-iot-softwarepackage-packagename // PackageName *string `field:"optional" json:"packageName" yaml:"packageName"` // An array of key-value pairs to apply to this resource. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackage.html#cfn-iot-softwarepackage-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnSoftwarePackage`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnSoftwarePackageProps := &CfnSoftwarePackageProps{ Description: jsii.String("description"), PackageName: jsii.String("packageName"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackage.html
type CfnSoftwarePackageVersion ¶ added in v2.101.0
type CfnSoftwarePackageVersion interface { awscdk.CfnResource awscdk.IInspectable AttrErrorReason() *string Attributes() interface{} SetAttributes(val interface{}) AttrPackageVersionArn() *string AttrStatus() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string Description() *string SetDescription(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node PackageName() *string SetPackageName(val *string) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // An array of key-value pairs to apply to this resource. Tags() *[]*awscdk.CfnTag SetTags(val *[]*awscdk.CfnTag) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} VersionName() *string SetVersionName(val *string) // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
resource definition.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnSoftwarePackageVersion := awscdk.Aws_iot.NewCfnSoftwarePackageVersion(this, jsii.String("MyCfnSoftwarePackageVersion"), &CfnSoftwarePackageVersionProps{ PackageName: jsii.String("packageName"), // the properties below are optional Attributes: map[string]*string{ "attributesKey": jsii.String("attributes"), }, Description: jsii.String("description"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, VersionName: jsii.String("versionName"), })
func NewCfnSoftwarePackageVersion ¶ added in v2.101.0
func NewCfnSoftwarePackageVersion(scope constructs.Construct, id *string, props *CfnSoftwarePackageVersionProps) CfnSoftwarePackageVersion
type CfnSoftwarePackageVersionProps ¶ added in v2.101.0
type CfnSoftwarePackageVersionProps struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackageversion.html#cfn-iot-softwarepackageversion-packagename // PackageName *string `field:"required" json:"packageName" yaml:"packageName"` // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackageversion.html#cfn-iot-softwarepackageversion-attributes // Attributes interface{} `field:"optional" json:"attributes" yaml:"attributes"` // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackageversion.html#cfn-iot-softwarepackageversion-description // Description *string `field:"optional" json:"description" yaml:"description"` // An array of key-value pairs to apply to this resource. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackageversion.html#cfn-iot-softwarepackageversion-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackageversion.html#cfn-iot-softwarepackageversion-versionname // VersionName *string `field:"optional" json:"versionName" yaml:"versionName"` }
Properties for defining a `CfnSoftwarePackageVersion`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnSoftwarePackageVersionProps := &CfnSoftwarePackageVersionProps{ PackageName: jsii.String("packageName"), // the properties below are optional Attributes: map[string]*string{ "attributesKey": jsii.String("attributes"), }, Description: jsii.String("description"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, VersionName: jsii.String("versionName"), }
type CfnThing ¶
type CfnThing interface { awscdk.CfnResource awscdk.IInspectable // The Amazon Resource Name (ARN) of the AWS IoT thing, such as `arn:aws:iot:us-east-2:123456789012:thing/MyThing` . AttrArn() *string // A string that contains up to three key value pairs. AttributePayload() interface{} SetAttributePayload(val interface{}) // The Id of this thing. AttrId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // The name of the thing to update. ThingName() *string SetThingName(val *string) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Use the `AWS::IoT::Thing` resource to declare an AWS IoT thing.
For information about working with things, see [How AWS IoT Works](https://docs.aws.amazon.com/iot/latest/developerguide/aws-iot-how-it-works.html) and [Device Registry for AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/thing-registry.html) in the *AWS IoT Developer Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnThing := awscdk.Aws_iot.NewCfnThing(this, jsii.String("MyCfnThing"), &CfnThingProps{ AttributePayload: &AttributePayloadProperty{ Attributes: map[string]*string{ "attributesKey": jsii.String("attributes"), }, }, ThingName: jsii.String("thingName"), })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html
func NewCfnThing ¶
func NewCfnThing(scope constructs.Construct, id *string, props *CfnThingProps) CfnThing
type CfnThingGroup ¶ added in v2.80.0
type CfnThingGroup interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // The thing group ARN. AttrArn() *string // The thing group ID. AttrId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // The parent thing group name. ParentGroupName() *string SetParentGroupName(val *string) // The dynamic thing group search query string. QueryString() *string SetQueryString(val *string) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // Metadata which can be used to manage the thing group or dynamic thing group. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // The thing group name. ThingGroupName() *string SetThingGroupName(val *string) // Thing group properties. ThingGroupProperties() interface{} SetThingGroupProperties(val interface{}) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Creates a new thing group.
A dynamic thing group is created if the resource template contains the `QueryString` attribute. A dynamic thing group will not contain the `ParentGroupName` attribute. A static thing group and dynamic thing group can't be converted to each other via the addition or removal of the `QueryString` attribute.
> This is a control plane operation. See [Authorization](https://docs.aws.amazon.com/iot/latest/developerguide/iot-authorization.html) for information about authorizing control plane actions.
Requires permission to access the [CreateThingGroup](https://docs.aws.amazon.com//service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions) action.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnThingGroup := awscdk.Aws_iot.NewCfnThingGroup(this, jsii.String("MyCfnThingGroup"), &CfnThingGroupProps{ ParentGroupName: jsii.String("parentGroupName"), QueryString: jsii.String("queryString"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, ThingGroupName: jsii.String("thingGroupName"), ThingGroupProperties: &ThingGroupPropertiesProperty{ AttributePayload: &AttributePayloadProperty{ Attributes: map[string]*string{ "attributesKey": jsii.String("attributes"), }, }, ThingGroupDescription: jsii.String("thingGroupDescription"), }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thinggroup.html
func NewCfnThingGroup ¶ added in v2.80.0
func NewCfnThingGroup(scope constructs.Construct, id *string, props *CfnThingGroupProps) CfnThingGroup
type CfnThingGroupProps ¶ added in v2.80.0
type CfnThingGroupProps struct { // The parent thing group name. // // A Dynamic Thing Group does not have `parentGroupName` defined. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thinggroup.html#cfn-iot-thinggroup-parentgroupname // ParentGroupName *string `field:"optional" json:"parentGroupName" yaml:"parentGroupName"` // The dynamic thing group search query string. // // The `queryString` attribute *is* required for `CreateDynamicThingGroup` . The `queryString` attribute *is not* required for `CreateThingGroup` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thinggroup.html#cfn-iot-thinggroup-querystring // QueryString *string `field:"optional" json:"queryString" yaml:"queryString"` // Metadata which can be used to manage the thing group or dynamic thing group. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thinggroup.html#cfn-iot-thinggroup-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` // The thing group name. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thinggroup.html#cfn-iot-thinggroup-thinggroupname // ThingGroupName *string `field:"optional" json:"thingGroupName" yaml:"thingGroupName"` // Thing group properties. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thinggroup.html#cfn-iot-thinggroup-thinggroupproperties // ThingGroupProperties interface{} `field:"optional" json:"thingGroupProperties" yaml:"thingGroupProperties"` }
Properties for defining a `CfnThingGroup`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnThingGroupProps := &CfnThingGroupProps{ ParentGroupName: jsii.String("parentGroupName"), QueryString: jsii.String("queryString"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, ThingGroupName: jsii.String("thingGroupName"), ThingGroupProperties: &ThingGroupPropertiesProperty{ AttributePayload: &AttributePayloadProperty{ Attributes: map[string]*string{ "attributesKey": jsii.String("attributes"), }, }, ThingGroupDescription: jsii.String("thingGroupDescription"), }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thinggroup.html
type CfnThingGroup_AttributePayloadProperty ¶ added in v2.80.0
type CfnThingGroup_AttributePayloadProperty struct { // A JSON string containing up to three key-value pair in JSON format. For example:. // // `{\"attributes\":{\"string1\":\"string2\"}}`. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thinggroup-attributepayload.html#cfn-iot-thinggroup-attributepayload-attributes // Attributes interface{} `field:"optional" json:"attributes" yaml:"attributes"` }
The attribute payload.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" attributePayloadProperty := &AttributePayloadProperty{ Attributes: map[string]*string{ "attributesKey": jsii.String("attributes"), }, }
type CfnThingGroup_ThingGroupPropertiesProperty ¶ added in v2.80.0
type CfnThingGroup_ThingGroupPropertiesProperty struct { // The thing group attributes in JSON format. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thinggroup-thinggroupproperties.html#cfn-iot-thinggroup-thinggroupproperties-attributepayload // AttributePayload interface{} `field:"optional" json:"attributePayload" yaml:"attributePayload"` // The thing group description. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thinggroup-thinggroupproperties.html#cfn-iot-thinggroup-thinggroupproperties-thinggroupdescription // ThingGroupDescription *string `field:"optional" json:"thingGroupDescription" yaml:"thingGroupDescription"` }
Thing group properties.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" thingGroupPropertiesProperty := &ThingGroupPropertiesProperty{ AttributePayload: &AttributePayloadProperty{ Attributes: map[string]*string{ "attributesKey": jsii.String("attributes"), }, }, ThingGroupDescription: jsii.String("thingGroupDescription"), }
type CfnThingPrincipalAttachment ¶
type CfnThingPrincipalAttachment interface { awscdk.CfnResource awscdk.IInspectable AttrId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // The principal, which can be a certificate ARN (as returned from the `CreateCertificate` operation) or an Amazon Cognito ID. Principal() *string SetPrincipal(val *string) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // The name of the AWS IoT thing. ThingName() *string SetThingName(val *string) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Use the `AWS::IoT::ThingPrincipalAttachment` resource to attach a principal (an X.509 certificate or another credential) to a thing.
For more information about working with AWS IoT things and principals, see [Authorization](https://docs.aws.amazon.com/iot/latest/developerguide/authorization.html) in the *AWS IoT Developer Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnThingPrincipalAttachment := awscdk.Aws_iot.NewCfnThingPrincipalAttachment(this, jsii.String("MyCfnThingPrincipalAttachment"), &CfnThingPrincipalAttachmentProps{ Principal: jsii.String("principal"), ThingName: jsii.String("thingName"), })
func NewCfnThingPrincipalAttachment ¶
func NewCfnThingPrincipalAttachment(scope constructs.Construct, id *string, props *CfnThingPrincipalAttachmentProps) CfnThingPrincipalAttachment
type CfnThingPrincipalAttachmentProps ¶
type CfnThingPrincipalAttachmentProps struct { // The principal, which can be a certificate ARN (as returned from the `CreateCertificate` operation) or an Amazon Cognito ID. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html#cfn-iot-thingprincipalattachment-principal // Principal *string `field:"required" json:"principal" yaml:"principal"` // The name of the AWS IoT thing. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html#cfn-iot-thingprincipalattachment-thingname // ThingName *string `field:"required" json:"thingName" yaml:"thingName"` }
Properties for defining a `CfnThingPrincipalAttachment`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnThingPrincipalAttachmentProps := &CfnThingPrincipalAttachmentProps{ Principal: jsii.String("principal"), ThingName: jsii.String("thingName"), }
type CfnThingProps ¶
type CfnThingProps struct { // A string that contains up to three key value pairs. // // Maximum length of 800. Duplicates not allowed. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html#cfn-iot-thing-attributepayload // AttributePayload interface{} `field:"optional" json:"attributePayload" yaml:"attributePayload"` // The name of the thing to update. // // You can't change a thing's name. To change a thing's name, you must create a new thing, give it the new name, and then delete the old thing. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html#cfn-iot-thing-thingname // ThingName *string `field:"optional" json:"thingName" yaml:"thingName"` }
Properties for defining a `CfnThing`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnThingProps := &CfnThingProps{ AttributePayload: &AttributePayloadProperty{ Attributes: map[string]*string{ "attributesKey": jsii.String("attributes"), }, }, ThingName: jsii.String("thingName"), }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html
type CfnThingType ¶ added in v2.80.0
type CfnThingType interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // The thing type arn. AttrArn() *string // The thing type id. AttrId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // Deprecates a thing type. // // You can not associate new things with deprecated thing type. DeprecateThingType() interface{} SetDeprecateThingType(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // Metadata which can be used to manage the thing type. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // The name of the thing type. ThingTypeName() *string SetThingTypeName(val *string) // The thing type properties for the thing type to create. ThingTypeProperties() interface{} SetThingTypeProperties(val interface{}) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Creates a new thing type.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnThingType := awscdk.Aws_iot.NewCfnThingType(this, jsii.String("MyCfnThingType"), &CfnThingTypeProps{ DeprecateThingType: jsii.Boolean(false), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, ThingTypeName: jsii.String("thingTypeName"), ThingTypeProperties: &ThingTypePropertiesProperty{ SearchableAttributes: []*string{ jsii.String("searchableAttributes"), }, ThingTypeDescription: jsii.String("thingTypeDescription"), }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingtype.html
func NewCfnThingType ¶ added in v2.80.0
func NewCfnThingType(scope constructs.Construct, id *string, props *CfnThingTypeProps) CfnThingType
type CfnThingTypeProps ¶ added in v2.80.0
type CfnThingTypeProps struct { // Deprecates a thing type. You can not associate new things with deprecated thing type. // // Requires permission to access the [DeprecateThingType](https://docs.aws.amazon.com//service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions) action. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingtype.html#cfn-iot-thingtype-deprecatethingtype // DeprecateThingType interface{} `field:"optional" json:"deprecateThingType" yaml:"deprecateThingType"` // Metadata which can be used to manage the thing type. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingtype.html#cfn-iot-thingtype-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` // The name of the thing type. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingtype.html#cfn-iot-thingtype-thingtypename // ThingTypeName *string `field:"optional" json:"thingTypeName" yaml:"thingTypeName"` // The thing type properties for the thing type to create. // // It contains information about the new thing type including a description, and a list of searchable thing attribute names. `ThingTypeProperties` can't be updated after the initial creation of the `ThingType` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingtype.html#cfn-iot-thingtype-thingtypeproperties // ThingTypeProperties interface{} `field:"optional" json:"thingTypeProperties" yaml:"thingTypeProperties"` }
Properties for defining a `CfnThingType`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnThingTypeProps := &CfnThingTypeProps{ DeprecateThingType: jsii.Boolean(false), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, ThingTypeName: jsii.String("thingTypeName"), ThingTypeProperties: &ThingTypePropertiesProperty{ SearchableAttributes: []*string{ jsii.String("searchableAttributes"), }, ThingTypeDescription: jsii.String("thingTypeDescription"), }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingtype.html
type CfnThingType_ThingTypePropertiesProperty ¶ added in v2.80.0
type CfnThingType_ThingTypePropertiesProperty struct { // A list of searchable thing attribute names. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thingtype-thingtypeproperties.html#cfn-iot-thingtype-thingtypeproperties-searchableattributes // SearchableAttributes *[]*string `field:"optional" json:"searchableAttributes" yaml:"searchableAttributes"` // The description of the thing type. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thingtype-thingtypeproperties.html#cfn-iot-thingtype-thingtypeproperties-thingtypedescription // ThingTypeDescription *string `field:"optional" json:"thingTypeDescription" yaml:"thingTypeDescription"` }
The ThingTypeProperties contains information about the thing type including: a thing type description, and a list of searchable thing attribute names.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" thingTypePropertiesProperty := &ThingTypePropertiesProperty{ SearchableAttributes: []*string{ jsii.String("searchableAttributes"), }, ThingTypeDescription: jsii.String("thingTypeDescription"), }
type CfnThing_AttributePayloadProperty ¶
type CfnThing_AttributePayloadProperty struct { // A JSON string containing up to three key-value pair in JSON format. For example:. // // `{\"attributes\":{\"string1\":\"string2\"}}`. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thing-attributepayload.html#cfn-iot-thing-attributepayload-attributes // Attributes interface{} `field:"optional" json:"attributes" yaml:"attributes"` }
The AttributePayload property specifies up to three attributes for an AWS IoT as key-value pairs.
AttributePayload is a property of the [AWS::IoT::Thing](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html) resource.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" attributePayloadProperty := &AttributePayloadProperty{ Attributes: map[string]*string{ "attributesKey": jsii.String("attributes"), }, }
type CfnTopicRule ¶
type CfnTopicRule interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // The Amazon Resource Name (ARN) of the AWS IoT rule, such as `arn:aws:iot:us-east-2:123456789012:rule/MyIoTRule` . AttrArn() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The name of the rule. RuleName() *string SetRuleName(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // Metadata which can be used to manage the topic rule. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // The rule payload. TopicRulePayload() interface{} SetTopicRulePayload(val interface{}) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Use the `AWS::IoT::TopicRule` resource to declare an AWS IoT rule.
For information about working with AWS IoT rules, see [Rules for AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html) in the *AWS IoT Developer Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnTopicRule := awscdk.Aws_iot.NewCfnTopicRule(this, jsii.String("MyCfnTopicRule"), &CfnTopicRuleProps{ TopicRulePayload: &TopicRulePayloadProperty{ Actions: []interface{}{ &ActionProperty{ CloudwatchAlarm: &CloudwatchAlarmActionProperty{ AlarmName: jsii.String("alarmName"), RoleArn: jsii.String("roleArn"), StateReason: jsii.String("stateReason"), StateValue: jsii.String("stateValue"), }, CloudwatchLogs: &CloudwatchLogsActionProperty{ LogGroupName: jsii.String("logGroupName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), }, CloudwatchMetric: &CloudwatchMetricActionProperty{ MetricName: jsii.String("metricName"), MetricNamespace: jsii.String("metricNamespace"), MetricUnit: jsii.String("metricUnit"), MetricValue: jsii.String("metricValue"), RoleArn: jsii.String("roleArn"), // the properties below are optional MetricTimestamp: jsii.String("metricTimestamp"), }, DynamoDb: &DynamoDBActionProperty{ HashKeyField: jsii.String("hashKeyField"), HashKeyValue: jsii.String("hashKeyValue"), RoleArn: jsii.String("roleArn"), TableName: jsii.String("tableName"), // the properties below are optional HashKeyType: jsii.String("hashKeyType"), PayloadField: jsii.String("payloadField"), RangeKeyField: jsii.String("rangeKeyField"), RangeKeyType: jsii.String("rangeKeyType"), RangeKeyValue: jsii.String("rangeKeyValue"), }, DynamoDBv2: &DynamoDBv2ActionProperty{ PutItem: &PutItemInputProperty{ TableName: jsii.String("tableName"), }, RoleArn: jsii.String("roleArn"), }, Elasticsearch: &ElasticsearchActionProperty{ Endpoint: jsii.String("endpoint"), Id: jsii.String("id"), Index: jsii.String("index"), RoleArn: jsii.String("roleArn"), Type: jsii.String("type"), }, Firehose: &FirehoseActionProperty{ DeliveryStreamName: jsii.String("deliveryStreamName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), Separator: jsii.String("separator"), }, Http: &HttpActionProperty{ Url: jsii.String("url"), // the properties below are optional Auth: &HttpAuthorizationProperty{ Sigv4: &SigV4AuthorizationProperty{ RoleArn: jsii.String("roleArn"), ServiceName: jsii.String("serviceName"), SigningRegion: jsii.String("signingRegion"), }, }, ConfirmationUrl: jsii.String("confirmationUrl"), Headers: []interface{}{ &HttpActionHeaderProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }, IotAnalytics: &IotAnalyticsActionProperty{ ChannelName: jsii.String("channelName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), }, IotEvents: &IotEventsActionProperty{ InputName: jsii.String("inputName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), MessageId: jsii.String("messageId"), }, IotSiteWise: &IotSiteWiseActionProperty{ PutAssetPropertyValueEntries: []interface{}{ &PutAssetPropertyValueEntryProperty{ PropertyValues: []interface{}{ &AssetPropertyValueProperty{ Timestamp: &AssetPropertyTimestampProperty{ TimeInSeconds: jsii.String("timeInSeconds"), // the properties below are optional OffsetInNanos: jsii.String("offsetInNanos"), }, Value: &AssetPropertyVariantProperty{ BooleanValue: jsii.String("booleanValue"), DoubleValue: jsii.String("doubleValue"), IntegerValue: jsii.String("integerValue"), StringValue: jsii.String("stringValue"), }, // the properties below are optional Quality: jsii.String("quality"), }, }, // the properties below are optional AssetId: jsii.String("assetId"), EntryId: jsii.String("entryId"), PropertyAlias: jsii.String("propertyAlias"), PropertyId: jsii.String("propertyId"), }, }, RoleArn: jsii.String("roleArn"), }, Kafka: &KafkaActionProperty{ ClientProperties: map[string]*string{ "clientPropertiesKey": jsii.String("clientProperties"), }, DestinationArn: jsii.String("destinationArn"), Topic: jsii.String("topic"), // the properties below are optional Key: jsii.String("key"), Partition: jsii.String("partition"), }, Kinesis: &KinesisActionProperty{ RoleArn: jsii.String("roleArn"), StreamName: jsii.String("streamName"), // the properties below are optional PartitionKey: jsii.String("partitionKey"), }, Lambda: &LambdaActionProperty{ FunctionArn: jsii.String("functionArn"), }, Location: &LocationActionProperty{ DeviceId: jsii.String("deviceId"), Latitude: jsii.String("latitude"), Longitude: jsii.String("longitude"), RoleArn: jsii.String("roleArn"), TrackerName: jsii.String("trackerName"), // the properties below are optional Timestamp: &TimestampProperty{ Value: jsii.String("value"), // the properties below are optional Unit: jsii.String("unit"), }, }, OpenSearch: &OpenSearchActionProperty{ Endpoint: jsii.String("endpoint"), Id: jsii.String("id"), Index: jsii.String("index"), RoleArn: jsii.String("roleArn"), Type: jsii.String("type"), }, Republish: &RepublishActionProperty{ RoleArn: jsii.String("roleArn"), Topic: jsii.String("topic"), // the properties below are optional Headers: &RepublishActionHeadersProperty{ ContentType: jsii.String("contentType"), CorrelationData: jsii.String("correlationData"), MessageExpiry: jsii.String("messageExpiry"), PayloadFormatIndicator: jsii.String("payloadFormatIndicator"), ResponseTopic: jsii.String("responseTopic"), UserProperties: []interface{}{ &UserPropertyProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }, Qos: jsii.Number(123), }, S3: &S3ActionProperty{ BucketName: jsii.String("bucketName"), Key: jsii.String("key"), RoleArn: jsii.String("roleArn"), // the properties below are optional CannedAcl: jsii.String("cannedAcl"), }, Sns: &SnsActionProperty{ RoleArn: jsii.String("roleArn"), TargetArn: jsii.String("targetArn"), // the properties below are optional MessageFormat: jsii.String("messageFormat"), }, Sqs: &SqsActionProperty{ QueueUrl: jsii.String("queueUrl"), RoleArn: jsii.String("roleArn"), // the properties below are optional UseBase64: jsii.Boolean(false), }, StepFunctions: &StepFunctionsActionProperty{ RoleArn: jsii.String("roleArn"), StateMachineName: jsii.String("stateMachineName"), // the properties below are optional ExecutionNamePrefix: jsii.String("executionNamePrefix"), }, Timestream: &TimestreamActionProperty{ DatabaseName: jsii.String("databaseName"), Dimensions: []interface{}{ &TimestreamDimensionProperty{ Name: jsii.String("name"), Value: jsii.String("value"), }, }, RoleArn: jsii.String("roleArn"), TableName: jsii.String("tableName"), // the properties below are optional Timestamp: &TimestreamTimestampProperty{ Unit: jsii.String("unit"), Value: jsii.String("value"), }, }, }, }, Sql: jsii.String("sql"), // the properties below are optional AwsIotSqlVersion: jsii.String("awsIotSqlVersion"), Description: jsii.String("description"), ErrorAction: &ActionProperty{ CloudwatchAlarm: &CloudwatchAlarmActionProperty{ AlarmName: jsii.String("alarmName"), RoleArn: jsii.String("roleArn"), StateReason: jsii.String("stateReason"), StateValue: jsii.String("stateValue"), }, CloudwatchLogs: &CloudwatchLogsActionProperty{ LogGroupName: jsii.String("logGroupName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), }, CloudwatchMetric: &CloudwatchMetricActionProperty{ MetricName: jsii.String("metricName"), MetricNamespace: jsii.String("metricNamespace"), MetricUnit: jsii.String("metricUnit"), MetricValue: jsii.String("metricValue"), RoleArn: jsii.String("roleArn"), // the properties below are optional MetricTimestamp: jsii.String("metricTimestamp"), }, DynamoDb: &DynamoDBActionProperty{ HashKeyField: jsii.String("hashKeyField"), HashKeyValue: jsii.String("hashKeyValue"), RoleArn: jsii.String("roleArn"), TableName: jsii.String("tableName"), // the properties below are optional HashKeyType: jsii.String("hashKeyType"), PayloadField: jsii.String("payloadField"), RangeKeyField: jsii.String("rangeKeyField"), RangeKeyType: jsii.String("rangeKeyType"), RangeKeyValue: jsii.String("rangeKeyValue"), }, DynamoDBv2: &DynamoDBv2ActionProperty{ PutItem: &PutItemInputProperty{ TableName: jsii.String("tableName"), }, RoleArn: jsii.String("roleArn"), }, Elasticsearch: &ElasticsearchActionProperty{ Endpoint: jsii.String("endpoint"), Id: jsii.String("id"), Index: jsii.String("index"), RoleArn: jsii.String("roleArn"), Type: jsii.String("type"), }, Firehose: &FirehoseActionProperty{ DeliveryStreamName: jsii.String("deliveryStreamName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), Separator: jsii.String("separator"), }, Http: &HttpActionProperty{ Url: jsii.String("url"), // the properties below are optional Auth: &HttpAuthorizationProperty{ Sigv4: &SigV4AuthorizationProperty{ RoleArn: jsii.String("roleArn"), ServiceName: jsii.String("serviceName"), SigningRegion: jsii.String("signingRegion"), }, }, ConfirmationUrl: jsii.String("confirmationUrl"), Headers: []interface{}{ &HttpActionHeaderProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }, IotAnalytics: &IotAnalyticsActionProperty{ ChannelName: jsii.String("channelName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), }, IotEvents: &IotEventsActionProperty{ InputName: jsii.String("inputName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), MessageId: jsii.String("messageId"), }, IotSiteWise: &IotSiteWiseActionProperty{ PutAssetPropertyValueEntries: []interface{}{ &PutAssetPropertyValueEntryProperty{ PropertyValues: []interface{}{ &AssetPropertyValueProperty{ Timestamp: &AssetPropertyTimestampProperty{ TimeInSeconds: jsii.String("timeInSeconds"), // the properties below are optional OffsetInNanos: jsii.String("offsetInNanos"), }, Value: &AssetPropertyVariantProperty{ BooleanValue: jsii.String("booleanValue"), DoubleValue: jsii.String("doubleValue"), IntegerValue: jsii.String("integerValue"), StringValue: jsii.String("stringValue"), }, // the properties below are optional Quality: jsii.String("quality"), }, }, // the properties below are optional AssetId: jsii.String("assetId"), EntryId: jsii.String("entryId"), PropertyAlias: jsii.String("propertyAlias"), PropertyId: jsii.String("propertyId"), }, }, RoleArn: jsii.String("roleArn"), }, Kafka: &KafkaActionProperty{ ClientProperties: map[string]*string{ "clientPropertiesKey": jsii.String("clientProperties"), }, DestinationArn: jsii.String("destinationArn"), Topic: jsii.String("topic"), // the properties below are optional Key: jsii.String("key"), Partition: jsii.String("partition"), }, Kinesis: &KinesisActionProperty{ RoleArn: jsii.String("roleArn"), StreamName: jsii.String("streamName"), // the properties below are optional PartitionKey: jsii.String("partitionKey"), }, Lambda: &LambdaActionProperty{ FunctionArn: jsii.String("functionArn"), }, Location: &LocationActionProperty{ DeviceId: jsii.String("deviceId"), Latitude: jsii.String("latitude"), Longitude: jsii.String("longitude"), RoleArn: jsii.String("roleArn"), TrackerName: jsii.String("trackerName"), // the properties below are optional Timestamp: &TimestampProperty{ Value: jsii.String("value"), // the properties below are optional Unit: jsii.String("unit"), }, }, OpenSearch: &OpenSearchActionProperty{ Endpoint: jsii.String("endpoint"), Id: jsii.String("id"), Index: jsii.String("index"), RoleArn: jsii.String("roleArn"), Type: jsii.String("type"), }, Republish: &RepublishActionProperty{ RoleArn: jsii.String("roleArn"), Topic: jsii.String("topic"), // the properties below are optional Headers: &RepublishActionHeadersProperty{ ContentType: jsii.String("contentType"), CorrelationData: jsii.String("correlationData"), MessageExpiry: jsii.String("messageExpiry"), PayloadFormatIndicator: jsii.String("payloadFormatIndicator"), ResponseTopic: jsii.String("responseTopic"), UserProperties: []interface{}{ &UserPropertyProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }, Qos: jsii.Number(123), }, S3: &S3ActionProperty{ BucketName: jsii.String("bucketName"), Key: jsii.String("key"), RoleArn: jsii.String("roleArn"), // the properties below are optional CannedAcl: jsii.String("cannedAcl"), }, Sns: &SnsActionProperty{ RoleArn: jsii.String("roleArn"), TargetArn: jsii.String("targetArn"), // the properties below are optional MessageFormat: jsii.String("messageFormat"), }, Sqs: &SqsActionProperty{ QueueUrl: jsii.String("queueUrl"), RoleArn: jsii.String("roleArn"), // the properties below are optional UseBase64: jsii.Boolean(false), }, StepFunctions: &StepFunctionsActionProperty{ RoleArn: jsii.String("roleArn"), StateMachineName: jsii.String("stateMachineName"), // the properties below are optional ExecutionNamePrefix: jsii.String("executionNamePrefix"), }, Timestream: &TimestreamActionProperty{ DatabaseName: jsii.String("databaseName"), Dimensions: []interface{}{ &TimestreamDimensionProperty{ Name: jsii.String("name"), Value: jsii.String("value"), }, }, RoleArn: jsii.String("roleArn"), TableName: jsii.String("tableName"), // the properties below are optional Timestamp: &TimestreamTimestampProperty{ Unit: jsii.String("unit"), Value: jsii.String("value"), }, }, }, RuleDisabled: jsii.Boolean(false), }, // the properties below are optional RuleName: jsii.String("ruleName"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html
func NewCfnTopicRule ¶
func NewCfnTopicRule(scope constructs.Construct, id *string, props *CfnTopicRuleProps) CfnTopicRule
type CfnTopicRuleDestination ¶
type CfnTopicRuleDestination interface { awscdk.CfnResource awscdk.IInspectable // The topic rule destination URL. AttrArn() *string // Additional details or reason why the topic rule destination is in the current status. AttrStatusReason() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // Properties of the HTTP URL. HttpUrlProperties() interface{} SetHttpUrlProperties(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // - **IN_PROGRESS** - A topic rule destination was created but has not been confirmed. Status() *string SetStatus(val *string) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Properties of the virtual private cloud (VPC) connection. VpcProperties() interface{} SetVpcProperties(val interface{}) // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A topic rule destination.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnTopicRuleDestination := awscdk.Aws_iot.NewCfnTopicRuleDestination(this, jsii.String("MyCfnTopicRuleDestination"), &CfnTopicRuleDestinationProps{ HttpUrlProperties: &HttpUrlDestinationSummaryProperty{ ConfirmationUrl: jsii.String("confirmationUrl"), }, Status: jsii.String("status"), VpcProperties: &VpcDestinationPropertiesProperty{ RoleArn: jsii.String("roleArn"), SecurityGroups: []*string{ jsii.String("securityGroups"), }, SubnetIds: []*string{ jsii.String("subnetIds"), }, VpcId: jsii.String("vpcId"), }, })
func NewCfnTopicRuleDestination ¶
func NewCfnTopicRuleDestination(scope constructs.Construct, id *string, props *CfnTopicRuleDestinationProps) CfnTopicRuleDestination
type CfnTopicRuleDestinationProps ¶
type CfnTopicRuleDestinationProps struct { // Properties of the HTTP URL. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicruledestination.html#cfn-iot-topicruledestination-httpurlproperties // HttpUrlProperties interface{} `field:"optional" json:"httpUrlProperties" yaml:"httpUrlProperties"` // - **IN_PROGRESS** - A topic rule destination was created but has not been confirmed. // // You can set status to `IN_PROGRESS` by calling `UpdateTopicRuleDestination` . Calling `UpdateTopicRuleDestination` causes a new confirmation challenge to be sent to your confirmation endpoint. // - **ENABLED** - Confirmation was completed, and traffic to this destination is allowed. You can set status to `DISABLED` by calling `UpdateTopicRuleDestination` . // - **DISABLED** - Confirmation was completed, and traffic to this destination is not allowed. You can set status to `ENABLED` by calling `UpdateTopicRuleDestination` . // - **ERROR** - Confirmation could not be completed; for example, if the confirmation timed out. You can call `GetTopicRuleDestination` for details about the error. You can set status to `IN_PROGRESS` by calling `UpdateTopicRuleDestination` . Calling `UpdateTopicRuleDestination` causes a new confirmation challenge to be sent to your confirmation endpoint. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicruledestination.html#cfn-iot-topicruledestination-status // Status *string `field:"optional" json:"status" yaml:"status"` // Properties of the virtual private cloud (VPC) connection. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicruledestination.html#cfn-iot-topicruledestination-vpcproperties // VpcProperties interface{} `field:"optional" json:"vpcProperties" yaml:"vpcProperties"` }
Properties for defining a `CfnTopicRuleDestination`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnTopicRuleDestinationProps := &CfnTopicRuleDestinationProps{ HttpUrlProperties: &HttpUrlDestinationSummaryProperty{ ConfirmationUrl: jsii.String("confirmationUrl"), }, Status: jsii.String("status"), VpcProperties: &VpcDestinationPropertiesProperty{ RoleArn: jsii.String("roleArn"), SecurityGroups: []*string{ jsii.String("securityGroups"), }, SubnetIds: []*string{ jsii.String("subnetIds"), }, VpcId: jsii.String("vpcId"), }, }
type CfnTopicRuleDestination_HttpUrlDestinationSummaryProperty ¶
type CfnTopicRuleDestination_HttpUrlDestinationSummaryProperty struct { // The URL used to confirm the HTTP topic rule destination URL. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicruledestination-httpurldestinationsummary.html#cfn-iot-topicruledestination-httpurldestinationsummary-confirmationurl // ConfirmationUrl *string `field:"optional" json:"confirmationUrl" yaml:"confirmationUrl"` }
HTTP URL destination properties.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" httpUrlDestinationSummaryProperty := &HttpUrlDestinationSummaryProperty{ ConfirmationUrl: jsii.String("confirmationUrl"), }
type CfnTopicRuleDestination_VpcDestinationPropertiesProperty ¶
type CfnTopicRuleDestination_VpcDestinationPropertiesProperty struct { // The ARN of a role that has permission to create and attach to elastic network interfaces (ENIs). // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicruledestination-vpcdestinationproperties.html#cfn-iot-topicruledestination-vpcdestinationproperties-rolearn // RoleArn *string `field:"optional" json:"roleArn" yaml:"roleArn"` // The security groups of the VPC destination. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicruledestination-vpcdestinationproperties.html#cfn-iot-topicruledestination-vpcdestinationproperties-securitygroups // SecurityGroups *[]*string `field:"optional" json:"securityGroups" yaml:"securityGroups"` // The subnet IDs of the VPC destination. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicruledestination-vpcdestinationproperties.html#cfn-iot-topicruledestination-vpcdestinationproperties-subnetids // SubnetIds *[]*string `field:"optional" json:"subnetIds" yaml:"subnetIds"` // The ID of the VPC. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicruledestination-vpcdestinationproperties.html#cfn-iot-topicruledestination-vpcdestinationproperties-vpcid // VpcId *string `field:"optional" json:"vpcId" yaml:"vpcId"` }
The properties of a virtual private cloud (VPC) destination.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" vpcDestinationPropertiesProperty := &VpcDestinationPropertiesProperty{ RoleArn: jsii.String("roleArn"), SecurityGroups: []*string{ jsii.String("securityGroups"), }, SubnetIds: []*string{ jsii.String("subnetIds"), }, VpcId: jsii.String("vpcId"), }
type CfnTopicRuleProps ¶
type CfnTopicRuleProps struct { // The rule payload. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html#cfn-iot-topicrule-topicrulepayload // TopicRulePayload interface{} `field:"required" json:"topicRulePayload" yaml:"topicRulePayload"` // The name of the rule. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html#cfn-iot-topicrule-rulename // RuleName *string `field:"optional" json:"ruleName" yaml:"ruleName"` // Metadata which can be used to manage the topic rule. // // > For URI Request parameters use format: ...key1=value1&key2=value2... // > // > For the CLI command-line parameter use format: --tags "key1=value1&key2=value2..." // > // > For the cli-input-json file use format: "tags": "key1=value1&key2=value2..." // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html#cfn-iot-topicrule-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnTopicRule`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnTopicRuleProps := &CfnTopicRuleProps{ TopicRulePayload: &TopicRulePayloadProperty{ Actions: []interface{}{ &ActionProperty{ CloudwatchAlarm: &CloudwatchAlarmActionProperty{ AlarmName: jsii.String("alarmName"), RoleArn: jsii.String("roleArn"), StateReason: jsii.String("stateReason"), StateValue: jsii.String("stateValue"), }, CloudwatchLogs: &CloudwatchLogsActionProperty{ LogGroupName: jsii.String("logGroupName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), }, CloudwatchMetric: &CloudwatchMetricActionProperty{ MetricName: jsii.String("metricName"), MetricNamespace: jsii.String("metricNamespace"), MetricUnit: jsii.String("metricUnit"), MetricValue: jsii.String("metricValue"), RoleArn: jsii.String("roleArn"), // the properties below are optional MetricTimestamp: jsii.String("metricTimestamp"), }, DynamoDb: &DynamoDBActionProperty{ HashKeyField: jsii.String("hashKeyField"), HashKeyValue: jsii.String("hashKeyValue"), RoleArn: jsii.String("roleArn"), TableName: jsii.String("tableName"), // the properties below are optional HashKeyType: jsii.String("hashKeyType"), PayloadField: jsii.String("payloadField"), RangeKeyField: jsii.String("rangeKeyField"), RangeKeyType: jsii.String("rangeKeyType"), RangeKeyValue: jsii.String("rangeKeyValue"), }, DynamoDBv2: &DynamoDBv2ActionProperty{ PutItem: &PutItemInputProperty{ TableName: jsii.String("tableName"), }, RoleArn: jsii.String("roleArn"), }, Elasticsearch: &ElasticsearchActionProperty{ Endpoint: jsii.String("endpoint"), Id: jsii.String("id"), Index: jsii.String("index"), RoleArn: jsii.String("roleArn"), Type: jsii.String("type"), }, Firehose: &FirehoseActionProperty{ DeliveryStreamName: jsii.String("deliveryStreamName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), Separator: jsii.String("separator"), }, Http: &HttpActionProperty{ Url: jsii.String("url"), // the properties below are optional Auth: &HttpAuthorizationProperty{ Sigv4: &SigV4AuthorizationProperty{ RoleArn: jsii.String("roleArn"), ServiceName: jsii.String("serviceName"), SigningRegion: jsii.String("signingRegion"), }, }, ConfirmationUrl: jsii.String("confirmationUrl"), Headers: []interface{}{ &HttpActionHeaderProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }, IotAnalytics: &IotAnalyticsActionProperty{ ChannelName: jsii.String("channelName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), }, IotEvents: &IotEventsActionProperty{ InputName: jsii.String("inputName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), MessageId: jsii.String("messageId"), }, IotSiteWise: &IotSiteWiseActionProperty{ PutAssetPropertyValueEntries: []interface{}{ &PutAssetPropertyValueEntryProperty{ PropertyValues: []interface{}{ &AssetPropertyValueProperty{ Timestamp: &AssetPropertyTimestampProperty{ TimeInSeconds: jsii.String("timeInSeconds"), // the properties below are optional OffsetInNanos: jsii.String("offsetInNanos"), }, Value: &AssetPropertyVariantProperty{ BooleanValue: jsii.String("booleanValue"), DoubleValue: jsii.String("doubleValue"), IntegerValue: jsii.String("integerValue"), StringValue: jsii.String("stringValue"), }, // the properties below are optional Quality: jsii.String("quality"), }, }, // the properties below are optional AssetId: jsii.String("assetId"), EntryId: jsii.String("entryId"), PropertyAlias: jsii.String("propertyAlias"), PropertyId: jsii.String("propertyId"), }, }, RoleArn: jsii.String("roleArn"), }, Kafka: &KafkaActionProperty{ ClientProperties: map[string]*string{ "clientPropertiesKey": jsii.String("clientProperties"), }, DestinationArn: jsii.String("destinationArn"), Topic: jsii.String("topic"), // the properties below are optional Key: jsii.String("key"), Partition: jsii.String("partition"), }, Kinesis: &KinesisActionProperty{ RoleArn: jsii.String("roleArn"), StreamName: jsii.String("streamName"), // the properties below are optional PartitionKey: jsii.String("partitionKey"), }, Lambda: &LambdaActionProperty{ FunctionArn: jsii.String("functionArn"), }, Location: &LocationActionProperty{ DeviceId: jsii.String("deviceId"), Latitude: jsii.String("latitude"), Longitude: jsii.String("longitude"), RoleArn: jsii.String("roleArn"), TrackerName: jsii.String("trackerName"), // the properties below are optional Timestamp: &TimestampProperty{ Value: jsii.String("value"), // the properties below are optional Unit: jsii.String("unit"), }, }, OpenSearch: &OpenSearchActionProperty{ Endpoint: jsii.String("endpoint"), Id: jsii.String("id"), Index: jsii.String("index"), RoleArn: jsii.String("roleArn"), Type: jsii.String("type"), }, Republish: &RepublishActionProperty{ RoleArn: jsii.String("roleArn"), Topic: jsii.String("topic"), // the properties below are optional Headers: &RepublishActionHeadersProperty{ ContentType: jsii.String("contentType"), CorrelationData: jsii.String("correlationData"), MessageExpiry: jsii.String("messageExpiry"), PayloadFormatIndicator: jsii.String("payloadFormatIndicator"), ResponseTopic: jsii.String("responseTopic"), UserProperties: []interface{}{ &UserPropertyProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }, Qos: jsii.Number(123), }, S3: &S3ActionProperty{ BucketName: jsii.String("bucketName"), Key: jsii.String("key"), RoleArn: jsii.String("roleArn"), // the properties below are optional CannedAcl: jsii.String("cannedAcl"), }, Sns: &SnsActionProperty{ RoleArn: jsii.String("roleArn"), TargetArn: jsii.String("targetArn"), // the properties below are optional MessageFormat: jsii.String("messageFormat"), }, Sqs: &SqsActionProperty{ QueueUrl: jsii.String("queueUrl"), RoleArn: jsii.String("roleArn"), // the properties below are optional UseBase64: jsii.Boolean(false), }, StepFunctions: &StepFunctionsActionProperty{ RoleArn: jsii.String("roleArn"), StateMachineName: jsii.String("stateMachineName"), // the properties below are optional ExecutionNamePrefix: jsii.String("executionNamePrefix"), }, Timestream: &TimestreamActionProperty{ DatabaseName: jsii.String("databaseName"), Dimensions: []interface{}{ &TimestreamDimensionProperty{ Name: jsii.String("name"), Value: jsii.String("value"), }, }, RoleArn: jsii.String("roleArn"), TableName: jsii.String("tableName"), // the properties below are optional Timestamp: &TimestreamTimestampProperty{ Unit: jsii.String("unit"), Value: jsii.String("value"), }, }, }, }, Sql: jsii.String("sql"), // the properties below are optional AwsIotSqlVersion: jsii.String("awsIotSqlVersion"), Description: jsii.String("description"), ErrorAction: &ActionProperty{ CloudwatchAlarm: &CloudwatchAlarmActionProperty{ AlarmName: jsii.String("alarmName"), RoleArn: jsii.String("roleArn"), StateReason: jsii.String("stateReason"), StateValue: jsii.String("stateValue"), }, CloudwatchLogs: &CloudwatchLogsActionProperty{ LogGroupName: jsii.String("logGroupName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), }, CloudwatchMetric: &CloudwatchMetricActionProperty{ MetricName: jsii.String("metricName"), MetricNamespace: jsii.String("metricNamespace"), MetricUnit: jsii.String("metricUnit"), MetricValue: jsii.String("metricValue"), RoleArn: jsii.String("roleArn"), // the properties below are optional MetricTimestamp: jsii.String("metricTimestamp"), }, DynamoDb: &DynamoDBActionProperty{ HashKeyField: jsii.String("hashKeyField"), HashKeyValue: jsii.String("hashKeyValue"), RoleArn: jsii.String("roleArn"), TableName: jsii.String("tableName"), // the properties below are optional HashKeyType: jsii.String("hashKeyType"), PayloadField: jsii.String("payloadField"), RangeKeyField: jsii.String("rangeKeyField"), RangeKeyType: jsii.String("rangeKeyType"), RangeKeyValue: jsii.String("rangeKeyValue"), }, DynamoDBv2: &DynamoDBv2ActionProperty{ PutItem: &PutItemInputProperty{ TableName: jsii.String("tableName"), }, RoleArn: jsii.String("roleArn"), }, Elasticsearch: &ElasticsearchActionProperty{ Endpoint: jsii.String("endpoint"), Id: jsii.String("id"), Index: jsii.String("index"), RoleArn: jsii.String("roleArn"), Type: jsii.String("type"), }, Firehose: &FirehoseActionProperty{ DeliveryStreamName: jsii.String("deliveryStreamName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), Separator: jsii.String("separator"), }, Http: &HttpActionProperty{ Url: jsii.String("url"), // the properties below are optional Auth: &HttpAuthorizationProperty{ Sigv4: &SigV4AuthorizationProperty{ RoleArn: jsii.String("roleArn"), ServiceName: jsii.String("serviceName"), SigningRegion: jsii.String("signingRegion"), }, }, ConfirmationUrl: jsii.String("confirmationUrl"), Headers: []interface{}{ &HttpActionHeaderProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }, IotAnalytics: &IotAnalyticsActionProperty{ ChannelName: jsii.String("channelName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), }, IotEvents: &IotEventsActionProperty{ InputName: jsii.String("inputName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), MessageId: jsii.String("messageId"), }, IotSiteWise: &IotSiteWiseActionProperty{ PutAssetPropertyValueEntries: []interface{}{ &PutAssetPropertyValueEntryProperty{ PropertyValues: []interface{}{ &AssetPropertyValueProperty{ Timestamp: &AssetPropertyTimestampProperty{ TimeInSeconds: jsii.String("timeInSeconds"), // the properties below are optional OffsetInNanos: jsii.String("offsetInNanos"), }, Value: &AssetPropertyVariantProperty{ BooleanValue: jsii.String("booleanValue"), DoubleValue: jsii.String("doubleValue"), IntegerValue: jsii.String("integerValue"), StringValue: jsii.String("stringValue"), }, // the properties below are optional Quality: jsii.String("quality"), }, }, // the properties below are optional AssetId: jsii.String("assetId"), EntryId: jsii.String("entryId"), PropertyAlias: jsii.String("propertyAlias"), PropertyId: jsii.String("propertyId"), }, }, RoleArn: jsii.String("roleArn"), }, Kafka: &KafkaActionProperty{ ClientProperties: map[string]*string{ "clientPropertiesKey": jsii.String("clientProperties"), }, DestinationArn: jsii.String("destinationArn"), Topic: jsii.String("topic"), // the properties below are optional Key: jsii.String("key"), Partition: jsii.String("partition"), }, Kinesis: &KinesisActionProperty{ RoleArn: jsii.String("roleArn"), StreamName: jsii.String("streamName"), // the properties below are optional PartitionKey: jsii.String("partitionKey"), }, Lambda: &LambdaActionProperty{ FunctionArn: jsii.String("functionArn"), }, Location: &LocationActionProperty{ DeviceId: jsii.String("deviceId"), Latitude: jsii.String("latitude"), Longitude: jsii.String("longitude"), RoleArn: jsii.String("roleArn"), TrackerName: jsii.String("trackerName"), // the properties below are optional Timestamp: &TimestampProperty{ Value: jsii.String("value"), // the properties below are optional Unit: jsii.String("unit"), }, }, OpenSearch: &OpenSearchActionProperty{ Endpoint: jsii.String("endpoint"), Id: jsii.String("id"), Index: jsii.String("index"), RoleArn: jsii.String("roleArn"), Type: jsii.String("type"), }, Republish: &RepublishActionProperty{ RoleArn: jsii.String("roleArn"), Topic: jsii.String("topic"), // the properties below are optional Headers: &RepublishActionHeadersProperty{ ContentType: jsii.String("contentType"), CorrelationData: jsii.String("correlationData"), MessageExpiry: jsii.String("messageExpiry"), PayloadFormatIndicator: jsii.String("payloadFormatIndicator"), ResponseTopic: jsii.String("responseTopic"), UserProperties: []interface{}{ &UserPropertyProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }, Qos: jsii.Number(123), }, S3: &S3ActionProperty{ BucketName: jsii.String("bucketName"), Key: jsii.String("key"), RoleArn: jsii.String("roleArn"), // the properties below are optional CannedAcl: jsii.String("cannedAcl"), }, Sns: &SnsActionProperty{ RoleArn: jsii.String("roleArn"), TargetArn: jsii.String("targetArn"), // the properties below are optional MessageFormat: jsii.String("messageFormat"), }, Sqs: &SqsActionProperty{ QueueUrl: jsii.String("queueUrl"), RoleArn: jsii.String("roleArn"), // the properties below are optional UseBase64: jsii.Boolean(false), }, StepFunctions: &StepFunctionsActionProperty{ RoleArn: jsii.String("roleArn"), StateMachineName: jsii.String("stateMachineName"), // the properties below are optional ExecutionNamePrefix: jsii.String("executionNamePrefix"), }, Timestream: &TimestreamActionProperty{ DatabaseName: jsii.String("databaseName"), Dimensions: []interface{}{ &TimestreamDimensionProperty{ Name: jsii.String("name"), Value: jsii.String("value"), }, }, RoleArn: jsii.String("roleArn"), TableName: jsii.String("tableName"), // the properties below are optional Timestamp: &TimestreamTimestampProperty{ Unit: jsii.String("unit"), Value: jsii.String("value"), }, }, }, RuleDisabled: jsii.Boolean(false), }, // the properties below are optional RuleName: jsii.String("ruleName"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html
type CfnTopicRule_ActionProperty ¶
type CfnTopicRule_ActionProperty struct { // Change the state of a CloudWatch alarm. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-cloudwatchalarm // CloudwatchAlarm interface{} `field:"optional" json:"cloudwatchAlarm" yaml:"cloudwatchAlarm"` // Sends data to CloudWatch. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-cloudwatchlogs // CloudwatchLogs interface{} `field:"optional" json:"cloudwatchLogs" yaml:"cloudwatchLogs"` // Capture a CloudWatch metric. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-cloudwatchmetric // CloudwatchMetric interface{} `field:"optional" json:"cloudwatchMetric" yaml:"cloudwatchMetric"` // Write to a DynamoDB table. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-dynamodb // DynamoDb interface{} `field:"optional" json:"dynamoDb" yaml:"dynamoDb"` // Write to a DynamoDB table. // // This is a new version of the DynamoDB action. It allows you to write each attribute in an MQTT message payload into a separate DynamoDB column. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-dynamodbv2 // DynamoDBv2 interface{} `field:"optional" json:"dynamoDBv2" yaml:"dynamoDBv2"` // Write data to an Amazon OpenSearch Service domain. // // > The `Elasticsearch` action can only be used by existing rule actions. To create a new rule action or to update an existing rule action, use the `OpenSearch` rule action instead. For more information, see [OpenSearchAction](https://docs.aws.amazon.com//iot/latest/apireference/API_OpenSearchAction.html) . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-elasticsearch // Elasticsearch interface{} `field:"optional" json:"elasticsearch" yaml:"elasticsearch"` // Write to an Amazon Kinesis Firehose stream. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-firehose // Firehose interface{} `field:"optional" json:"firehose" yaml:"firehose"` // Send data to an HTTPS endpoint. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-http // Http interface{} `field:"optional" json:"http" yaml:"http"` // Sends message data to an AWS IoT Analytics channel. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-iotanalytics // IotAnalytics interface{} `field:"optional" json:"iotAnalytics" yaml:"iotAnalytics"` // Sends an input to an AWS IoT Events detector. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-iotevents // IotEvents interface{} `field:"optional" json:"iotEvents" yaml:"iotEvents"` // Sends data from the MQTT message that triggered the rule to AWS IoT SiteWise asset properties. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-iotsitewise // IotSiteWise interface{} `field:"optional" json:"iotSiteWise" yaml:"iotSiteWise"` // Send messages to an Amazon Managed Streaming for Apache Kafka (Amazon MSK) or self-managed Apache Kafka cluster. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-kafka // Kafka interface{} `field:"optional" json:"kafka" yaml:"kafka"` // Write data to an Amazon Kinesis stream. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-kinesis // Kinesis interface{} `field:"optional" json:"kinesis" yaml:"kinesis"` // Invoke a Lambda function. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-lambda // Lambda interface{} `field:"optional" json:"lambda" yaml:"lambda"` // Sends device location data to [Amazon Location Service](https://docs.aws.amazon.com//location/latest/developerguide/welcome.html) . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-location // Location interface{} `field:"optional" json:"location" yaml:"location"` // Write data to an Amazon OpenSearch Service domain. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-opensearch // OpenSearch interface{} `field:"optional" json:"openSearch" yaml:"openSearch"` // Publish to another MQTT topic. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-republish // Republish interface{} `field:"optional" json:"republish" yaml:"republish"` // Write to an Amazon S3 bucket. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-s3 // S3 interface{} `field:"optional" json:"s3" yaml:"s3"` // Publish to an Amazon SNS topic. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-sns // Sns interface{} `field:"optional" json:"sns" yaml:"sns"` // Publish to an Amazon SQS queue. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-sqs // Sqs interface{} `field:"optional" json:"sqs" yaml:"sqs"` // Starts execution of a Step Functions state machine. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-stepfunctions // StepFunctions interface{} `field:"optional" json:"stepFunctions" yaml:"stepFunctions"` // Writes attributes from an MQTT message. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-timestream // Timestream interface{} `field:"optional" json:"timestream" yaml:"timestream"` }
Describes the actions associated with a rule.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" actionProperty := &ActionProperty{ CloudwatchAlarm: &CloudwatchAlarmActionProperty{ AlarmName: jsii.String("alarmName"), RoleArn: jsii.String("roleArn"), StateReason: jsii.String("stateReason"), StateValue: jsii.String("stateValue"), }, CloudwatchLogs: &CloudwatchLogsActionProperty{ LogGroupName: jsii.String("logGroupName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), }, CloudwatchMetric: &CloudwatchMetricActionProperty{ MetricName: jsii.String("metricName"), MetricNamespace: jsii.String("metricNamespace"), MetricUnit: jsii.String("metricUnit"), MetricValue: jsii.String("metricValue"), RoleArn: jsii.String("roleArn"), // the properties below are optional MetricTimestamp: jsii.String("metricTimestamp"), }, DynamoDb: &DynamoDBActionProperty{ HashKeyField: jsii.String("hashKeyField"), HashKeyValue: jsii.String("hashKeyValue"), RoleArn: jsii.String("roleArn"), TableName: jsii.String("tableName"), // the properties below are optional HashKeyType: jsii.String("hashKeyType"), PayloadField: jsii.String("payloadField"), RangeKeyField: jsii.String("rangeKeyField"), RangeKeyType: jsii.String("rangeKeyType"), RangeKeyValue: jsii.String("rangeKeyValue"), }, DynamoDBv2: &DynamoDBv2ActionProperty{ PutItem: &PutItemInputProperty{ TableName: jsii.String("tableName"), }, RoleArn: jsii.String("roleArn"), }, Elasticsearch: &ElasticsearchActionProperty{ Endpoint: jsii.String("endpoint"), Id: jsii.String("id"), Index: jsii.String("index"), RoleArn: jsii.String("roleArn"), Type: jsii.String("type"), }, Firehose: &FirehoseActionProperty{ DeliveryStreamName: jsii.String("deliveryStreamName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), Separator: jsii.String("separator"), }, Http: &HttpActionProperty{ Url: jsii.String("url"), // the properties below are optional Auth: &HttpAuthorizationProperty{ Sigv4: &SigV4AuthorizationProperty{ RoleArn: jsii.String("roleArn"), ServiceName: jsii.String("serviceName"), SigningRegion: jsii.String("signingRegion"), }, }, ConfirmationUrl: jsii.String("confirmationUrl"), Headers: []interface{}{ &HttpActionHeaderProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }, IotAnalytics: &IotAnalyticsActionProperty{ ChannelName: jsii.String("channelName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), }, IotEvents: &IotEventsActionProperty{ InputName: jsii.String("inputName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), MessageId: jsii.String("messageId"), }, IotSiteWise: &IotSiteWiseActionProperty{ PutAssetPropertyValueEntries: []interface{}{ &PutAssetPropertyValueEntryProperty{ PropertyValues: []interface{}{ &AssetPropertyValueProperty{ Timestamp: &AssetPropertyTimestampProperty{ TimeInSeconds: jsii.String("timeInSeconds"), // the properties below are optional OffsetInNanos: jsii.String("offsetInNanos"), }, Value: &AssetPropertyVariantProperty{ BooleanValue: jsii.String("booleanValue"), DoubleValue: jsii.String("doubleValue"), IntegerValue: jsii.String("integerValue"), StringValue: jsii.String("stringValue"), }, // the properties below are optional Quality: jsii.String("quality"), }, }, // the properties below are optional AssetId: jsii.String("assetId"), EntryId: jsii.String("entryId"), PropertyAlias: jsii.String("propertyAlias"), PropertyId: jsii.String("propertyId"), }, }, RoleArn: jsii.String("roleArn"), }, Kafka: &KafkaActionProperty{ ClientProperties: map[string]*string{ "clientPropertiesKey": jsii.String("clientProperties"), }, DestinationArn: jsii.String("destinationArn"), Topic: jsii.String("topic"), // the properties below are optional Key: jsii.String("key"), Partition: jsii.String("partition"), }, Kinesis: &KinesisActionProperty{ RoleArn: jsii.String("roleArn"), StreamName: jsii.String("streamName"), // the properties below are optional PartitionKey: jsii.String("partitionKey"), }, Lambda: &LambdaActionProperty{ FunctionArn: jsii.String("functionArn"), }, Location: &LocationActionProperty{ DeviceId: jsii.String("deviceId"), Latitude: jsii.String("latitude"), Longitude: jsii.String("longitude"), RoleArn: jsii.String("roleArn"), TrackerName: jsii.String("trackerName"), // the properties below are optional Timestamp: &TimestampProperty{ Value: jsii.String("value"), // the properties below are optional Unit: jsii.String("unit"), }, }, OpenSearch: &OpenSearchActionProperty{ Endpoint: jsii.String("endpoint"), Id: jsii.String("id"), Index: jsii.String("index"), RoleArn: jsii.String("roleArn"), Type: jsii.String("type"), }, Republish: &RepublishActionProperty{ RoleArn: jsii.String("roleArn"), Topic: jsii.String("topic"), // the properties below are optional Headers: &RepublishActionHeadersProperty{ ContentType: jsii.String("contentType"), CorrelationData: jsii.String("correlationData"), MessageExpiry: jsii.String("messageExpiry"), PayloadFormatIndicator: jsii.String("payloadFormatIndicator"), ResponseTopic: jsii.String("responseTopic"), UserProperties: []interface{}{ &UserPropertyProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }, Qos: jsii.Number(123), }, S3: &S3ActionProperty{ BucketName: jsii.String("bucketName"), Key: jsii.String("key"), RoleArn: jsii.String("roleArn"), // the properties below are optional CannedAcl: jsii.String("cannedAcl"), }, Sns: &SnsActionProperty{ RoleArn: jsii.String("roleArn"), TargetArn: jsii.String("targetArn"), // the properties below are optional MessageFormat: jsii.String("messageFormat"), }, Sqs: &SqsActionProperty{ QueueUrl: jsii.String("queueUrl"), RoleArn: jsii.String("roleArn"), // the properties below are optional UseBase64: jsii.Boolean(false), }, StepFunctions: &StepFunctionsActionProperty{ RoleArn: jsii.String("roleArn"), StateMachineName: jsii.String("stateMachineName"), // the properties below are optional ExecutionNamePrefix: jsii.String("executionNamePrefix"), }, Timestream: &TimestreamActionProperty{ DatabaseName: jsii.String("databaseName"), Dimensions: []interface{}{ &TimestreamDimensionProperty{ Name: jsii.String("name"), Value: jsii.String("value"), }, }, RoleArn: jsii.String("roleArn"), TableName: jsii.String("tableName"), // the properties below are optional Timestamp: &TimestreamTimestampProperty{ Unit: jsii.String("unit"), Value: jsii.String("value"), }, }, }
type CfnTopicRule_AssetPropertyTimestampProperty ¶
type CfnTopicRule_AssetPropertyTimestampProperty struct { // A string that contains the time in seconds since epoch. // // Accepts substitution templates. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertytimestamp.html#cfn-iot-topicrule-assetpropertytimestamp-timeinseconds // TimeInSeconds *string `field:"required" json:"timeInSeconds" yaml:"timeInSeconds"` // Optional. // // A string that contains the nanosecond time offset. Accepts substitution templates. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertytimestamp.html#cfn-iot-topicrule-assetpropertytimestamp-offsetinnanos // OffsetInNanos *string `field:"optional" json:"offsetInNanos" yaml:"offsetInNanos"` }
An asset property timestamp entry containing the following information.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" assetPropertyTimestampProperty := &AssetPropertyTimestampProperty{ TimeInSeconds: jsii.String("timeInSeconds"), // the properties below are optional OffsetInNanos: jsii.String("offsetInNanos"), }
type CfnTopicRule_AssetPropertyValueProperty ¶
type CfnTopicRule_AssetPropertyValueProperty struct { // The asset property value timestamp. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertyvalue.html#cfn-iot-topicrule-assetpropertyvalue-timestamp // Timestamp interface{} `field:"required" json:"timestamp" yaml:"timestamp"` // The value of the asset property. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertyvalue.html#cfn-iot-topicrule-assetpropertyvalue-value // Value interface{} `field:"required" json:"value" yaml:"value"` // Optional. // // A string that describes the quality of the value. Accepts substitution templates. Must be `GOOD` , `BAD` , or `UNCERTAIN` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertyvalue.html#cfn-iot-topicrule-assetpropertyvalue-quality // Quality *string `field:"optional" json:"quality" yaml:"quality"` }
An asset property value entry containing the following information.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" assetPropertyValueProperty := &AssetPropertyValueProperty{ Timestamp: &AssetPropertyTimestampProperty{ TimeInSeconds: jsii.String("timeInSeconds"), // the properties below are optional OffsetInNanos: jsii.String("offsetInNanos"), }, Value: &AssetPropertyVariantProperty{ BooleanValue: jsii.String("booleanValue"), DoubleValue: jsii.String("doubleValue"), IntegerValue: jsii.String("integerValue"), StringValue: jsii.String("stringValue"), }, // the properties below are optional Quality: jsii.String("quality"), }
type CfnTopicRule_AssetPropertyVariantProperty ¶
type CfnTopicRule_AssetPropertyVariantProperty struct { // Optional. // // A string that contains the boolean value ( `true` or `false` ) of the value entry. Accepts substitution templates. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertyvariant.html#cfn-iot-topicrule-assetpropertyvariant-booleanvalue // BooleanValue *string `field:"optional" json:"booleanValue" yaml:"booleanValue"` // Optional. // // A string that contains the double value of the value entry. Accepts substitution templates. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertyvariant.html#cfn-iot-topicrule-assetpropertyvariant-doublevalue // DoubleValue *string `field:"optional" json:"doubleValue" yaml:"doubleValue"` // Optional. // // A string that contains the integer value of the value entry. Accepts substitution templates. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertyvariant.html#cfn-iot-topicrule-assetpropertyvariant-integervalue // IntegerValue *string `field:"optional" json:"integerValue" yaml:"integerValue"` // Optional. // // The string value of the value entry. Accepts substitution templates. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-assetpropertyvariant.html#cfn-iot-topicrule-assetpropertyvariant-stringvalue // StringValue *string `field:"optional" json:"stringValue" yaml:"stringValue"` }
Contains an asset property value (of a single type).
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" assetPropertyVariantProperty := &AssetPropertyVariantProperty{ BooleanValue: jsii.String("booleanValue"), DoubleValue: jsii.String("doubleValue"), IntegerValue: jsii.String("integerValue"), StringValue: jsii.String("stringValue"), }
type CfnTopicRule_CloudwatchAlarmActionProperty ¶
type CfnTopicRule_CloudwatchAlarmActionProperty struct { // The CloudWatch alarm name. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchalarmaction.html#cfn-iot-topicrule-cloudwatchalarmaction-alarmname // AlarmName *string `field:"required" json:"alarmName" yaml:"alarmName"` // The IAM role that allows access to the CloudWatch alarm. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchalarmaction.html#cfn-iot-topicrule-cloudwatchalarmaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // The reason for the alarm change. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchalarmaction.html#cfn-iot-topicrule-cloudwatchalarmaction-statereason // StateReason *string `field:"required" json:"stateReason" yaml:"stateReason"` // The value of the alarm state. // // Acceptable values are: OK, ALARM, INSUFFICIENT_DATA. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchalarmaction.html#cfn-iot-topicrule-cloudwatchalarmaction-statevalue // StateValue *string `field:"required" json:"stateValue" yaml:"stateValue"` }
Describes an action that updates a CloudWatch alarm.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cloudwatchAlarmActionProperty := &CloudwatchAlarmActionProperty{ AlarmName: jsii.String("alarmName"), RoleArn: jsii.String("roleArn"), StateReason: jsii.String("stateReason"), StateValue: jsii.String("stateValue"), }
type CfnTopicRule_CloudwatchLogsActionProperty ¶
type CfnTopicRule_CloudwatchLogsActionProperty struct { // The CloudWatch log name. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchlogsaction.html#cfn-iot-topicrule-cloudwatchlogsaction-loggroupname // LogGroupName *string `field:"required" json:"logGroupName" yaml:"logGroupName"` // The IAM role that allows access to the CloudWatch log. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchlogsaction.html#cfn-iot-topicrule-cloudwatchlogsaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // Indicates whether batches of log records will be extracted and uploaded into CloudWatch. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchlogsaction.html#cfn-iot-topicrule-cloudwatchlogsaction-batchmode // BatchMode interface{} `field:"optional" json:"batchMode" yaml:"batchMode"` }
Describes an action that updates a CloudWatch log.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cloudwatchLogsActionProperty := &CloudwatchLogsActionProperty{ LogGroupName: jsii.String("logGroupName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), }
type CfnTopicRule_CloudwatchMetricActionProperty ¶
type CfnTopicRule_CloudwatchMetricActionProperty struct { // The CloudWatch metric name. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-metricname // MetricName *string `field:"required" json:"metricName" yaml:"metricName"` // The CloudWatch metric namespace name. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-metricnamespace // MetricNamespace *string `field:"required" json:"metricNamespace" yaml:"metricNamespace"` // The [metric unit](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Unit) supported by CloudWatch. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-metricunit // MetricUnit *string `field:"required" json:"metricUnit" yaml:"metricUnit"` // The CloudWatch metric value. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-metricvalue // MetricValue *string `field:"required" json:"metricValue" yaml:"metricValue"` // The IAM role that allows access to the CloudWatch metric. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // An optional [Unix timestamp](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#about_timestamp) . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-metrictimestamp // MetricTimestamp *string `field:"optional" json:"metricTimestamp" yaml:"metricTimestamp"` }
Describes an action that captures a CloudWatch metric.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cloudwatchMetricActionProperty := &CloudwatchMetricActionProperty{ MetricName: jsii.String("metricName"), MetricNamespace: jsii.String("metricNamespace"), MetricUnit: jsii.String("metricUnit"), MetricValue: jsii.String("metricValue"), RoleArn: jsii.String("roleArn"), // the properties below are optional MetricTimestamp: jsii.String("metricTimestamp"), }
type CfnTopicRule_DynamoDBActionProperty ¶
type CfnTopicRule_DynamoDBActionProperty struct { // The hash key name. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-hashkeyfield // HashKeyField *string `field:"required" json:"hashKeyField" yaml:"hashKeyField"` // The hash key value. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-hashkeyvalue // HashKeyValue *string `field:"required" json:"hashKeyValue" yaml:"hashKeyValue"` // The ARN of the IAM role that grants access to the DynamoDB table. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // The name of the DynamoDB table. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-tablename // TableName *string `field:"required" json:"tableName" yaml:"tableName"` // The hash key type. // // Valid values are "STRING" or "NUMBER". // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-hashkeytype // HashKeyType *string `field:"optional" json:"hashKeyType" yaml:"hashKeyType"` // The action payload. // // This name can be customized. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-payloadfield // PayloadField *string `field:"optional" json:"payloadField" yaml:"payloadField"` // The range key name. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-rangekeyfield // RangeKeyField *string `field:"optional" json:"rangeKeyField" yaml:"rangeKeyField"` // The range key type. // // Valid values are "STRING" or "NUMBER". // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-rangekeytype // RangeKeyType *string `field:"optional" json:"rangeKeyType" yaml:"rangeKeyType"` // The range key value. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-rangekeyvalue // RangeKeyValue *string `field:"optional" json:"rangeKeyValue" yaml:"rangeKeyValue"` }
Describes an action to write to a DynamoDB table.
The `tableName` , `hashKeyField` , and `rangeKeyField` values must match the values used when you created the table.
The `hashKeyValue` and `rangeKeyvalue` fields use a substitution template syntax. These templates provide data at runtime. The syntax is as follows: ${ *sql-expression* }.
You can specify any valid expression in a WHERE or SELECT clause, including JSON properties, comparisons, calculations, and functions. For example, the following field uses the third level of the topic:
`"hashKeyValue": "${topic(3)}"`
The following field uses the timestamp:
`"rangeKeyValue": "${timestamp()}"`
For more information, see [DynamoDBv2 Action](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rule-actions.html) in the *AWS IoT Developer Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" dynamoDBActionProperty := &DynamoDBActionProperty{ HashKeyField: jsii.String("hashKeyField"), HashKeyValue: jsii.String("hashKeyValue"), RoleArn: jsii.String("roleArn"), TableName: jsii.String("tableName"), // the properties below are optional HashKeyType: jsii.String("hashKeyType"), PayloadField: jsii.String("payloadField"), RangeKeyField: jsii.String("rangeKeyField"), RangeKeyType: jsii.String("rangeKeyType"), RangeKeyValue: jsii.String("rangeKeyValue"), }
type CfnTopicRule_DynamoDBv2ActionProperty ¶
type CfnTopicRule_DynamoDBv2ActionProperty struct { // Specifies the DynamoDB table to which the message data will be written. For example:. // // `{ "dynamoDBv2": { "roleArn": "aws:iam:12341251:my-role" "putItem": { "tableName": "my-table" } } }` // // Each attribute in the message payload will be written to a separate column in the DynamoDB database. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbv2action.html#cfn-iot-topicrule-dynamodbv2action-putitem // PutItem interface{} `field:"optional" json:"putItem" yaml:"putItem"` // The ARN of the IAM role that grants access to the DynamoDB table. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbv2action.html#cfn-iot-topicrule-dynamodbv2action-rolearn // RoleArn *string `field:"optional" json:"roleArn" yaml:"roleArn"` }
Describes an action to write to a DynamoDB table.
This DynamoDB action writes each attribute in the message payload into it's own column in the DynamoDB table.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" dynamoDBv2ActionProperty := &DynamoDBv2ActionProperty{ PutItem: &PutItemInputProperty{ TableName: jsii.String("tableName"), }, RoleArn: jsii.String("roleArn"), }
type CfnTopicRule_ElasticsearchActionProperty ¶
type CfnTopicRule_ElasticsearchActionProperty struct { // The endpoint of your OpenSearch domain. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html#cfn-iot-topicrule-elasticsearchaction-endpoint // Endpoint *string `field:"required" json:"endpoint" yaml:"endpoint"` // The unique identifier for the document you are storing. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html#cfn-iot-topicrule-elasticsearchaction-id // Id *string `field:"required" json:"id" yaml:"id"` // The index where you want to store your data. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html#cfn-iot-topicrule-elasticsearchaction-index // Index *string `field:"required" json:"index" yaml:"index"` // The IAM role ARN that has access to OpenSearch. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html#cfn-iot-topicrule-elasticsearchaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // The type of document you are storing. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html#cfn-iot-topicrule-elasticsearchaction-type // Type *string `field:"required" json:"type" yaml:"type"` }
Describes an action that writes data to an Amazon OpenSearch Service domain.
> The `Elasticsearch` action can only be used by existing rule actions. To create a new rule action or to update an existing rule action, use the `OpenSearch` rule action instead. For more information, see [OpenSearchAction](https://docs.aws.amazon.com//iot/latest/apireference/API_OpenSearchAction.html) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" elasticsearchActionProperty := &ElasticsearchActionProperty{ Endpoint: jsii.String("endpoint"), Id: jsii.String("id"), Index: jsii.String("index"), RoleArn: jsii.String("roleArn"), Type: jsii.String("type"), }
type CfnTopicRule_FirehoseActionProperty ¶
type CfnTopicRule_FirehoseActionProperty struct { // The delivery stream name. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-firehoseaction.html#cfn-iot-topicrule-firehoseaction-deliverystreamname // DeliveryStreamName *string `field:"required" json:"deliveryStreamName" yaml:"deliveryStreamName"` // The IAM role that grants access to the Amazon Kinesis Firehose stream. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-firehoseaction.html#cfn-iot-topicrule-firehoseaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // Whether to deliver the Kinesis Data Firehose stream as a batch by using [`PutRecordBatch`](https://docs.aws.amazon.com/firehose/latest/APIReference/API_PutRecordBatch.html) . The default value is `false` . // // When `batchMode` is `true` and the rule's SQL statement evaluates to an Array, each Array element forms one record in the [`PutRecordBatch`](https://docs.aws.amazon.com/firehose/latest/APIReference/API_PutRecordBatch.html) request. The resulting array can't have more than 500 records. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-firehoseaction.html#cfn-iot-topicrule-firehoseaction-batchmode // BatchMode interface{} `field:"optional" json:"batchMode" yaml:"batchMode"` // A character separator that will be used to separate records written to the Firehose stream. // // Valid values are: '\n' (newline), '\t' (tab), '\r\n' (Windows newline), ',' (comma). // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-firehoseaction.html#cfn-iot-topicrule-firehoseaction-separator // Separator *string `field:"optional" json:"separator" yaml:"separator"` }
Describes an action that writes data to an Amazon Kinesis Firehose stream.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" firehoseActionProperty := &FirehoseActionProperty{ DeliveryStreamName: jsii.String("deliveryStreamName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), Separator: jsii.String("separator"), }
type CfnTopicRule_HttpActionHeaderProperty ¶
type CfnTopicRule_HttpActionHeaderProperty struct { // The HTTP header key. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpactionheader.html#cfn-iot-topicrule-httpactionheader-key // Key *string `field:"required" json:"key" yaml:"key"` // The HTTP header value. // // Substitution templates are supported. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpactionheader.html#cfn-iot-topicrule-httpactionheader-value // Value *string `field:"required" json:"value" yaml:"value"` }
The HTTP action header.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" httpActionHeaderProperty := &HttpActionHeaderProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }
type CfnTopicRule_HttpActionProperty ¶
type CfnTopicRule_HttpActionProperty struct { // The endpoint URL. // // If substitution templates are used in the URL, you must also specify a `confirmationUrl` . If this is a new destination, a new `TopicRuleDestination` is created if possible. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpaction.html#cfn-iot-topicrule-httpaction-url // Url *string `field:"required" json:"url" yaml:"url"` // The authentication method to use when sending data to an HTTPS endpoint. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpaction.html#cfn-iot-topicrule-httpaction-auth // Auth interface{} `field:"optional" json:"auth" yaml:"auth"` // The URL to which AWS IoT sends a confirmation message. // // The value of the confirmation URL must be a prefix of the endpoint URL. If you do not specify a confirmation URL AWS IoT uses the endpoint URL as the confirmation URL. If you use substitution templates in the confirmationUrl, you must create and enable topic rule destinations that match each possible value of the substitution template before traffic is allowed to your endpoint URL. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpaction.html#cfn-iot-topicrule-httpaction-confirmationurl // ConfirmationUrl *string `field:"optional" json:"confirmationUrl" yaml:"confirmationUrl"` // The HTTP headers to send with the message data. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpaction.html#cfn-iot-topicrule-httpaction-headers // Headers interface{} `field:"optional" json:"headers" yaml:"headers"` }
Send data to an HTTPS endpoint.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" httpActionProperty := &HttpActionProperty{ Url: jsii.String("url"), // the properties below are optional Auth: &HttpAuthorizationProperty{ Sigv4: &SigV4AuthorizationProperty{ RoleArn: jsii.String("roleArn"), ServiceName: jsii.String("serviceName"), SigningRegion: jsii.String("signingRegion"), }, }, ConfirmationUrl: jsii.String("confirmationUrl"), Headers: []interface{}{ &HttpActionHeaderProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
type CfnTopicRule_HttpAuthorizationProperty ¶
type CfnTopicRule_HttpAuthorizationProperty struct { // Use Sig V4 authorization. // // For more information, see [Signature Version 4 Signing Process](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-httpauthorization.html#cfn-iot-topicrule-httpauthorization-sigv4 // Sigv4 interface{} `field:"optional" json:"sigv4" yaml:"sigv4"` }
The authorization method used to send messages.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" httpAuthorizationProperty := &HttpAuthorizationProperty{ Sigv4: &SigV4AuthorizationProperty{ RoleArn: jsii.String("roleArn"), ServiceName: jsii.String("serviceName"), SigningRegion: jsii.String("signingRegion"), }, }
type CfnTopicRule_IotAnalyticsActionProperty ¶
type CfnTopicRule_IotAnalyticsActionProperty struct { // The name of the IoT Analytics channel to which message data will be sent. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotanalyticsaction.html#cfn-iot-topicrule-iotanalyticsaction-channelname // ChannelName *string `field:"required" json:"channelName" yaml:"channelName"` // The ARN of the role which has a policy that grants IoT Analytics permission to send message data via IoT Analytics (iotanalytics:BatchPutMessage). // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotanalyticsaction.html#cfn-iot-topicrule-iotanalyticsaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // Whether to process the action as a batch. The default value is `false` . // // When `batchMode` is `true` and the rule SQL statement evaluates to an Array, each Array element is delivered as a separate message when passed by [`BatchPutMessage`](https://docs.aws.amazon.com/iotanalytics/latest/APIReference/API_BatchPutMessage.html) The resulting array can't have more than 100 messages. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotanalyticsaction.html#cfn-iot-topicrule-iotanalyticsaction-batchmode // BatchMode interface{} `field:"optional" json:"batchMode" yaml:"batchMode"` }
Sends message data to an AWS IoT Analytics channel.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" iotAnalyticsActionProperty := &IotAnalyticsActionProperty{ ChannelName: jsii.String("channelName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), }
type CfnTopicRule_IotEventsActionProperty ¶
type CfnTopicRule_IotEventsActionProperty struct { // The name of the AWS IoT Events input. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-ioteventsaction.html#cfn-iot-topicrule-ioteventsaction-inputname // InputName *string `field:"required" json:"inputName" yaml:"inputName"` // The ARN of the role that grants AWS IoT permission to send an input to an AWS IoT Events detector. // // ("Action":"iotevents:BatchPutMessage"). // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-ioteventsaction.html#cfn-iot-topicrule-ioteventsaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // Whether to process the event actions as a batch. The default value is `false` . // // When `batchMode` is `true` , you can't specify a `messageId` . // // When `batchMode` is `true` and the rule SQL statement evaluates to an Array, each Array element is treated as a separate message when Events by calling [`BatchPutMessage`](https://docs.aws.amazon.com/iotevents/latest/apireference/API_iotevents-data_BatchPutMessage.html) . The resulting array can't have more than 10 messages. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-ioteventsaction.html#cfn-iot-topicrule-ioteventsaction-batchmode // BatchMode interface{} `field:"optional" json:"batchMode" yaml:"batchMode"` // The ID of the message. The default `messageId` is a new UUID value. // // When `batchMode` is `true` , you can't specify a `messageId` --a new UUID value will be assigned. // // Assign a value to this property to ensure that only one input (message) with a given `messageId` will be processed by an AWS IoT Events detector. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-ioteventsaction.html#cfn-iot-topicrule-ioteventsaction-messageid // MessageId *string `field:"optional" json:"messageId" yaml:"messageId"` }
Sends an input to an AWS IoT Events detector.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" iotEventsActionProperty := &IotEventsActionProperty{ InputName: jsii.String("inputName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), MessageId: jsii.String("messageId"), }
type CfnTopicRule_IotSiteWiseActionProperty ¶
type CfnTopicRule_IotSiteWiseActionProperty struct { // A list of asset property value entries. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotsitewiseaction.html#cfn-iot-topicrule-iotsitewiseaction-putassetpropertyvalueentries // PutAssetPropertyValueEntries interface{} `field:"required" json:"putAssetPropertyValueEntries" yaml:"putAssetPropertyValueEntries"` // The ARN of the role that grants AWS IoT permission to send an asset property value to AWS IoT SiteWise. // // ( `"Action": "iotsitewise:BatchPutAssetPropertyValue"` ). The trust policy can restrict access to specific asset hierarchy paths. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotsitewiseaction.html#cfn-iot-topicrule-iotsitewiseaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` }
Describes an action to send data from an MQTT message that triggered the rule to AWS IoT SiteWise asset properties.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" iotSiteWiseActionProperty := &IotSiteWiseActionProperty{ PutAssetPropertyValueEntries: []interface{}{ &PutAssetPropertyValueEntryProperty{ PropertyValues: []interface{}{ &AssetPropertyValueProperty{ Timestamp: &AssetPropertyTimestampProperty{ TimeInSeconds: jsii.String("timeInSeconds"), // the properties below are optional OffsetInNanos: jsii.String("offsetInNanos"), }, Value: &AssetPropertyVariantProperty{ BooleanValue: jsii.String("booleanValue"), DoubleValue: jsii.String("doubleValue"), IntegerValue: jsii.String("integerValue"), StringValue: jsii.String("stringValue"), }, // the properties below are optional Quality: jsii.String("quality"), }, }, // the properties below are optional AssetId: jsii.String("assetId"), EntryId: jsii.String("entryId"), PropertyAlias: jsii.String("propertyAlias"), PropertyId: jsii.String("propertyId"), }, }, RoleArn: jsii.String("roleArn"), }
type CfnTopicRule_KafkaActionProperty ¶
type CfnTopicRule_KafkaActionProperty struct { // Properties of the Apache Kafka producer client. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kafkaaction.html#cfn-iot-topicrule-kafkaaction-clientproperties // ClientProperties interface{} `field:"required" json:"clientProperties" yaml:"clientProperties"` // The ARN of Kafka action's VPC `TopicRuleDestination` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kafkaaction.html#cfn-iot-topicrule-kafkaaction-destinationarn // DestinationArn *string `field:"required" json:"destinationArn" yaml:"destinationArn"` // The Kafka topic for messages to be sent to the Kafka broker. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kafkaaction.html#cfn-iot-topicrule-kafkaaction-topic // Topic *string `field:"required" json:"topic" yaml:"topic"` // The Kafka message key. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kafkaaction.html#cfn-iot-topicrule-kafkaaction-key // Key *string `field:"optional" json:"key" yaml:"key"` // The Kafka message partition. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kafkaaction.html#cfn-iot-topicrule-kafkaaction-partition // Partition *string `field:"optional" json:"partition" yaml:"partition"` }
Send messages to an Amazon Managed Streaming for Apache Kafka (Amazon MSK) or self-managed Apache Kafka cluster.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" kafkaActionProperty := &KafkaActionProperty{ ClientProperties: map[string]*string{ "clientPropertiesKey": jsii.String("clientProperties"), }, DestinationArn: jsii.String("destinationArn"), Topic: jsii.String("topic"), // the properties below are optional Key: jsii.String("key"), Partition: jsii.String("partition"), }
type CfnTopicRule_KinesisActionProperty ¶
type CfnTopicRule_KinesisActionProperty struct { // The ARN of the IAM role that grants access to the Amazon Kinesis stream. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kinesisaction.html#cfn-iot-topicrule-kinesisaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // The name of the Amazon Kinesis stream. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kinesisaction.html#cfn-iot-topicrule-kinesisaction-streamname // StreamName *string `field:"required" json:"streamName" yaml:"streamName"` // The partition key. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kinesisaction.html#cfn-iot-topicrule-kinesisaction-partitionkey // PartitionKey *string `field:"optional" json:"partitionKey" yaml:"partitionKey"` }
Describes an action to write data to an Amazon Kinesis stream.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" kinesisActionProperty := &KinesisActionProperty{ RoleArn: jsii.String("roleArn"), StreamName: jsii.String("streamName"), // the properties below are optional PartitionKey: jsii.String("partitionKey"), }
type CfnTopicRule_LambdaActionProperty ¶
type CfnTopicRule_LambdaActionProperty struct { // The ARN of the Lambda function. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-lambdaaction.html#cfn-iot-topicrule-lambdaaction-functionarn // FunctionArn *string `field:"optional" json:"functionArn" yaml:"functionArn"` }
Describes an action to invoke a Lambda function.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" lambdaActionProperty := &LambdaActionProperty{ FunctionArn: jsii.String("functionArn"), }
type CfnTopicRule_LocationActionProperty ¶ added in v2.48.0
type CfnTopicRule_LocationActionProperty struct { // The unique ID of the device providing the location data. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-locationaction.html#cfn-iot-topicrule-locationaction-deviceid // DeviceId *string `field:"required" json:"deviceId" yaml:"deviceId"` // A string that evaluates to a double value that represents the latitude of the device's location. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-locationaction.html#cfn-iot-topicrule-locationaction-latitude // Latitude *string `field:"required" json:"latitude" yaml:"latitude"` // A string that evaluates to a double value that represents the longitude of the device's location. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-locationaction.html#cfn-iot-topicrule-locationaction-longitude // Longitude *string `field:"required" json:"longitude" yaml:"longitude"` // The IAM role that grants permission to write to the Amazon Location resource. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-locationaction.html#cfn-iot-topicrule-locationaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // The name of the tracker resource in Amazon Location in which the location is updated. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-locationaction.html#cfn-iot-topicrule-locationaction-trackername // TrackerName *string `field:"required" json:"trackerName" yaml:"trackerName"` // The time that the location data was sampled. // // The default value is the time the MQTT message was processed. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-locationaction.html#cfn-iot-topicrule-locationaction-timestamp // Timestamp interface{} `field:"optional" json:"timestamp" yaml:"timestamp"` }
Describes an action to send device location updates from an MQTT message to an Amazon Location tracker resource.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" locationActionProperty := &LocationActionProperty{ DeviceId: jsii.String("deviceId"), Latitude: jsii.String("latitude"), Longitude: jsii.String("longitude"), RoleArn: jsii.String("roleArn"), TrackerName: jsii.String("trackerName"), // the properties below are optional Timestamp: &TimestampProperty{ Value: jsii.String("value"), // the properties below are optional Unit: jsii.String("unit"), }, }
type CfnTopicRule_OpenSearchActionProperty ¶
type CfnTopicRule_OpenSearchActionProperty struct { // The endpoint of your OpenSearch domain. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-opensearchaction.html#cfn-iot-topicrule-opensearchaction-endpoint // Endpoint *string `field:"required" json:"endpoint" yaml:"endpoint"` // The unique identifier for the document you are storing. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-opensearchaction.html#cfn-iot-topicrule-opensearchaction-id // Id *string `field:"required" json:"id" yaml:"id"` // The OpenSearch index where you want to store your data. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-opensearchaction.html#cfn-iot-topicrule-opensearchaction-index // Index *string `field:"required" json:"index" yaml:"index"` // The IAM role ARN that has access to OpenSearch. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-opensearchaction.html#cfn-iot-topicrule-opensearchaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // The type of document you are storing. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-opensearchaction.html#cfn-iot-topicrule-opensearchaction-type // Type *string `field:"required" json:"type" yaml:"type"` }
Describes an action that writes data to an Amazon OpenSearch Service domain.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" openSearchActionProperty := &OpenSearchActionProperty{ Endpoint: jsii.String("endpoint"), Id: jsii.String("id"), Index: jsii.String("index"), RoleArn: jsii.String("roleArn"), Type: jsii.String("type"), }
type CfnTopicRule_PutAssetPropertyValueEntryProperty ¶
type CfnTopicRule_PutAssetPropertyValueEntryProperty struct { // A list of property values to insert that each contain timestamp, quality, and value (TQV) information. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putassetpropertyvalueentry.html#cfn-iot-topicrule-putassetpropertyvalueentry-propertyvalues // PropertyValues interface{} `field:"required" json:"propertyValues" yaml:"propertyValues"` // The ID of the AWS IoT SiteWise asset. // // You must specify either a `propertyAlias` or both an `aliasId` and a `propertyId` . Accepts substitution templates. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putassetpropertyvalueentry.html#cfn-iot-topicrule-putassetpropertyvalueentry-assetid // AssetId *string `field:"optional" json:"assetId" yaml:"assetId"` // Optional. // // A unique identifier for this entry that you can define to better track which message caused an error in case of failure. Accepts substitution templates. Defaults to a new UUID. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putassetpropertyvalueentry.html#cfn-iot-topicrule-putassetpropertyvalueentry-entryid // EntryId *string `field:"optional" json:"entryId" yaml:"entryId"` // The name of the property alias associated with your asset property. // // You must specify either a `propertyAlias` or both an `aliasId` and a `propertyId` . Accepts substitution templates. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putassetpropertyvalueentry.html#cfn-iot-topicrule-putassetpropertyvalueentry-propertyalias // PropertyAlias *string `field:"optional" json:"propertyAlias" yaml:"propertyAlias"` // The ID of the asset's property. // // You must specify either a `propertyAlias` or both an `aliasId` and a `propertyId` . Accepts substitution templates. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putassetpropertyvalueentry.html#cfn-iot-topicrule-putassetpropertyvalueentry-propertyid // PropertyId *string `field:"optional" json:"propertyId" yaml:"propertyId"` }
An asset property value entry containing the following information.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" putAssetPropertyValueEntryProperty := &PutAssetPropertyValueEntryProperty{ PropertyValues: []interface{}{ &AssetPropertyValueProperty{ Timestamp: &AssetPropertyTimestampProperty{ TimeInSeconds: jsii.String("timeInSeconds"), // the properties below are optional OffsetInNanos: jsii.String("offsetInNanos"), }, Value: &AssetPropertyVariantProperty{ BooleanValue: jsii.String("booleanValue"), DoubleValue: jsii.String("doubleValue"), IntegerValue: jsii.String("integerValue"), StringValue: jsii.String("stringValue"), }, // the properties below are optional Quality: jsii.String("quality"), }, }, // the properties below are optional AssetId: jsii.String("assetId"), EntryId: jsii.String("entryId"), PropertyAlias: jsii.String("propertyAlias"), PropertyId: jsii.String("propertyId"), }
type CfnTopicRule_PutItemInputProperty ¶
type CfnTopicRule_PutItemInputProperty struct { // The table where the message data will be written. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putiteminput.html#cfn-iot-topicrule-putiteminput-tablename // TableName *string `field:"required" json:"tableName" yaml:"tableName"` }
The input for the DynamoActionVS action that specifies the DynamoDB table to which the message data will be written.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" putItemInputProperty := &PutItemInputProperty{ TableName: jsii.String("tableName"), }
type CfnTopicRule_RepublishActionHeadersProperty ¶ added in v2.51.0
type CfnTopicRule_RepublishActionHeadersProperty struct { // A UTF-8 encoded string that describes the content of the publishing message. // // For more information, see [Content Type](https://docs.aws.amazon.com/https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901118) in the MQTT Version 5.0 specification. // // Supports [substitution templates](https://docs.aws.amazon.com//iot/latest/developerguide/iot-substitution-templates.html) . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishactionheaders.html#cfn-iot-topicrule-republishactionheaders-contenttype // ContentType *string `field:"optional" json:"contentType" yaml:"contentType"` // The base64-encoded binary data used by the sender of the request message to identify which request the response message is for. // // For more information, see [Correlation Data](https://docs.aws.amazon.com/https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901115) in the MQTT Version 5.0 specification. // // Supports [substitution templates](https://docs.aws.amazon.com//iot/latest/developerguide/iot-substitution-templates.html) . // // > This binary data must be base64-encoded. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishactionheaders.html#cfn-iot-topicrule-republishactionheaders-correlationdata // CorrelationData *string `field:"optional" json:"correlationData" yaml:"correlationData"` // A user-defined integer value that represents the message expiry interval at the broker. // // If the messages haven't been sent to the subscribers within that interval, the message expires and is removed. The value of `messageExpiry` represents the number of seconds before it expires. For more information about the limits of `messageExpiry` , see [Message broker and protocol limits and quotas](https://docs.aws.amazon.com//general/latest/gr/iot-core.html#limits_iot) in the IoT Core Reference Guide. // // Supports [substitution templates](https://docs.aws.amazon.com//iot/latest/developerguide/iot-substitution-templates.html) . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishactionheaders.html#cfn-iot-topicrule-republishactionheaders-messageexpiry // MessageExpiry *string `field:"optional" json:"messageExpiry" yaml:"messageExpiry"` // An `Enum` string value that indicates whether the payload is formatted as UTF-8. // // Valid values are `UNSPECIFIED_BYTES` and `UTF8_DATA` . // // For more information, see [Payload Format Indicator](https://docs.aws.amazon.com/https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901111) from the MQTT Version 5.0 specification. // // Supports [substitution templates](https://docs.aws.amazon.com//iot/latest/developerguide/iot-substitution-templates.html) . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishactionheaders.html#cfn-iot-topicrule-republishactionheaders-payloadformatindicator // PayloadFormatIndicator *string `field:"optional" json:"payloadFormatIndicator" yaml:"payloadFormatIndicator"` // A UTF-8 encoded string that's used as the topic name for a response message. // // The response topic is used to describe the topic to which the receiver should publish as part of the request-response flow. The topic must not contain wildcard characters. // // For more information, see [Response Topic](https://docs.aws.amazon.com/https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901114) in the MQTT Version 5.0 specification. // // Supports [substitution templates](https://docs.aws.amazon.com//iot/latest/developerguide/iot-substitution-templates.html) . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishactionheaders.html#cfn-iot-topicrule-republishactionheaders-responsetopic // ResponseTopic *string `field:"optional" json:"responseTopic" yaml:"responseTopic"` // An array of key-value pairs that you define in the MQTT5 header. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishactionheaders.html#cfn-iot-topicrule-republishactionheaders-userproperties // UserProperties interface{} `field:"optional" json:"userProperties" yaml:"userProperties"` }
Specifies MQTT Version 5.0 headers information. For more information, see [MQTT](https://docs.aws.amazon.com//iot/latest/developerguide/mqtt.html) in the IoT Core Developer Guide.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" republishActionHeadersProperty := &RepublishActionHeadersProperty{ ContentType: jsii.String("contentType"), CorrelationData: jsii.String("correlationData"), MessageExpiry: jsii.String("messageExpiry"), PayloadFormatIndicator: jsii.String("payloadFormatIndicator"), ResponseTopic: jsii.String("responseTopic"), UserProperties: []interface{}{ &UserPropertyProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
type CfnTopicRule_RepublishActionProperty ¶
type CfnTopicRule_RepublishActionProperty struct { // The ARN of the IAM role that grants access. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html#cfn-iot-topicrule-republishaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // The name of the MQTT topic. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html#cfn-iot-topicrule-republishaction-topic // Topic *string `field:"required" json:"topic" yaml:"topic"` // MQTT Version 5.0 headers information. For more information, see [MQTT](https://docs.aws.amazon.com//iot/latest/developerguide/mqtt.html) in the IoT Core Developer Guide. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html#cfn-iot-topicrule-republishaction-headers // Headers interface{} `field:"optional" json:"headers" yaml:"headers"` // The Quality of Service (QoS) level to use when republishing messages. // // The default value is 0. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html#cfn-iot-topicrule-republishaction-qos // Qos *float64 `field:"optional" json:"qos" yaml:"qos"` }
Describes an action to republish to another topic.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" republishActionProperty := &RepublishActionProperty{ RoleArn: jsii.String("roleArn"), Topic: jsii.String("topic"), // the properties below are optional Headers: &RepublishActionHeadersProperty{ ContentType: jsii.String("contentType"), CorrelationData: jsii.String("correlationData"), MessageExpiry: jsii.String("messageExpiry"), PayloadFormatIndicator: jsii.String("payloadFormatIndicator"), ResponseTopic: jsii.String("responseTopic"), UserProperties: []interface{}{ &UserPropertyProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }, Qos: jsii.Number(123), }
type CfnTopicRule_S3ActionProperty ¶
type CfnTopicRule_S3ActionProperty struct { // The Amazon S3 bucket. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-s3action.html#cfn-iot-topicrule-s3action-bucketname // BucketName *string `field:"required" json:"bucketName" yaml:"bucketName"` // The object key. // // For more information, see [Actions, resources, and condition keys for Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html) . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-s3action.html#cfn-iot-topicrule-s3action-key // Key *string `field:"required" json:"key" yaml:"key"` // The ARN of the IAM role that grants access. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-s3action.html#cfn-iot-topicrule-s3action-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // The Amazon S3 canned ACL that controls access to the object identified by the object key. // // For more information, see [S3 canned ACLs](https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl) . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-s3action.html#cfn-iot-topicrule-s3action-cannedacl // CannedAcl *string `field:"optional" json:"cannedAcl" yaml:"cannedAcl"` }
Describes an action to write data to an Amazon S3 bucket.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" s3ActionProperty := &S3ActionProperty{ BucketName: jsii.String("bucketName"), Key: jsii.String("key"), RoleArn: jsii.String("roleArn"), // the properties below are optional CannedAcl: jsii.String("cannedAcl"), }
type CfnTopicRule_SigV4AuthorizationProperty ¶
type CfnTopicRule_SigV4AuthorizationProperty struct { // The ARN of the signing role. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sigv4authorization.html#cfn-iot-topicrule-sigv4authorization-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // The service name to use while signing with Sig V4. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sigv4authorization.html#cfn-iot-topicrule-sigv4authorization-servicename // ServiceName *string `field:"required" json:"serviceName" yaml:"serviceName"` // The signing region. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sigv4authorization.html#cfn-iot-topicrule-sigv4authorization-signingregion // SigningRegion *string `field:"required" json:"signingRegion" yaml:"signingRegion"` }
For more information, see [Signature Version 4 signing process](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" sigV4AuthorizationProperty := &SigV4AuthorizationProperty{ RoleArn: jsii.String("roleArn"), ServiceName: jsii.String("serviceName"), SigningRegion: jsii.String("signingRegion"), }
type CfnTopicRule_SnsActionProperty ¶
type CfnTopicRule_SnsActionProperty struct { // The ARN of the IAM role that grants access. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-snsaction.html#cfn-iot-topicrule-snsaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // The ARN of the SNS topic. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-snsaction.html#cfn-iot-topicrule-snsaction-targetarn // TargetArn *string `field:"required" json:"targetArn" yaml:"targetArn"` // (Optional) The message format of the message to publish. // // Accepted values are "JSON" and "RAW". The default value of the attribute is "RAW". SNS uses this setting to determine if the payload should be parsed and relevant platform-specific bits of the payload should be extracted. For more information, see [Amazon SNS Message and JSON Formats](https://docs.aws.amazon.com/sns/latest/dg/json-formats.html) in the *Amazon Simple Notification Service Developer Guide* . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-snsaction.html#cfn-iot-topicrule-snsaction-messageformat // MessageFormat *string `field:"optional" json:"messageFormat" yaml:"messageFormat"` }
Describes an action to publish to an Amazon SNS topic.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" snsActionProperty := &SnsActionProperty{ RoleArn: jsii.String("roleArn"), TargetArn: jsii.String("targetArn"), // the properties below are optional MessageFormat: jsii.String("messageFormat"), }
type CfnTopicRule_SqsActionProperty ¶
type CfnTopicRule_SqsActionProperty struct { // The URL of the Amazon SQS queue. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sqsaction.html#cfn-iot-topicrule-sqsaction-queueurl // QueueUrl *string `field:"required" json:"queueUrl" yaml:"queueUrl"` // The ARN of the IAM role that grants access. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sqsaction.html#cfn-iot-topicrule-sqsaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // Specifies whether to use Base64 encoding. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sqsaction.html#cfn-iot-topicrule-sqsaction-usebase64 // UseBase64 interface{} `field:"optional" json:"useBase64" yaml:"useBase64"` }
Describes an action to publish data to an Amazon SQS queue.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" sqsActionProperty := &SqsActionProperty{ QueueUrl: jsii.String("queueUrl"), RoleArn: jsii.String("roleArn"), // the properties below are optional UseBase64: jsii.Boolean(false), }
type CfnTopicRule_StepFunctionsActionProperty ¶
type CfnTopicRule_StepFunctionsActionProperty struct { // The ARN of the role that grants IoT permission to start execution of a state machine ("Action":"states:StartExecution"). // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-stepfunctionsaction.html#cfn-iot-topicrule-stepfunctionsaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // The name of the Step Functions state machine whose execution will be started. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-stepfunctionsaction.html#cfn-iot-topicrule-stepfunctionsaction-statemachinename // StateMachineName *string `field:"required" json:"stateMachineName" yaml:"stateMachineName"` // (Optional) A name will be given to the state machine execution consisting of this prefix followed by a UUID. // // Step Functions automatically creates a unique name for each state machine execution if one is not provided. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-stepfunctionsaction.html#cfn-iot-topicrule-stepfunctionsaction-executionnameprefix // ExecutionNamePrefix *string `field:"optional" json:"executionNamePrefix" yaml:"executionNamePrefix"` }
Starts execution of a Step Functions state machine.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" stepFunctionsActionProperty := &StepFunctionsActionProperty{ RoleArn: jsii.String("roleArn"), StateMachineName: jsii.String("stateMachineName"), // the properties below are optional ExecutionNamePrefix: jsii.String("executionNamePrefix"), }
type CfnTopicRule_TimestampProperty ¶ added in v2.48.0
type CfnTopicRule_TimestampProperty struct { // An expression that returns a long epoch time value. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-timestamp.html#cfn-iot-topicrule-timestamp-value // Value *string `field:"required" json:"value" yaml:"value"` // The precision of the timestamp value that results from the expression described in `value` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-timestamp.html#cfn-iot-topicrule-timestamp-unit // Unit *string `field:"optional" json:"unit" yaml:"unit"` }
Describes how to interpret an application-defined timestamp value from an MQTT message payload and the precision of that value.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" timestampProperty := &TimestampProperty{ Value: jsii.String("value"), // the properties below are optional Unit: jsii.String("unit"), }
type CfnTopicRule_TimestreamActionProperty ¶
type CfnTopicRule_TimestreamActionProperty struct { // The name of an Amazon Timestream database that has the table to write records into. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-timestreamaction.html#cfn-iot-topicrule-timestreamaction-databasename // DatabaseName *string `field:"required" json:"databaseName" yaml:"databaseName"` // Metadata attributes of the time series that are written in each measure record. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-timestreamaction.html#cfn-iot-topicrule-timestreamaction-dimensions // Dimensions interface{} `field:"required" json:"dimensions" yaml:"dimensions"` // The Amazon Resource Name (ARN) of the role that grants AWS IoT permission to write to the Timestream database table. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-timestreamaction.html#cfn-iot-topicrule-timestreamaction-rolearn // RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // The table where the message data will be written. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-timestreamaction.html#cfn-iot-topicrule-timestreamaction-tablename // TableName *string `field:"required" json:"tableName" yaml:"tableName"` // The value to use for the entry's timestamp. // // If blank, the time that the entry was processed is used. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-timestreamaction.html#cfn-iot-topicrule-timestreamaction-timestamp // Timestamp interface{} `field:"optional" json:"timestamp" yaml:"timestamp"` }
Describes an action that writes records into an Amazon Timestream table.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" timestreamActionProperty := &TimestreamActionProperty{ DatabaseName: jsii.String("databaseName"), Dimensions: []interface{}{ &TimestreamDimensionProperty{ Name: jsii.String("name"), Value: jsii.String("value"), }, }, RoleArn: jsii.String("roleArn"), TableName: jsii.String("tableName"), // the properties below are optional Timestamp: &TimestreamTimestampProperty{ Unit: jsii.String("unit"), Value: jsii.String("value"), }, }
type CfnTopicRule_TimestreamDimensionProperty ¶
type CfnTopicRule_TimestreamDimensionProperty struct { // The metadata dimension name. // // This is the name of the column in the Amazon Timestream database table record. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-timestreamdimension.html#cfn-iot-topicrule-timestreamdimension-name // Name *string `field:"required" json:"name" yaml:"name"` // The value to write in this column of the database record. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-timestreamdimension.html#cfn-iot-topicrule-timestreamdimension-value // Value *string `field:"required" json:"value" yaml:"value"` }
Metadata attributes of the time series that are written in each measure record.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" timestreamDimensionProperty := &TimestreamDimensionProperty{ Name: jsii.String("name"), Value: jsii.String("value"), }
type CfnTopicRule_TimestreamTimestampProperty ¶
type CfnTopicRule_TimestreamTimestampProperty struct { // The precision of the timestamp value that results from the expression described in `value` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-timestreamtimestamp.html#cfn-iot-topicrule-timestreamtimestamp-unit // Unit *string `field:"required" json:"unit" yaml:"unit"` // An expression that returns a long epoch time value. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-timestreamtimestamp.html#cfn-iot-topicrule-timestreamtimestamp-value // Value *string `field:"required" json:"value" yaml:"value"` }
The value to use for the entry's timestamp.
If blank, the time that the entry was processed is used.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" timestreamTimestampProperty := &TimestreamTimestampProperty{ Unit: jsii.String("unit"), Value: jsii.String("value"), }
type CfnTopicRule_TopicRulePayloadProperty ¶
type CfnTopicRule_TopicRulePayloadProperty struct { // The actions associated with the rule. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-actions // Actions interface{} `field:"required" json:"actions" yaml:"actions"` // The SQL statement used to query the topic. // // For more information, see [AWS IoT SQL Reference](https://docs.aws.amazon.com/iot/latest/developerguide/iot-sql-reference.html) in the *AWS IoT Developer Guide* . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-sql // Sql *string `field:"required" json:"sql" yaml:"sql"` // The version of the SQL rules engine to use when evaluating the rule. // // The default value is 2015-10-08. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-awsiotsqlversion // AwsIotSqlVersion *string `field:"optional" json:"awsIotSqlVersion" yaml:"awsIotSqlVersion"` // The description of the rule. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-description // Description *string `field:"optional" json:"description" yaml:"description"` // The action to take when an error occurs. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-erroraction // ErrorAction interface{} `field:"optional" json:"errorAction" yaml:"errorAction"` // Specifies whether the rule is disabled. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-ruledisabled // RuleDisabled interface{} `field:"optional" json:"ruleDisabled" yaml:"ruleDisabled"` }
Describes a rule.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" topicRulePayloadProperty := &TopicRulePayloadProperty{ Actions: []interface{}{ &ActionProperty{ CloudwatchAlarm: &CloudwatchAlarmActionProperty{ AlarmName: jsii.String("alarmName"), RoleArn: jsii.String("roleArn"), StateReason: jsii.String("stateReason"), StateValue: jsii.String("stateValue"), }, CloudwatchLogs: &CloudwatchLogsActionProperty{ LogGroupName: jsii.String("logGroupName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), }, CloudwatchMetric: &CloudwatchMetricActionProperty{ MetricName: jsii.String("metricName"), MetricNamespace: jsii.String("metricNamespace"), MetricUnit: jsii.String("metricUnit"), MetricValue: jsii.String("metricValue"), RoleArn: jsii.String("roleArn"), // the properties below are optional MetricTimestamp: jsii.String("metricTimestamp"), }, DynamoDb: &DynamoDBActionProperty{ HashKeyField: jsii.String("hashKeyField"), HashKeyValue: jsii.String("hashKeyValue"), RoleArn: jsii.String("roleArn"), TableName: jsii.String("tableName"), // the properties below are optional HashKeyType: jsii.String("hashKeyType"), PayloadField: jsii.String("payloadField"), RangeKeyField: jsii.String("rangeKeyField"), RangeKeyType: jsii.String("rangeKeyType"), RangeKeyValue: jsii.String("rangeKeyValue"), }, DynamoDBv2: &DynamoDBv2ActionProperty{ PutItem: &PutItemInputProperty{ TableName: jsii.String("tableName"), }, RoleArn: jsii.String("roleArn"), }, Elasticsearch: &ElasticsearchActionProperty{ Endpoint: jsii.String("endpoint"), Id: jsii.String("id"), Index: jsii.String("index"), RoleArn: jsii.String("roleArn"), Type: jsii.String("type"), }, Firehose: &FirehoseActionProperty{ DeliveryStreamName: jsii.String("deliveryStreamName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), Separator: jsii.String("separator"), }, Http: &HttpActionProperty{ Url: jsii.String("url"), // the properties below are optional Auth: &HttpAuthorizationProperty{ Sigv4: &SigV4AuthorizationProperty{ RoleArn: jsii.String("roleArn"), ServiceName: jsii.String("serviceName"), SigningRegion: jsii.String("signingRegion"), }, }, ConfirmationUrl: jsii.String("confirmationUrl"), Headers: []interface{}{ &HttpActionHeaderProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }, IotAnalytics: &IotAnalyticsActionProperty{ ChannelName: jsii.String("channelName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), }, IotEvents: &IotEventsActionProperty{ InputName: jsii.String("inputName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), MessageId: jsii.String("messageId"), }, IotSiteWise: &IotSiteWiseActionProperty{ PutAssetPropertyValueEntries: []interface{}{ &PutAssetPropertyValueEntryProperty{ PropertyValues: []interface{}{ &AssetPropertyValueProperty{ Timestamp: &AssetPropertyTimestampProperty{ TimeInSeconds: jsii.String("timeInSeconds"), // the properties below are optional OffsetInNanos: jsii.String("offsetInNanos"), }, Value: &AssetPropertyVariantProperty{ BooleanValue: jsii.String("booleanValue"), DoubleValue: jsii.String("doubleValue"), IntegerValue: jsii.String("integerValue"), StringValue: jsii.String("stringValue"), }, // the properties below are optional Quality: jsii.String("quality"), }, }, // the properties below are optional AssetId: jsii.String("assetId"), EntryId: jsii.String("entryId"), PropertyAlias: jsii.String("propertyAlias"), PropertyId: jsii.String("propertyId"), }, }, RoleArn: jsii.String("roleArn"), }, Kafka: &KafkaActionProperty{ ClientProperties: map[string]*string{ "clientPropertiesKey": jsii.String("clientProperties"), }, DestinationArn: jsii.String("destinationArn"), Topic: jsii.String("topic"), // the properties below are optional Key: jsii.String("key"), Partition: jsii.String("partition"), }, Kinesis: &KinesisActionProperty{ RoleArn: jsii.String("roleArn"), StreamName: jsii.String("streamName"), // the properties below are optional PartitionKey: jsii.String("partitionKey"), }, Lambda: &LambdaActionProperty{ FunctionArn: jsii.String("functionArn"), }, Location: &LocationActionProperty{ DeviceId: jsii.String("deviceId"), Latitude: jsii.String("latitude"), Longitude: jsii.String("longitude"), RoleArn: jsii.String("roleArn"), TrackerName: jsii.String("trackerName"), // the properties below are optional Timestamp: &TimestampProperty{ Value: jsii.String("value"), // the properties below are optional Unit: jsii.String("unit"), }, }, OpenSearch: &OpenSearchActionProperty{ Endpoint: jsii.String("endpoint"), Id: jsii.String("id"), Index: jsii.String("index"), RoleArn: jsii.String("roleArn"), Type: jsii.String("type"), }, Republish: &RepublishActionProperty{ RoleArn: jsii.String("roleArn"), Topic: jsii.String("topic"), // the properties below are optional Headers: &RepublishActionHeadersProperty{ ContentType: jsii.String("contentType"), CorrelationData: jsii.String("correlationData"), MessageExpiry: jsii.String("messageExpiry"), PayloadFormatIndicator: jsii.String("payloadFormatIndicator"), ResponseTopic: jsii.String("responseTopic"), UserProperties: []interface{}{ &UserPropertyProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }, Qos: jsii.Number(123), }, S3: &S3ActionProperty{ BucketName: jsii.String("bucketName"), Key: jsii.String("key"), RoleArn: jsii.String("roleArn"), // the properties below are optional CannedAcl: jsii.String("cannedAcl"), }, Sns: &SnsActionProperty{ RoleArn: jsii.String("roleArn"), TargetArn: jsii.String("targetArn"), // the properties below are optional MessageFormat: jsii.String("messageFormat"), }, Sqs: &SqsActionProperty{ QueueUrl: jsii.String("queueUrl"), RoleArn: jsii.String("roleArn"), // the properties below are optional UseBase64: jsii.Boolean(false), }, StepFunctions: &StepFunctionsActionProperty{ RoleArn: jsii.String("roleArn"), StateMachineName: jsii.String("stateMachineName"), // the properties below are optional ExecutionNamePrefix: jsii.String("executionNamePrefix"), }, Timestream: &TimestreamActionProperty{ DatabaseName: jsii.String("databaseName"), Dimensions: []interface{}{ &TimestreamDimensionProperty{ Name: jsii.String("name"), Value: jsii.String("value"), }, }, RoleArn: jsii.String("roleArn"), TableName: jsii.String("tableName"), // the properties below are optional Timestamp: &TimestreamTimestampProperty{ Unit: jsii.String("unit"), Value: jsii.String("value"), }, }, }, }, Sql: jsii.String("sql"), // the properties below are optional AwsIotSqlVersion: jsii.String("awsIotSqlVersion"), Description: jsii.String("description"), ErrorAction: &ActionProperty{ CloudwatchAlarm: &CloudwatchAlarmActionProperty{ AlarmName: jsii.String("alarmName"), RoleArn: jsii.String("roleArn"), StateReason: jsii.String("stateReason"), StateValue: jsii.String("stateValue"), }, CloudwatchLogs: &CloudwatchLogsActionProperty{ LogGroupName: jsii.String("logGroupName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), }, CloudwatchMetric: &CloudwatchMetricActionProperty{ MetricName: jsii.String("metricName"), MetricNamespace: jsii.String("metricNamespace"), MetricUnit: jsii.String("metricUnit"), MetricValue: jsii.String("metricValue"), RoleArn: jsii.String("roleArn"), // the properties below are optional MetricTimestamp: jsii.String("metricTimestamp"), }, DynamoDb: &DynamoDBActionProperty{ HashKeyField: jsii.String("hashKeyField"), HashKeyValue: jsii.String("hashKeyValue"), RoleArn: jsii.String("roleArn"), TableName: jsii.String("tableName"), // the properties below are optional HashKeyType: jsii.String("hashKeyType"), PayloadField: jsii.String("payloadField"), RangeKeyField: jsii.String("rangeKeyField"), RangeKeyType: jsii.String("rangeKeyType"), RangeKeyValue: jsii.String("rangeKeyValue"), }, DynamoDBv2: &DynamoDBv2ActionProperty{ PutItem: &PutItemInputProperty{ TableName: jsii.String("tableName"), }, RoleArn: jsii.String("roleArn"), }, Elasticsearch: &ElasticsearchActionProperty{ Endpoint: jsii.String("endpoint"), Id: jsii.String("id"), Index: jsii.String("index"), RoleArn: jsii.String("roleArn"), Type: jsii.String("type"), }, Firehose: &FirehoseActionProperty{ DeliveryStreamName: jsii.String("deliveryStreamName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), Separator: jsii.String("separator"), }, Http: &HttpActionProperty{ Url: jsii.String("url"), // the properties below are optional Auth: &HttpAuthorizationProperty{ Sigv4: &SigV4AuthorizationProperty{ RoleArn: jsii.String("roleArn"), ServiceName: jsii.String("serviceName"), SigningRegion: jsii.String("signingRegion"), }, }, ConfirmationUrl: jsii.String("confirmationUrl"), Headers: []interface{}{ &HttpActionHeaderProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }, IotAnalytics: &IotAnalyticsActionProperty{ ChannelName: jsii.String("channelName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), }, IotEvents: &IotEventsActionProperty{ InputName: jsii.String("inputName"), RoleArn: jsii.String("roleArn"), // the properties below are optional BatchMode: jsii.Boolean(false), MessageId: jsii.String("messageId"), }, IotSiteWise: &IotSiteWiseActionProperty{ PutAssetPropertyValueEntries: []interface{}{ &PutAssetPropertyValueEntryProperty{ PropertyValues: []interface{}{ &AssetPropertyValueProperty{ Timestamp: &AssetPropertyTimestampProperty{ TimeInSeconds: jsii.String("timeInSeconds"), // the properties below are optional OffsetInNanos: jsii.String("offsetInNanos"), }, Value: &AssetPropertyVariantProperty{ BooleanValue: jsii.String("booleanValue"), DoubleValue: jsii.String("doubleValue"), IntegerValue: jsii.String("integerValue"), StringValue: jsii.String("stringValue"), }, // the properties below are optional Quality: jsii.String("quality"), }, }, // the properties below are optional AssetId: jsii.String("assetId"), EntryId: jsii.String("entryId"), PropertyAlias: jsii.String("propertyAlias"), PropertyId: jsii.String("propertyId"), }, }, RoleArn: jsii.String("roleArn"), }, Kafka: &KafkaActionProperty{ ClientProperties: map[string]*string{ "clientPropertiesKey": jsii.String("clientProperties"), }, DestinationArn: jsii.String("destinationArn"), Topic: jsii.String("topic"), // the properties below are optional Key: jsii.String("key"), Partition: jsii.String("partition"), }, Kinesis: &KinesisActionProperty{ RoleArn: jsii.String("roleArn"), StreamName: jsii.String("streamName"), // the properties below are optional PartitionKey: jsii.String("partitionKey"), }, Lambda: &LambdaActionProperty{ FunctionArn: jsii.String("functionArn"), }, Location: &LocationActionProperty{ DeviceId: jsii.String("deviceId"), Latitude: jsii.String("latitude"), Longitude: jsii.String("longitude"), RoleArn: jsii.String("roleArn"), TrackerName: jsii.String("trackerName"), // the properties below are optional Timestamp: &TimestampProperty{ Value: jsii.String("value"), // the properties below are optional Unit: jsii.String("unit"), }, }, OpenSearch: &OpenSearchActionProperty{ Endpoint: jsii.String("endpoint"), Id: jsii.String("id"), Index: jsii.String("index"), RoleArn: jsii.String("roleArn"), Type: jsii.String("type"), }, Republish: &RepublishActionProperty{ RoleArn: jsii.String("roleArn"), Topic: jsii.String("topic"), // the properties below are optional Headers: &RepublishActionHeadersProperty{ ContentType: jsii.String("contentType"), CorrelationData: jsii.String("correlationData"), MessageExpiry: jsii.String("messageExpiry"), PayloadFormatIndicator: jsii.String("payloadFormatIndicator"), ResponseTopic: jsii.String("responseTopic"), UserProperties: []interface{}{ &UserPropertyProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }, Qos: jsii.Number(123), }, S3: &S3ActionProperty{ BucketName: jsii.String("bucketName"), Key: jsii.String("key"), RoleArn: jsii.String("roleArn"), // the properties below are optional CannedAcl: jsii.String("cannedAcl"), }, Sns: &SnsActionProperty{ RoleArn: jsii.String("roleArn"), TargetArn: jsii.String("targetArn"), // the properties below are optional MessageFormat: jsii.String("messageFormat"), }, Sqs: &SqsActionProperty{ QueueUrl: jsii.String("queueUrl"), RoleArn: jsii.String("roleArn"), // the properties below are optional UseBase64: jsii.Boolean(false), }, StepFunctions: &StepFunctionsActionProperty{ RoleArn: jsii.String("roleArn"), StateMachineName: jsii.String("stateMachineName"), // the properties below are optional ExecutionNamePrefix: jsii.String("executionNamePrefix"), }, Timestream: &TimestreamActionProperty{ DatabaseName: jsii.String("databaseName"), Dimensions: []interface{}{ &TimestreamDimensionProperty{ Name: jsii.String("name"), Value: jsii.String("value"), }, }, RoleArn: jsii.String("roleArn"), TableName: jsii.String("tableName"), // the properties below are optional Timestamp: &TimestreamTimestampProperty{ Unit: jsii.String("unit"), Value: jsii.String("value"), }, }, }, RuleDisabled: jsii.Boolean(false), }
type CfnTopicRule_UserPropertyProperty ¶ added in v2.51.0
type CfnTopicRule_UserPropertyProperty struct { // A key to be specified in `UserProperty` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-userproperty.html#cfn-iot-topicrule-userproperty-key // Key *string `field:"required" json:"key" yaml:"key"` // A value to be specified in `UserProperty` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-userproperty.html#cfn-iot-topicrule-userproperty-value // Value *string `field:"required" json:"value" yaml:"value"` }
A key-value pair that you define in the header.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" userPropertyProperty := &UserPropertyProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }
Source Files ¶
- CfnAccountAuditConfiguration.go
- CfnAccountAuditConfigurationProps.go
- CfnAccountAuditConfiguration_AuditCheckConfigurationProperty.go
- CfnAccountAuditConfiguration_AuditCheckConfigurationsProperty.go
- CfnAccountAuditConfiguration_AuditNotificationTargetConfigurationsProperty.go
- CfnAccountAuditConfiguration_AuditNotificationTargetProperty.go
- CfnAccountAuditConfiguration__checks.go
- CfnAuthorizer.go
- CfnAuthorizerProps.go
- CfnAuthorizer__checks.go
- CfnBillingGroup.go
- CfnBillingGroupProps.go
- CfnBillingGroup_BillingGroupPropertiesProperty.go
- CfnBillingGroup__checks.go
- CfnCACertificate.go
- CfnCACertificateProps.go
- CfnCACertificate_RegistrationConfigProperty.go
- CfnCACertificate__checks.go
- CfnCertificate.go
- CfnCertificateProps.go
- CfnCertificate__checks.go
- CfnCustomMetric.go
- CfnCustomMetricProps.go
- CfnCustomMetric__checks.go
- CfnDimension.go
- CfnDimensionProps.go
- CfnDimension__checks.go
- CfnDomainConfiguration.go
- CfnDomainConfigurationProps.go
- CfnDomainConfiguration_AuthorizerConfigProperty.go
- CfnDomainConfiguration_ServerCertificateSummaryProperty.go
- CfnDomainConfiguration_TlsConfigProperty.go
- CfnDomainConfiguration__checks.go
- CfnFleetMetric.go
- CfnFleetMetricProps.go
- CfnFleetMetric_AggregationTypeProperty.go
- CfnFleetMetric__checks.go
- CfnJobTemplate.go
- CfnJobTemplateProps.go
- CfnJobTemplate_AbortConfigProperty.go
- CfnJobTemplate_AbortCriteriaProperty.go
- CfnJobTemplate_ExponentialRolloutRateProperty.go
- CfnJobTemplate_JobExecutionsRetryConfigProperty.go
- CfnJobTemplate_JobExecutionsRolloutConfigProperty.go
- CfnJobTemplate_MaintenanceWindowProperty.go
- CfnJobTemplate_PresignedUrlConfigProperty.go
- CfnJobTemplate_RateIncreaseCriteriaProperty.go
- CfnJobTemplate_RetryCriteriaProperty.go
- CfnJobTemplate_TimeoutConfigProperty.go
- CfnJobTemplate__checks.go
- CfnLogging.go
- CfnLoggingProps.go
- CfnLogging__checks.go
- CfnMitigationAction.go
- CfnMitigationActionProps.go
- CfnMitigationAction_ActionParamsProperty.go
- CfnMitigationAction_AddThingsToThingGroupParamsProperty.go
- CfnMitigationAction_EnableIoTLoggingParamsProperty.go
- CfnMitigationAction_PublishFindingToSnsParamsProperty.go
- CfnMitigationAction_ReplaceDefaultPolicyVersionParamsProperty.go
- CfnMitigationAction_UpdateCACertificateParamsProperty.go
- CfnMitigationAction_UpdateDeviceCertificateParamsProperty.go
- CfnMitigationAction__checks.go
- CfnPolicy.go
- CfnPolicyPrincipalAttachment.go
- CfnPolicyPrincipalAttachmentProps.go
- CfnPolicyPrincipalAttachment__checks.go
- CfnPolicyProps.go
- CfnPolicy__checks.go
- CfnProvisioningTemplate.go
- CfnProvisioningTemplateProps.go
- CfnProvisioningTemplate_ProvisioningHookProperty.go
- CfnProvisioningTemplate__checks.go
- CfnResourceSpecificLogging.go
- CfnResourceSpecificLoggingProps.go
- CfnResourceSpecificLogging__checks.go
- CfnRoleAlias.go
- CfnRoleAliasProps.go
- CfnRoleAlias__checks.go
- CfnScheduledAudit.go
- CfnScheduledAuditProps.go
- CfnScheduledAudit__checks.go
- CfnSecurityProfile.go
- CfnSecurityProfileProps.go
- CfnSecurityProfile_AlertTargetProperty.go
- CfnSecurityProfile_BehaviorCriteriaProperty.go
- CfnSecurityProfile_BehaviorProperty.go
- CfnSecurityProfile_MachineLearningDetectionConfigProperty.go
- CfnSecurityProfile_MetricDimensionProperty.go
- CfnSecurityProfile_MetricToRetainProperty.go
- CfnSecurityProfile_MetricValueProperty.go
- CfnSecurityProfile_StatisticalThresholdProperty.go
- CfnSecurityProfile__checks.go
- CfnSoftwarePackage.go
- CfnSoftwarePackageProps.go
- CfnSoftwarePackageVersion.go
- CfnSoftwarePackageVersionProps.go
- CfnSoftwarePackageVersion__checks.go
- CfnSoftwarePackage__checks.go
- CfnThing.go
- CfnThingGroup.go
- CfnThingGroupProps.go
- CfnThingGroup_AttributePayloadProperty.go
- CfnThingGroup_ThingGroupPropertiesProperty.go
- CfnThingGroup__checks.go
- CfnThingPrincipalAttachment.go
- CfnThingPrincipalAttachmentProps.go
- CfnThingPrincipalAttachment__checks.go
- CfnThingProps.go
- CfnThingType.go
- CfnThingTypeProps.go
- CfnThingType_ThingTypePropertiesProperty.go
- CfnThingType__checks.go
- CfnThing_AttributePayloadProperty.go
- CfnThing__checks.go
- CfnTopicRule.go
- CfnTopicRuleDestination.go
- CfnTopicRuleDestinationProps.go
- CfnTopicRuleDestination_HttpUrlDestinationSummaryProperty.go
- CfnTopicRuleDestination_VpcDestinationPropertiesProperty.go
- CfnTopicRuleDestination__checks.go
- CfnTopicRuleProps.go
- CfnTopicRule_ActionProperty.go
- CfnTopicRule_AssetPropertyTimestampProperty.go
- CfnTopicRule_AssetPropertyValueProperty.go
- CfnTopicRule_AssetPropertyVariantProperty.go
- CfnTopicRule_CloudwatchAlarmActionProperty.go
- CfnTopicRule_CloudwatchLogsActionProperty.go
- CfnTopicRule_CloudwatchMetricActionProperty.go
- CfnTopicRule_DynamoDBActionProperty.go
- CfnTopicRule_DynamoDBv2ActionProperty.go
- CfnTopicRule_ElasticsearchActionProperty.go
- CfnTopicRule_FirehoseActionProperty.go
- CfnTopicRule_HttpActionHeaderProperty.go
- CfnTopicRule_HttpActionProperty.go
- CfnTopicRule_HttpAuthorizationProperty.go
- CfnTopicRule_IotAnalyticsActionProperty.go
- CfnTopicRule_IotEventsActionProperty.go
- CfnTopicRule_IotSiteWiseActionProperty.go
- CfnTopicRule_KafkaActionProperty.go
- CfnTopicRule_KinesisActionProperty.go
- CfnTopicRule_LambdaActionProperty.go
- CfnTopicRule_LocationActionProperty.go
- CfnTopicRule_OpenSearchActionProperty.go
- CfnTopicRule_PutAssetPropertyValueEntryProperty.go
- CfnTopicRule_PutItemInputProperty.go
- CfnTopicRule_RepublishActionHeadersProperty.go
- CfnTopicRule_RepublishActionProperty.go
- CfnTopicRule_S3ActionProperty.go
- CfnTopicRule_SigV4AuthorizationProperty.go
- CfnTopicRule_SnsActionProperty.go
- CfnTopicRule_SqsActionProperty.go
- CfnTopicRule_StepFunctionsActionProperty.go
- CfnTopicRule_TimestampProperty.go
- CfnTopicRule_TimestreamActionProperty.go
- CfnTopicRule_TimestreamDimensionProperty.go
- CfnTopicRule_TimestreamTimestampProperty.go
- CfnTopicRule_TopicRulePayloadProperty.go
- CfnTopicRule_UserPropertyProperty.go
- CfnTopicRule__checks.go
- main.go