Class: Aws::LexModelsV2::Types::CreateResourcePolicyStatementRequest

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-lexmodelsv2/lib/aws-sdk-lexmodelsv2/types.rb

Overview

Note:

When making an API call, you may pass CreateResourcePolicyStatementRequest data as a hash:

{
  resource_arn: "AmazonResourceName", # required
  statement_id: "Name", # required
  effect: "Allow", # required, accepts Allow, Deny
  principal: [ # required
    {
      service: "ServicePrincipal",
      arn: "PrincipalArn",
    },
  ],
  action: ["Operation"], # required
  condition: {
    "ConditionOperator" => {
      "ConditionKey" => "ConditionValue",
    },
  },
  expected_revision_id: "RevisionId",
}

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#actionArray<String>

The Amazon Lex action that this policy either allows or denies. The action must apply to the resource type of the specified ARN. For more information, see Actions, resources, and condition keys for Amazon Lex V2.

Returns:

  • (Array<String>)


2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
# File 'gems/aws-sdk-lexmodelsv2/lib/aws-sdk-lexmodelsv2/types.rb', line 2810

class CreateResourcePolicyStatementRequest < Struct.new(
  :resource_arn,
  :statement_id,
  :effect,
  :principal,
  :action,
  :condition,
  :expected_revision_id)
  SENSITIVE = []
  include Aws::Structure
end

#conditionHash<String,Hash<String,String>>

Specifies a condition when the policy is in effect. If the principal of the policy is a service principal, you must provide two condition blocks, one with a SourceAccount global condition key and one with a SourceArn global condition key.

For more information, see IAM JSON policy elements: Condition .

Returns:

  • (Hash<String,Hash<String,String>>)


2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
# File 'gems/aws-sdk-lexmodelsv2/lib/aws-sdk-lexmodelsv2/types.rb', line 2810

class CreateResourcePolicyStatementRequest < Struct.new(
  :resource_arn,
  :statement_id,
  :effect,
  :principal,
  :action,
  :condition,
  :expected_revision_id)
  SENSITIVE = []
  include Aws::Structure
end

#effectString

Determines whether the statement allows or denies access to the resource.

Returns:

  • (String)


2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
# File 'gems/aws-sdk-lexmodelsv2/lib/aws-sdk-lexmodelsv2/types.rb', line 2810

class CreateResourcePolicyStatementRequest < Struct.new(
  :resource_arn,
  :statement_id,
  :effect,
  :principal,
  :action,
  :condition,
  :expected_revision_id)
  SENSITIVE = []
  include Aws::Structure
end

#expected_revision_idString

The identifier of the revision of the policy to edit. If this revision ID doesn't match the current revision ID, Amazon Lex throws an exception.

If you don't specify a revision, Amazon Lex overwrites the contents of the policy with the new values.

Returns:

  • (String)


2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
# File 'gems/aws-sdk-lexmodelsv2/lib/aws-sdk-lexmodelsv2/types.rb', line 2810

class CreateResourcePolicyStatementRequest < Struct.new(
  :resource_arn,
  :statement_id,
  :effect,
  :principal,
  :action,
  :condition,
  :expected_revision_id)
  SENSITIVE = []
  include Aws::Structure
end

#principalArray<Types::Principal>

An IAM principal, such as an IAM users, IAM roles, or AWS services that is allowed or denied access to a resource. For more information, see AWS JSON policy elements: Principal.

Returns:



2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
# File 'gems/aws-sdk-lexmodelsv2/lib/aws-sdk-lexmodelsv2/types.rb', line 2810

class CreateResourcePolicyStatementRequest < Struct.new(
  :resource_arn,
  :statement_id,
  :effect,
  :principal,
  :action,
  :condition,
  :expected_revision_id)
  SENSITIVE = []
  include Aws::Structure
end

#resource_arnString

The Amazon Resource Name (ARN) of the bot or bot alias that the resource policy is attached to.

Returns:

  • (String)


2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
# File 'gems/aws-sdk-lexmodelsv2/lib/aws-sdk-lexmodelsv2/types.rb', line 2810

class CreateResourcePolicyStatementRequest < Struct.new(
  :resource_arn,
  :statement_id,
  :effect,
  :principal,
  :action,
  :condition,
  :expected_revision_id)
  SENSITIVE = []
  include Aws::Structure
end

#statement_idString

The name of the statement. The ID is the same as the Sid IAM property. The statement name must be unique within the policy. For more information, see IAM JSON policy elements: Sid.

Returns:

  • (String)


2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
# File 'gems/aws-sdk-lexmodelsv2/lib/aws-sdk-lexmodelsv2/types.rb', line 2810

class CreateResourcePolicyStatementRequest < Struct.new(
  :resource_arn,
  :statement_id,
  :effect,
  :principal,
  :action,
  :condition,
  :expected_revision_id)
  SENSITIVE = []
  include Aws::Structure
end