UNPKG

typed-aws

Version:

Helps you write AWS CloudFormation in TypeScript

239 lines (238 loc) 11.1 kB
import { CfnResource, Resolvable } from '../../base'; export declare type SecurityProfile_Type = 'AWS::IoT::SecurityProfile'; export declare const SecurityProfile_Type = "AWS::IoT::SecurityProfile"; /** * A security profile defines a set of expected behaviors for devices in * your account. {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html} */ export default function SecurityProfile(props: SecurityProfile_Properties): CfnResource<SecurityProfile_Properties>; /** * A security profile defines a set of expected behaviors for devices in * your account. {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html} */ export declare type SecurityProfile_Properties = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-securityprofilename} */ SecurityProfileName?: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-securityprofiledescription} */ SecurityProfileDescription?: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-behaviors} */ Behaviors?: Behavior[]; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-alerttargets} */ AlertTargets?: { [k: string]: AlertTarget; }; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-additionalmetricstoretainv2} */ AdditionalMetricsToRetainV2?: MetricToRetain[]; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-tags} */ Tags?: Tag[]; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html#cfn-iot-securityprofile-targetarns} */ TargetArns?: Resolvable<string>[]; SecurityProfileArn?: Resolvable<string>; }; /** * A security profile behavior. {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html} */ export declare type Behavior = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html#cfn-iot-securityprofile-behavior-name} */ Name: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html#cfn-iot-securityprofile-behavior-metric} */ Metric?: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html#cfn-iot-securityprofile-behavior-metricdimension} */ MetricDimension?: MetricDimension; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html#cfn-iot-securityprofile-behavior-criteria} */ Criteria?: BehaviorCriteria; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behavior.html#cfn-iot-securityprofile-behavior-suppressalerts} */ SuppressAlerts?: Resolvable<boolean>; }; /** * The dimension of a metric. {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricdimension.html} */ export declare type MetricDimension = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricdimension.html#cfn-iot-securityprofile-metricdimension-dimensionname} */ DimensionName: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricdimension.html#cfn-iot-securityprofile-metricdimension-operator} */ Operator?: Resolvable<'IN' | 'NOT_IN'>; }; /** * The criteria by which the behavior is determined to be normal. {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html} */ export declare type BehaviorCriteria = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-comparisonoperator} */ ComparisonOperator?: Resolvable<'less-than' | 'less-than-equals' | 'greater-than' | 'greater-than-equals' | 'in-cidr-set' | 'not-in-cidr-set' | 'in-port-set' | 'not-in-port-set' | 'in-set' | 'not-in-set'>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-value} */ Value?: MetricValue; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-durationseconds} */ DurationSeconds?: Resolvable<number>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-consecutivedatapointstoalarm} */ ConsecutiveDatapointsToAlarm?: Resolvable<number>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-consecutivedatapointstoclear} */ ConsecutiveDatapointsToClear?: Resolvable<number>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-statisticalthreshold} */ StatisticalThreshold?: StatisticalThreshold; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-behaviorcriteria.html#cfn-iot-securityprofile-behaviorcriteria-mldetectionconfig} */ MlDetectionConfig?: MachineLearningDetectionConfig; }; /** * The value to be compared with the metric. {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html} */ export declare type MetricValue = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-count} */ Count?: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-cidrs} */ Cidrs?: Resolvable<string>[]; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-ports} */ Ports?: Resolvable<number>[]; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-number} */ Number?: Resolvable<number>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-numbers} */ Numbers?: Resolvable<number>[]; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metricvalue.html#cfn-iot-securityprofile-metricvalue-strings} */ Strings?: Resolvable<string>[]; }; /** * A statistical ranking (percentile) which indicates a threshold value * by which a behavior is determined to be in compliance or in violation * of the behavior. {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-statisticalthreshold.html} */ export declare type StatisticalThreshold = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-statisticalthreshold.html#cfn-iot-securityprofile-statisticalthreshold-statistic} */ Statistic?: Resolvable<'Average' | 'p0' | 'p0.1' | 'p0.01' | 'p1' | 'p10' | 'p50' | 'p90' | 'p99' | 'p99.9' | 'p99.99' | 'p100'>; }; /** * The configuration of an ML Detect Security Profile. {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-machinelearningdetectionconfig.html} */ export declare type MachineLearningDetectionConfig = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-machinelearningdetectionconfig.html#cfn-iot-securityprofile-machinelearningdetectionconfig-confidencelevel} */ ConfidenceLevel?: Resolvable<'LOW' | 'MEDIUM' | 'HIGH'>; }; /** * A structure containing the alert target ARN and the role ARN. {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-alerttarget.html} */ export declare type AlertTarget = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-alerttarget.html#cfn-iot-securityprofile-alerttarget-alerttargetarn} */ AlertTargetArn: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-alerttarget.html#cfn-iot-securityprofile-alerttarget-rolearn} */ RoleArn: Resolvable<string>; }; /** * The metric you want to retain. Dimensions are optional. {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metrictoretain.html} */ export declare type MetricToRetain = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metrictoretain.html#cfn-iot-securityprofile-metrictoretain-metric} */ Metric: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-securityprofile-metrictoretain.html#cfn-iot-securityprofile-metrictoretain-metricdimension} */ MetricDimension?: MetricDimension; }; export declare type Tag = { Key: Resolvable<string>; Value: Resolvable<string>; };