# frozen_string_literal: true
# WARNING ABOUT GENERATED CODE
#
# This file is generated. See the contributing guide for more information:
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
#
# WARNING ABOUT GENERATED CODE
module Aws::RAM
module Types
# @!attribute [rw] resource_share_invitation_arn
# The [Amazon Resource Name (ARN)][1] of the invitation that you want
# to accept.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] client_token
# Specifies a unique, case-sensitive identifier that you provide to
# ensure the idempotency of the request. This lets you safely retry
# the request without accidentally performing the same operation a
# second time. Passing the same value to a later call to an operation
# requires that you also pass the same value for all other parameters.
# We recommend that you use a [UUID type of value.][1].
#
# If you don't provide this value, then Amazon Web Services generates
# a random one for you.
#
# If you retry the operation with the same `ClientToken`, but with
# different parameters, the retry fails with an
# `IdempotentParameterMismatch` error.
#
#
#
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/AcceptResourceShareInvitationRequest AWS API Documentation
#
class AcceptResourceShareInvitationRequest < Struct.new(
:resource_share_invitation_arn,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_invitation
# An object that contains information about the specified invitation.
# @return [Types::ResourceShareInvitation]
#
# @!attribute [rw] client_token
# The idempotency identifier associated with this request. If you want
# to repeat the same operation in an idempotent manner then you must
# include this value in the `clientToken` request parameter of that
# later call. All other parameters must also have the same values that
# you used in the first call.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/AcceptResourceShareInvitationResponse AWS API Documentation
#
class AcceptResourceShareInvitationResponse < Struct.new(
:resource_share_invitation,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the resource share
# to which you want to add or replace permissions.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] permission_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the RAM permission
# to associate with the resource share. To find the ARN for a
# permission, use either the ListPermissions operation or go to the
# [Permissions library][2] page in the RAM console and then choose the
# name of the permission. The ARN is displayed on the detail page.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# [2]: https://console.aws.amazon.com/ram/home#Permissions:
# @return [String]
#
# @!attribute [rw] replace
# Specifies whether the specified permission should replace the
# existing permission associated with the resource share. Use `true`
# to replace the current permissions. Use `false` to add the
# permission to a resource share that currently doesn't have a
# permission. The default value is `false`.
#
# A resource share can have only one permission per resource type. If
# a resource share already has a permission for the specified resource
# type and you don't set `replace` to `true` then the operation
# returns an error. This helps prevent accidental overwriting of a
# permission.
#
#
# @return [Boolean]
#
# @!attribute [rw] client_token
# Specifies a unique, case-sensitive identifier that you provide to
# ensure the idempotency of the request. This lets you safely retry
# the request without accidentally performing the same operation a
# second time. Passing the same value to a later call to an operation
# requires that you also pass the same value for all other parameters.
# We recommend that you use a [UUID type of value.][1].
#
# If you don't provide this value, then Amazon Web Services generates
# a random one for you.
#
# If you retry the operation with the same `ClientToken`, but with
# different parameters, the retry fails with an
# `IdempotentParameterMismatch` error.
#
#
#
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
# @return [String]
#
# @!attribute [rw] permission_version
# Specifies the version of the RAM permission to associate with the
# resource share. You can specify *only* the version that is currently
# set as the default version for the permission. If you also set the
# `replace` pararameter to `true`, then this operation updates an
# outdated version of the permission to the current default version.
#
# You don't need to specify this parameter because the default
# behavior is to use the version that is currently set as the default
# version for the permission. This parameter is supported for
# backwards compatibility.
#
#
# @return [Integer]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/AssociateResourceSharePermissionRequest AWS API Documentation
#
class AssociateResourceSharePermissionRequest < Struct.new(
:resource_share_arn,
:permission_arn,
:replace,
:client_token,
:permission_version)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] return_value
# A return value of `true` indicates that the request succeeded. A
# value of `false` indicates that the request failed.
# @return [Boolean]
#
# @!attribute [rw] client_token
# The idempotency identifier associated with this request. If you want
# to repeat the same operation in an idempotent manner then you must
# include this value in the `clientToken` request parameter of that
# later call. All other parameters must also have the same values that
# you used in the first call.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/AssociateResourceSharePermissionResponse AWS API Documentation
#
class AssociateResourceSharePermissionResponse < Struct.new(
:return_value,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the resource share
# that you want to add principals or resources to.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] resource_arns
# Specifies a list of [Amazon Resource Names (ARNs)][1] of the
# resources that you want to share. This can be `null` if you want to
# add only principals.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [Array]
#
# @!attribute [rw] principals
# Specifies a list of principals to whom you want to the resource
# share. This can be `null` if you want to add only resources.
#
# What the principals can do with the resources in the share is
# determined by the RAM permissions that you associate with the
# resource share. See AssociateResourceSharePermission.
#
# You can include the following values:
#
# * An Amazon Web Services account ID, for example: `123456789012`
#
# * An [Amazon Resource Name (ARN)][1] of an organization in
# Organizations, for example:
# `organizations::123456789012:organization/o-exampleorgid`
#
# * An ARN of an organizational unit (OU) in Organizations, for
# example:
# `organizations::123456789012:ou/o-exampleorgid/ou-examplerootid-exampleouid123`
#
# * An ARN of an IAM role, for example:
# `iam::123456789012:role/rolename`
#
# * An ARN of an IAM user, for example:
# `iam::123456789012user/username`
#
# Not all resource types can be shared with IAM roles and users. For
# more information, see [Sharing with IAM roles and users][2] in the
# *Resource Access Manager User Guide*.
#
#
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# [2]: https://docs.aws.amazon.com/ram/latest/userguide/permissions.html#permissions-rbp-supported-resource-types
# @return [Array]
#
# @!attribute [rw] client_token
# Specifies a unique, case-sensitive identifier that you provide to
# ensure the idempotency of the request. This lets you safely retry
# the request without accidentally performing the same operation a
# second time. Passing the same value to a later call to an operation
# requires that you also pass the same value for all other parameters.
# We recommend that you use a [UUID type of value.][1].
#
# If you don't provide this value, then Amazon Web Services generates
# a random one for you.
#
# If you retry the operation with the same `ClientToken`, but with
# different parameters, the retry fails with an
# `IdempotentParameterMismatch` error.
#
#
#
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
# @return [String]
#
# @!attribute [rw] sources
# Specifies from which source accounts the service principal has
# access to the resources in this resource share.
# @return [Array]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/AssociateResourceShareRequest AWS API Documentation
#
class AssociateResourceShareRequest < Struct.new(
:resource_share_arn,
:resource_arns,
:principals,
:client_token,
:sources)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_associations
# An array of objects that contain information about the associations.
# @return [Array]
#
# @!attribute [rw] client_token
# The idempotency identifier associated with this request. If you want
# to repeat the same operation in an idempotent manner then you must
# include this value in the `clientToken` request parameter of that
# later call. All other parameters must also have the same values that
# you used in the first call.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/AssociateResourceShareResponse AWS API Documentation
#
class AssociateResourceShareResponse < Struct.new(
:resource_share_associations,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# An object that describes a managed permission associated with a
# resource share.
#
# @!attribute [rw] arn
# The [Amazon Resource Name (ARN)][1] of the associated managed
# permission.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] permission_version
# The version of the permission currently associated with the resource
# share.
# @return [String]
#
# @!attribute [rw] default_version
# Indicates whether the associated resource share is using the default
# version of the permission.
# @return [Boolean]
#
# @!attribute [rw] resource_type
# The resource type to which this permission applies.
# @return [String]
#
# @!attribute [rw] status
# The current status of the association between the permission and the
# resource share. The following are the possible values:
#
# * `ATTACHABLE` – This permission or version can be associated with
# resource shares.
#
# * `UNATTACHABLE` – This permission or version can't currently be
# associated with resource shares.
#
# * `DELETING` – This permission or version is in the process of being
# deleted.
#
# * `DELETED` – This permission or version is deleted.
# @return [String]
#
# @!attribute [rw] feature_set
# Indicates what features are available for this resource share. This
# parameter can have one of the following values:
#
# * **STANDARD** – A resource share that supports all functionality.
# These resource shares are visible to all principals you share the
# resource share with. You can modify these resource shares in RAM
# using the console or APIs. This resource share might have been
# created by RAM, or it might have been **CREATED\_FROM\_POLICY**
# and then promoted.
#
# * **CREATED\_FROM\_POLICY** – The customer manually shared a
# resource by attaching a resource-based policy. That policy did not
# match any existing managed permissions, so RAM created this
# customer managed permission automatically on the customer's
# behalf based on the attached policy document. This type of
# resource share is visible only to the Amazon Web Services account
# that created it. You can't modify it in RAM unless you promote
# it. For more information, see
# PromoteResourceShareCreatedFromPolicy.
#
# * **PROMOTING\_TO\_STANDARD** – This resource share was originally
# `CREATED_FROM_POLICY`, but the customer ran the
# PromoteResourceShareCreatedFromPolicy and that operation is still
# in progress. This value changes to `STANDARD` when complete.
# @return [String]
#
# @!attribute [rw] last_updated_time
# The date and time when the association between the permission and
# the resource share was last updated.
# @return [Time]
#
# @!attribute [rw] resource_share_arn
# The [Amazon Resource Name (ARN)][1] of a resource share associated
# with this permission.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/AssociatedPermission AWS API Documentation
#
class AssociatedPermission < Struct.new(
:arn,
:permission_version,
:default_version,
:resource_type,
:status,
:feature_set,
:last_updated_time,
:resource_share_arn)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] name
# Specifies the name of the customer managed permission. The name must
# be unique within the Amazon Web Services Region.
# @return [String]
#
# @!attribute [rw] resource_type
# Specifies the name of the resource type that this customer managed
# permission applies to.
#
# The format is ` : ` and is not case
# sensitive. For example, to specify an Amazon EC2 Subnet, you can use
# the string `ec2:subnet`. To see the list of valid values for this
# parameter, query the ListResourceTypes operation.
# @return [String]
#
# @!attribute [rw] policy_template
# A string in JSON format string that contains the following elements
# of a resource-based policy:
#
# * **Effect**: must be set to `ALLOW`.
#
# * **Action**: specifies the actions that are allowed by this
# customer managed permission. The list must contain only actions
# that are supported by the specified resource type. For a list of
# all actions supported by each resource type, see [Actions,
# resources, and condition keys for Amazon Web Services services][1]
# in the *Identity and Access Management User Guide*.
#
# * **Condition**: (optional) specifies conditional parameters that
# must evaluate to true when a user attempts an action for that
# action to be allowed. For more information about the Condition
# element, see [IAM policies: Condition element][2] in the *Identity
# and Access Management User Guide*.
#
# This template can't include either the `Resource` or `Principal`
# elements. Those are both filled in by RAM when it instantiates the
# resource-based policy on each resource shared using this managed
# permission. The `Resource` comes from the ARN of the specific
# resource that you are sharing. The `Principal` comes from the list
# of identities added to the resource share.
#
#
#
# [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html
# @return [String]
#
# @!attribute [rw] client_token
# Specifies a unique, case-sensitive identifier that you provide to
# ensure the idempotency of the request. This lets you safely retry
# the request without accidentally performing the same operation a
# second time. Passing the same value to a later call to an operation
# requires that you also pass the same value for all other parameters.
# We recommend that you use a [UUID type of value.][1].
#
# If you don't provide this value, then Amazon Web Services generates
# a random one for you.
#
# If you retry the operation with the same `ClientToken`, but with
# different parameters, the retry fails with an
# `IdempotentParameterMismatch` error.
#
#
#
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
# @return [String]
#
# @!attribute [rw] tags
# Specifies a list of one or more tag key and value pairs to attach to
# the permission.
# @return [Array]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/CreatePermissionRequest AWS API Documentation
#
class CreatePermissionRequest < Struct.new(
:name,
:resource_type,
:policy_template,
:client_token,
:tags)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] permission
# A structure with information about this customer managed permission.
# @return [Types::ResourceSharePermissionSummary]
#
# @!attribute [rw] client_token
# The idempotency identifier associated with this request. If you want
# to repeat the same operation in an idempotent manner then you must
# include this value in the `clientToken` request parameter of that
# later call. All other parameters must also have the same values that
# you used in the first call.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/CreatePermissionResponse AWS API Documentation
#
class CreatePermissionResponse < Struct.new(
:permission,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] permission_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the customer
# managed permission you're creating a new version for.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] policy_template
# A string in JSON format string that contains the following elements
# of a resource-based policy:
#
# * **Effect**: must be set to `ALLOW`.
#
# * **Action**: specifies the actions that are allowed by this
# customer managed permission. The list must contain only actions
# that are supported by the specified resource type. For a list of
# all actions supported by each resource type, see [Actions,
# resources, and condition keys for Amazon Web Services services][1]
# in the *Identity and Access Management User Guide*.
#
# * **Condition**: (optional) specifies conditional parameters that
# must evaluate to true when a user attempts an action for that
# action to be allowed. For more information about the Condition
# element, see [IAM policies: Condition element][2] in the *Identity
# and Access Management User Guide*.
#
# This template can't include either the `Resource` or `Principal`
# elements. Those are both filled in by RAM when it instantiates the
# resource-based policy on each resource shared using this managed
# permission. The `Resource` comes from the ARN of the specific
# resource that you are sharing. The `Principal` comes from the list
# of identities added to the resource share.
#
#
#
# [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html
# @return [String]
#
# @!attribute [rw] client_token
# Specifies a unique, case-sensitive identifier that you provide to
# ensure the idempotency of the request. This lets you safely retry
# the request without accidentally performing the same operation a
# second time. Passing the same value to a later call to an operation
# requires that you also pass the same value for all other parameters.
# We recommend that you use a [UUID type of value.][1].
#
# If you don't provide this value, then Amazon Web Services generates
# a random one for you.
#
# If you retry the operation with the same `ClientToken`, but with
# different parameters, the retry fails with an
# `IdempotentParameterMismatch` error.
#
#
#
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/CreatePermissionVersionRequest AWS API Documentation
#
class CreatePermissionVersionRequest < Struct.new(
:permission_arn,
:policy_template,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] permission
# Information about a RAM managed permission.
# @return [Types::ResourceSharePermissionDetail]
#
# @!attribute [rw] client_token
# The idempotency identifier associated with this request. If you want
# to repeat the same operation in an idempotent manner then you must
# include this value in the `clientToken` request parameter of that
# later call. All other parameters must also have the same values that
# you used in the first call.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/CreatePermissionVersionResponse AWS API Documentation
#
class CreatePermissionVersionResponse < Struct.new(
:permission,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] name
# Specifies the name of the resource share.
# @return [String]
#
# @!attribute [rw] resource_arns
# Specifies a list of one or more ARNs of the resources to associate
# with the resource share.
# @return [Array]
#
# @!attribute [rw] principals
# Specifies a list of one or more principals to associate with the
# resource share.
#
# You can include the following values:
#
# * An Amazon Web Services account ID, for example: `123456789012`
#
# * An [Amazon Resource Name (ARN)][1] of an organization in
# Organizations, for example:
# `organizations::123456789012:organization/o-exampleorgid`
#
# * An ARN of an organizational unit (OU) in Organizations, for
# example:
# `organizations::123456789012:ou/o-exampleorgid/ou-examplerootid-exampleouid123`
#
# * An ARN of an IAM role, for example:
# `iam::123456789012:role/rolename`
#
# * An ARN of an IAM user, for example:
# `iam::123456789012user/username`
#
# Not all resource types can be shared with IAM roles and users. For
# more information, see [Sharing with IAM roles and users][2] in the
# *Resource Access Manager User Guide*.
#
#
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# [2]: https://docs.aws.amazon.com/ram/latest/userguide/permissions.html#permissions-rbp-supported-resource-types
# @return [Array]
#
# @!attribute [rw] tags
# Specifies one or more tags to attach to the resource share itself.
# It doesn't attach the tags to the resources associated with the
# resource share.
# @return [Array]
#
# @!attribute [rw] allow_external_principals
# Specifies whether principals outside your organization in
# Organizations can be associated with a resource share. A value of
# `true` lets you share with individual Amazon Web Services accounts
# that are *not* in your organization. A value of `false` only has
# meaning if your account is a member of an Amazon Web Services
# Organization. The default value is `true`.
# @return [Boolean]
#
# @!attribute [rw] client_token
# Specifies a unique, case-sensitive identifier that you provide to
# ensure the idempotency of the request. This lets you safely retry
# the request without accidentally performing the same operation a
# second time. Passing the same value to a later call to an operation
# requires that you also pass the same value for all other parameters.
# We recommend that you use a [UUID type of value.][1].
#
# If you don't provide this value, then Amazon Web Services generates
# a random one for you.
#
# If you retry the operation with the same `ClientToken`, but with
# different parameters, the retry fails with an
# `IdempotentParameterMismatch` error.
#
#
#
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
# @return [String]
#
# @!attribute [rw] permission_arns
# Specifies the [Amazon Resource Names (ARNs)][1] of the RAM
# permission to associate with the resource share. If you do not
# specify an ARN for the permission, RAM automatically attaches the
# default version of the permission for each resource type. You can
# associate only one permission with each resource type included in
# the resource share.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [Array]
#
# @!attribute [rw] sources
# Specifies from which source accounts the service principal has
# access to the resources in this resource share.
# @return [Array]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/CreateResourceShareRequest AWS API Documentation
#
class CreateResourceShareRequest < Struct.new(
:name,
:resource_arns,
:principals,
:tags,
:allow_external_principals,
:client_token,
:permission_arns,
:sources)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share
# An object with information about the new resource share.
# @return [Types::ResourceShare]
#
# @!attribute [rw] client_token
# The idempotency identifier associated with this request. If you want
# to repeat the same operation in an idempotent manner then you must
# include this value in the `clientToken` request parameter of that
# later call. All other parameters must also have the same values that
# you used in the first call.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/CreateResourceShareResponse AWS API Documentation
#
class CreateResourceShareResponse < Struct.new(
:resource_share,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] permission_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the customer
# managed permission that you want to delete.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] client_token
# Specifies a unique, case-sensitive identifier that you provide to
# ensure the idempotency of the request. This lets you safely retry
# the request without accidentally performing the same operation a
# second time. Passing the same value to a later call to an operation
# requires that you also pass the same value for all other parameters.
# We recommend that you use a [UUID type of value.][1].
#
# If you don't provide this value, then Amazon Web Services generates
# a random one for you.
#
# If you retry the operation with the same `ClientToken`, but with
# different parameters, the retry fails with an
# `IdempotentParameterMismatch` error.
#
#
#
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/DeletePermissionRequest AWS API Documentation
#
class DeletePermissionRequest < Struct.new(
:permission_arn,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] return_value
# A boolean that indicates whether the delete operations succeeded.
# @return [Boolean]
#
# @!attribute [rw] client_token
# The idempotency identifier associated with this request. If you want
# to repeat the same operation in an idempotent manner then you must
# include this value in the `clientToken` request parameter of that
# later call. All other parameters must also have the same values that
# you used in the first call.
# @return [String]
#
# @!attribute [rw] permission_status
# This operation is performed asynchronously, and this response
# parameter indicates the current status.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/DeletePermissionResponse AWS API Documentation
#
class DeletePermissionResponse < Struct.new(
:return_value,
:client_token,
:permission_status)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] permission_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the permission with
# the version you want to delete.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] permission_version
# Specifies the version number to delete.
#
# You can't delete the default version for a customer managed
# permission.
#
# You can't delete a version if it's the only version of the
# permission. You must either first create another version, or delete
# the permission completely.
#
# You can't delete a version if it is attached to any resource
# shares. If the version is the default, you must first use
# SetDefaultPermissionVersion to set a different version as the
# default for the customer managed permission, and then use
# AssociateResourceSharePermission to update your resource shares to
# use the new default version.
# @return [Integer]
#
# @!attribute [rw] client_token
# Specifies a unique, case-sensitive identifier that you provide to
# ensure the idempotency of the request. This lets you safely retry
# the request without accidentally performing the same operation a
# second time. Passing the same value to a later call to an operation
# requires that you also pass the same value for all other parameters.
# We recommend that you use a [UUID type of value.][1].
#
# If you don't provide this value, then Amazon Web Services generates
# a random one for you.
#
# If you retry the operation with the same `ClientToken`, but with
# different parameters, the retry fails with an
# `IdempotentParameterMismatch` error.
#
#
#
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/DeletePermissionVersionRequest AWS API Documentation
#
class DeletePermissionVersionRequest < Struct.new(
:permission_arn,
:permission_version,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] return_value
# A boolean value that indicates whether the operation is successful.
# @return [Boolean]
#
# @!attribute [rw] client_token
# The idempotency identifier associated with this request. If you want
# to repeat the same operation in an idempotent manner then you must
# include this value in the `clientToken` request parameter of that
# later call. All other parameters must also have the same values that
# you used in the first call.
# @return [String]
#
# @!attribute [rw] permission_status
# This operation is performed asynchronously, and this response
# parameter indicates the current status.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/DeletePermissionVersionResponse AWS API Documentation
#
class DeletePermissionVersionResponse < Struct.new(
:return_value,
:client_token,
:permission_status)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the resource share
# to delete.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] client_token
# Specifies a unique, case-sensitive identifier that you provide to
# ensure the idempotency of the request. This lets you safely retry
# the request without accidentally performing the same operation a
# second time. Passing the same value to a later call to an operation
# requires that you also pass the same value for all other parameters.
# We recommend that you use a [UUID type of value.][1].
#
# If you don't provide this value, then Amazon Web Services generates
# a random one for you.
#
# If you retry the operation with the same `ClientToken`, but with
# different parameters, the retry fails with an
# `IdempotentParameterMismatch` error.
#
#
#
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/DeleteResourceShareRequest AWS API Documentation
#
class DeleteResourceShareRequest < Struct.new(
:resource_share_arn,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] return_value
# A return value of `true` indicates that the request succeeded. A
# value of `false` indicates that the request failed.
# @return [Boolean]
#
# @!attribute [rw] client_token
# The idempotency identifier associated with this request. If you want
# to repeat the same operation in an idempotent manner then you must
# include this value in the `clientToken` request parameter of that
# later call. All other parameters must also have the same values that
# you used in the first call.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/DeleteResourceShareResponse AWS API Documentation
#
class DeleteResourceShareResponse < Struct.new(
:return_value,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_arn
# The [Amazon Resource Name (ARN)][1] of the resource share that you
# want to remove the managed permission from.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] permission_arn
# The [Amazon Resource Name (ARN)][1] of the managed permission to
# disassociate from the resource share. Changes to permissions take
# effect immediately.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] client_token
# Specifies a unique, case-sensitive identifier that you provide to
# ensure the idempotency of the request. This lets you safely retry
# the request without accidentally performing the same operation a
# second time. Passing the same value to a later call to an operation
# requires that you also pass the same value for all other parameters.
# We recommend that you use a [UUID type of value.][1].
#
# If you don't provide this value, then Amazon Web Services generates
# a random one for you.
#
# If you retry the operation with the same `ClientToken`, but with
# different parameters, the retry fails with an
# `IdempotentParameterMismatch` error.
#
#
#
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/DisassociateResourceSharePermissionRequest AWS API Documentation
#
class DisassociateResourceSharePermissionRequest < Struct.new(
:resource_share_arn,
:permission_arn,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] return_value
# A return value of `true` indicates that the request succeeded. A
# value of `false` indicates that the request failed.
# @return [Boolean]
#
# @!attribute [rw] client_token
# The idempotency identifier associated with this request. If you want
# to repeat the same operation in an idempotent manner then you must
# include this value in the `clientToken` request parameter of that
# later call. All other parameters must also have the same values that
# you used in the first call.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/DisassociateResourceSharePermissionResponse AWS API Documentation
#
class DisassociateResourceSharePermissionResponse < Struct.new(
:return_value,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_arn
# Specifies [Amazon Resource Name (ARN)][1] of the resource share that
# you want to remove resources or principals from.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] resource_arns
# Specifies a list of [Amazon Resource Names (ARNs)][1] for one or
# more resources that you want to remove from the resource share.
# After the operation runs, these resources are no longer shared with
# principals associated with the resource share.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [Array]
#
# @!attribute [rw] principals
# Specifies a list of one or more principals that no longer are to
# have access to the resources in this resource share.
#
# You can include the following values:
#
# * An Amazon Web Services account ID, for example: `123456789012`
#
# * An [Amazon Resource Name (ARN)][1] of an organization in
# Organizations, for example:
# `organizations::123456789012:organization/o-exampleorgid`
#
# * An ARN of an organizational unit (OU) in Organizations, for
# example:
# `organizations::123456789012:ou/o-exampleorgid/ou-examplerootid-exampleouid123`
#
# * An ARN of an IAM role, for example:
# `iam::123456789012:role/rolename`
#
# * An ARN of an IAM user, for example:
# `iam::123456789012user/username`
#
# Not all resource types can be shared with IAM roles and users. For
# more information, see [Sharing with IAM roles and users][2] in the
# *Resource Access Manager User Guide*.
#
#
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# [2]: https://docs.aws.amazon.com/ram/latest/userguide/permissions.html#permissions-rbp-supported-resource-types
# @return [Array]
#
# @!attribute [rw] client_token
# Specifies a unique, case-sensitive identifier that you provide to
# ensure the idempotency of the request. This lets you safely retry
# the request without accidentally performing the same operation a
# second time. Passing the same value to a later call to an operation
# requires that you also pass the same value for all other parameters.
# We recommend that you use a [UUID type of value.][1].
#
# If you don't provide this value, then Amazon Web Services generates
# a random one for you.
#
# If you retry the operation with the same `ClientToken`, but with
# different parameters, the retry fails with an
# `IdempotentParameterMismatch` error.
#
#
#
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
# @return [String]
#
# @!attribute [rw] sources
# Specifies from which source accounts the service principal no longer
# has access to the resources in this resource share.
# @return [Array]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/DisassociateResourceShareRequest AWS API Documentation
#
class DisassociateResourceShareRequest < Struct.new(
:resource_share_arn,
:resource_arns,
:principals,
:client_token,
:sources)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_associations
# An array of objects with information about the updated associations
# for this resource share.
# @return [Array]
#
# @!attribute [rw] client_token
# The idempotency identifier associated with this request. If you want
# to repeat the same operation in an idempotent manner then you must
# include this value in the `clientToken` request parameter of that
# later call. All other parameters must also have the same values that
# you used in the first call.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/DisassociateResourceShareResponse AWS API Documentation
#
class DisassociateResourceShareResponse < Struct.new(
:resource_share_associations,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @api private
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/EnableSharingWithAwsOrganizationRequest AWS API Documentation
#
class EnableSharingWithAwsOrganizationRequest < Aws::EmptyStructure; end
# @!attribute [rw] return_value
# A return value of `true` indicates that the request succeeded. A
# value of `false` indicates that the request failed.
# @return [Boolean]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/EnableSharingWithAwsOrganizationResponse AWS API Documentation
#
class EnableSharingWithAwsOrganizationResponse < Struct.new(
:return_value)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] permission_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the permission
# whose contents you want to retrieve. To find the ARN for a
# permission, use either the ListPermissions operation or go to the
# [Permissions library][2] page in the RAM console and then choose the
# name of the permission. The ARN is displayed on the detail page.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# [2]: https://console.aws.amazon.com/ram/home#Permissions:
# @return [String]
#
# @!attribute [rw] permission_version
# Specifies the version number of the RAM permission to retrieve. If
# you don't specify this parameter, the operation retrieves the
# default version.
#
# To see the list of available versions, use ListPermissionVersions.
# @return [Integer]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/GetPermissionRequest AWS API Documentation
#
class GetPermissionRequest < Struct.new(
:permission_arn,
:permission_version)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] permission
# An object with details about the permission.
# @return [Types::ResourceSharePermissionDetail]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/GetPermissionResponse AWS API Documentation
#
class GetPermissionResponse < Struct.new(
:permission)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_arns
# Specifies the [Amazon Resource Names (ARNs)][1] of the resources
# whose policies you want to retrieve.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [Array]
#
# @!attribute [rw] principal
# Specifies the principal.
# @return [String]
#
# @!attribute [rw] next_token
# Specifies that you want to receive the next page of results. Valid
# only if you received a `NextToken` response in the previous request.
# If you did, it indicates that more output is available. Set this
# parameter to the value provided by the previous call's `NextToken`
# response to request the next page of results.
# @return [String]
#
# @!attribute [rw] max_results
# Specifies the total number of results that you want included on each
# page of the response. If you do not include this parameter, it
# defaults to a value that is specific to the operation. If additional
# items exist beyond the number you specify, the `NextToken` response
# element is returned with a value (not null). Include the specified
# value as the `NextToken` request parameter in the next call to the
# operation to get the next part of the results. Note that the service
# might return fewer results than the maximum even when there are more
# results available. You should check `NextToken` after every
# operation to ensure that you receive all of the results.
# @return [Integer]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/GetResourcePoliciesRequest AWS API Documentation
#
class GetResourcePoliciesRequest < Struct.new(
:resource_arns,
:principal,
:next_token,
:max_results)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] policies
# An array of resource policy documents in JSON format.
# @return [Array]
#
# @!attribute [rw] next_token
# If present, this value indicates that more output is available than
# is included in the current response. Use this value in the
# `NextToken` request parameter in a subsequent call to the operation
# to get the next part of the output. You should repeat this until the
# `NextToken` response element comes back as `null`. This indicates
# that this is the last page of results.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/GetResourcePoliciesResponse AWS API Documentation
#
class GetResourcePoliciesResponse < Struct.new(
:policies,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] association_type
# Specifies whether you want to retrieve the associations that involve
# a specified resource or principal.
#
# * `PRINCIPAL` – list the principals whose associations you want to
# see.
#
# * `RESOURCE` – list the resources whose associations you want to
# see.
# @return [String]
#
# @!attribute [rw] resource_share_arns
# Specifies a list of [Amazon Resource Names (ARNs)][1] of the
# resource share whose associations you want to retrieve.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [Array]
#
# @!attribute [rw] resource_arn
# Specifies the [Amazon Resource Name (ARN)][1] of a resource whose
# resource shares you want to retrieve.
#
# You cannot specify this parameter if the association type is
# `PRINCIPAL`.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] principal
# Specifies the ID of the principal whose resource shares you want to
# retrieve. This can be an Amazon Web Services account ID, an
# organization ID, an organizational unit ID, or the [Amazon Resource
# Name (ARN)][1] of an individual IAM role or user.
#
# You cannot specify this parameter if the association type is
# `RESOURCE`.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] association_status
# Specifies that you want to retrieve only associations that have this
# status.
# @return [String]
#
# @!attribute [rw] next_token
# Specifies that you want to receive the next page of results. Valid
# only if you received a `NextToken` response in the previous request.
# If you did, it indicates that more output is available. Set this
# parameter to the value provided by the previous call's `NextToken`
# response to request the next page of results.
# @return [String]
#
# @!attribute [rw] max_results
# Specifies the total number of results that you want included on each
# page of the response. If you do not include this parameter, it
# defaults to a value that is specific to the operation. If additional
# items exist beyond the number you specify, the `NextToken` response
# element is returned with a value (not null). Include the specified
# value as the `NextToken` request parameter in the next call to the
# operation to get the next part of the results. Note that the service
# might return fewer results than the maximum even when there are more
# results available. You should check `NextToken` after every
# operation to ensure that you receive all of the results.
# @return [Integer]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/GetResourceShareAssociationsRequest AWS API Documentation
#
class GetResourceShareAssociationsRequest < Struct.new(
:association_type,
:resource_share_arns,
:resource_arn,
:principal,
:association_status,
:next_token,
:max_results)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_associations
# An array of objects that contain the details about the associations.
# @return [Array]
#
# @!attribute [rw] next_token
# If present, this value indicates that more output is available than
# is included in the current response. Use this value in the
# `NextToken` request parameter in a subsequent call to the operation
# to get the next part of the output. You should repeat this until the
# `NextToken` response element comes back as `null`. This indicates
# that this is the last page of results.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/GetResourceShareAssociationsResponse AWS API Documentation
#
class GetResourceShareAssociationsResponse < Struct.new(
:resource_share_associations,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_invitation_arns
# Specifies the [Amazon Resource Names (ARNs)][1] of the resource
# share invitations you want information about.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [Array]
#
# @!attribute [rw] resource_share_arns
# Specifies that you want details about invitations only for the
# resource shares described by this list of [Amazon Resource Names
# (ARNs)][1]
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [Array]
#
# @!attribute [rw] next_token
# Specifies that you want to receive the next page of results. Valid
# only if you received a `NextToken` response in the previous request.
# If you did, it indicates that more output is available. Set this
# parameter to the value provided by the previous call's `NextToken`
# response to request the next page of results.
# @return [String]
#
# @!attribute [rw] max_results
# Specifies the total number of results that you want included on each
# page of the response. If you do not include this parameter, it
# defaults to a value that is specific to the operation. If additional
# items exist beyond the number you specify, the `NextToken` response
# element is returned with a value (not null). Include the specified
# value as the `NextToken` request parameter in the next call to the
# operation to get the next part of the results. Note that the service
# might return fewer results than the maximum even when there are more
# results available. You should check `NextToken` after every
# operation to ensure that you receive all of the results.
# @return [Integer]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/GetResourceShareInvitationsRequest AWS API Documentation
#
class GetResourceShareInvitationsRequest < Struct.new(
:resource_share_invitation_arns,
:resource_share_arns,
:next_token,
:max_results)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_invitations
# An array of objects that contain the details about the invitations.
# @return [Array]
#
# @!attribute [rw] next_token
# If present, this value indicates that more output is available than
# is included in the current response. Use this value in the
# `NextToken` request parameter in a subsequent call to the operation
# to get the next part of the output. You should repeat this until the
# `NextToken` response element comes back as `null`. This indicates
# that this is the last page of results.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/GetResourceShareInvitationsResponse AWS API Documentation
#
class GetResourceShareInvitationsResponse < Struct.new(
:resource_share_invitations,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_arns
# Specifies the [Amazon Resource Names (ARNs)][1] of individual
# resource shares that you want information about.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [Array]
#
# @!attribute [rw] resource_share_status
# Specifies that you want to retrieve details of only those resource
# shares that have this status.
# @return [String]
#
# @!attribute [rw] resource_owner
# Specifies that you want to retrieve details of only those resource
# shares that match the following:
#
# * SELF
– resource shares that your account
# shares with other accounts
#
# * OTHER-ACCOUNTS
– resource shares that other
# accounts share with your account
# @return [String]
#
# @!attribute [rw] name
# Specifies the name of an individual resource share that you want to
# retrieve details about.
# @return [String]
#
# @!attribute [rw] tag_filters
# Specifies that you want to retrieve details of only those resource
# shares that match the specified tag keys and values.
# @return [Array]
#
# @!attribute [rw] next_token
# Specifies that you want to receive the next page of results. Valid
# only if you received a `NextToken` response in the previous request.
# If you did, it indicates that more output is available. Set this
# parameter to the value provided by the previous call's `NextToken`
# response to request the next page of results.
# @return [String]
#
# @!attribute [rw] max_results
# Specifies the total number of results that you want included on each
# page of the response. If you do not include this parameter, it
# defaults to a value that is specific to the operation. If additional
# items exist beyond the number you specify, the `NextToken` response
# element is returned with a value (not null). Include the specified
# value as the `NextToken` request parameter in the next call to the
# operation to get the next part of the results. Note that the service
# might return fewer results than the maximum even when there are more
# results available. You should check `NextToken` after every
# operation to ensure that you receive all of the results.
# @return [Integer]
#
# @!attribute [rw] permission_arn
# Specifies that you want to retrieve details of only those resource
# shares that use the managed permission with this [Amazon Resource
# Name (ARN)][1].
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] permission_version
# Specifies that you want to retrieve details for only those resource
# shares that use the specified version of the managed permission.
# @return [Integer]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/GetResourceSharesRequest AWS API Documentation
#
class GetResourceSharesRequest < Struct.new(
:resource_share_arns,
:resource_share_status,
:resource_owner,
:name,
:tag_filters,
:next_token,
:max_results,
:permission_arn,
:permission_version)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_shares
# An array of objects that contain the information about the resource
# shares.
# @return [Array]
#
# @!attribute [rw] next_token
# If present, this value indicates that more output is available than
# is included in the current response. Use this value in the
# `NextToken` request parameter in a subsequent call to the operation
# to get the next part of the output. You should repeat this until the
# `NextToken` response element comes back as `null`. This indicates
# that this is the last page of results.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/GetResourceSharesResponse AWS API Documentation
#
class GetResourceSharesResponse < Struct.new(
:resource_shares,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the client token input parameter matched
# one that was used with a previous call to the operation, but at least
# one of the other input parameters is different from the previous call.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/IdempotentParameterMismatchException AWS API Documentation
#
class IdempotentParameterMismatchException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the specified client token isn't valid.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/InvalidClientTokenException AWS API Documentation
#
class InvalidClientTokenException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the specified value for `MaxResults`
# isn't valid.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/InvalidMaxResultsException AWS API Documentation
#
class InvalidMaxResultsException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the specified value for `NextToken`
# isn't valid. You must specify a value you received in the `NextToken`
# response of a previous call to this operation.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/InvalidNextTokenException AWS API Documentation
#
class InvalidNextTokenException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because a parameter you specified isn't valid.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/InvalidParameterException AWS API Documentation
#
class InvalidParameterException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because a policy you specified isn't valid.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/InvalidPolicyException AWS API Documentation
#
class InvalidPolicyException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the specified resource type isn't valid.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/InvalidResourceTypeException AWS API Documentation
#
class InvalidResourceTypeException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the requested operation isn't valid for
# the resource share in its current state.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/InvalidStateTransitionException AWS API Documentation
#
class InvalidStateTransitionException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_invitation_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the invitation. You
# can use GetResourceShareInvitations to find the ARN of the
# invitation.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] next_token
# Specifies that you want to receive the next page of results. Valid
# only if you received a `NextToken` response in the previous request.
# If you did, it indicates that more output is available. Set this
# parameter to the value provided by the previous call's `NextToken`
# response to request the next page of results.
# @return [String]
#
# @!attribute [rw] max_results
# Specifies the total number of results that you want included on each
# page of the response. If you do not include this parameter, it
# defaults to a value that is specific to the operation. If additional
# items exist beyond the number you specify, the `NextToken` response
# element is returned with a value (not null). Include the specified
# value as the `NextToken` request parameter in the next call to the
# operation to get the next part of the results. Note that the service
# might return fewer results than the maximum even when there are more
# results available. You should check `NextToken` after every
# operation to ensure that you receive all of the results.
# @return [Integer]
#
# @!attribute [rw] resource_region_scope
# Specifies that you want the results to include only resources that
# have the specified scope.
#
# * `ALL` – the results include both global and regional resources or
# resource types.
#
# * `GLOBAL` – the results include only global resources or resource
# types.
#
# * `REGIONAL` – the results include only regional resources or
# resource types.
#
# The default value is `ALL`.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListPendingInvitationResourcesRequest AWS API Documentation
#
class ListPendingInvitationResourcesRequest < Struct.new(
:resource_share_invitation_arn,
:next_token,
:max_results,
:resource_region_scope)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resources
# An array of objects that contain the information about the resources
# included the specified resource share.
# @return [Array]
#
# @!attribute [rw] next_token
# If present, this value indicates that more output is available than
# is included in the current response. Use this value in the
# `NextToken` request parameter in a subsequent call to the operation
# to get the next part of the output. You should repeat this until the
# `NextToken` response element comes back as `null`. This indicates
# that this is the last page of results.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListPendingInvitationResourcesResponse AWS API Documentation
#
class ListPendingInvitationResourcesResponse < Struct.new(
:resources,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] permission_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the managed
# permission.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] permission_version
# Specifies that you want to list only those associations with
# resource shares that use this version of the managed permission. If
# you don't provide a value for this parameter, then the operation
# returns information about associations with resource shares that use
# any version of the managed permission.
# @return [Integer]
#
# @!attribute [rw] association_status
# Specifies that you want to list only those associations with
# resource shares that match this status.
# @return [String]
#
# @!attribute [rw] resource_type
# Specifies that you want to list only those associations with
# resource shares that include at least one resource of this resource
# type.
# @return [String]
#
# @!attribute [rw] feature_set
# Specifies that you want to list only those associations with
# resource shares that have a `featureSet` with this value.
# @return [String]
#
# @!attribute [rw] default_version
# When `true`, specifies that you want to list only those associations
# with resource shares that use the default version of the specified
# managed permission.
#
# When `false` (the default value), lists associations with resource
# shares that use any version of the specified managed permission.
# @return [Boolean]
#
# @!attribute [rw] next_token
# Specifies that you want to receive the next page of results. Valid
# only if you received a `NextToken` response in the previous request.
# If you did, it indicates that more output is available. Set this
# parameter to the value provided by the previous call's `NextToken`
# response to request the next page of results.
# @return [String]
#
# @!attribute [rw] max_results
# Specifies the total number of results that you want included on each
# page of the response. If you do not include this parameter, it
# defaults to a value that is specific to the operation. If additional
# items exist beyond the number you specify, the `NextToken` response
# element is returned with a value (not null). Include the specified
# value as the `NextToken` request parameter in the next call to the
# operation to get the next part of the results. Note that the service
# might return fewer results than the maximum even when there are more
# results available. You should check `NextToken` after every
# operation to ensure that you receive all of the results.
# @return [Integer]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListPermissionAssociationsRequest AWS API Documentation
#
class ListPermissionAssociationsRequest < Struct.new(
:permission_arn,
:permission_version,
:association_status,
:resource_type,
:feature_set,
:default_version,
:next_token,
:max_results)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] permissions
# A structure with information about this customer managed permission.
# @return [Array]
#
# @!attribute [rw] next_token
# If present, this value indicates that more output is available than
# is included in the current response. Use this value in the
# `NextToken` request parameter in a subsequent call to the operation
# to get the next part of the output. You should repeat this until the
# `NextToken` response element comes back as `null`. This indicates
# that this is the last page of results.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListPermissionAssociationsResponse AWS API Documentation
#
class ListPermissionAssociationsResponse < Struct.new(
:permissions,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] permission_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the RAM permission
# whose versions you want to list. You can use the `permissionVersion`
# parameter on the AssociateResourceSharePermission operation to
# specify a non-default version to attach.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] next_token
# Specifies that you want to receive the next page of results. Valid
# only if you received a `NextToken` response in the previous request.
# If you did, it indicates that more output is available. Set this
# parameter to the value provided by the previous call's `NextToken`
# response to request the next page of results.
# @return [String]
#
# @!attribute [rw] max_results
# Specifies the total number of results that you want included on each
# page of the response. If you do not include this parameter, it
# defaults to a value that is specific to the operation. If additional
# items exist beyond the number you specify, the `NextToken` response
# element is returned with a value (not null). Include the specified
# value as the `NextToken` request parameter in the next call to the
# operation to get the next part of the results. Note that the service
# might return fewer results than the maximum even when there are more
# results available. You should check `NextToken` after every
# operation to ensure that you receive all of the results.
# @return [Integer]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListPermissionVersionsRequest AWS API Documentation
#
class ListPermissionVersionsRequest < Struct.new(
:permission_arn,
:next_token,
:max_results)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] permissions
# An array of objects that contain details for each of the available
# versions.
# @return [Array]
#
# @!attribute [rw] next_token
# If present, this value indicates that more output is available than
# is included in the current response. Use this value in the
# `NextToken` request parameter in a subsequent call to the operation
# to get the next part of the output. You should repeat this until the
# `NextToken` response element comes back as `null`. This indicates
# that this is the last page of results.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListPermissionVersionsResponse AWS API Documentation
#
class ListPermissionVersionsResponse < Struct.new(
:permissions,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_type
# Specifies that you want to list only those permissions that apply to
# the specified resource type. This parameter is not case sensitive.
#
# For example, to list only permissions that apply to Amazon EC2
# subnets, specify `ec2:subnet`. You can use the ListResourceTypes
# operation to get the specific string required.
# @return [String]
#
# @!attribute [rw] next_token
# Specifies that you want to receive the next page of results. Valid
# only if you received a `NextToken` response in the previous request.
# If you did, it indicates that more output is available. Set this
# parameter to the value provided by the previous call's `NextToken`
# response to request the next page of results.
# @return [String]
#
# @!attribute [rw] max_results
# Specifies the total number of results that you want included on each
# page of the response. If you do not include this parameter, it
# defaults to a value that is specific to the operation. If additional
# items exist beyond the number you specify, the `NextToken` response
# element is returned with a value (not null). Include the specified
# value as the `NextToken` request parameter in the next call to the
# operation to get the next part of the results. Note that the service
# might return fewer results than the maximum even when there are more
# results available. You should check `NextToken` after every
# operation to ensure that you receive all of the results.
# @return [Integer]
#
# @!attribute [rw] permission_type
# Specifies that you want to list only permissions of this type:
#
# * `AWS` – returns only Amazon Web Services managed permissions.
#
# * `LOCAL` – returns only customer managed permissions
#
# * `ALL` – returns both Amazon Web Services managed permissions and
# customer managed permissions.
#
# If you don't specify this parameter, the default is `All`.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListPermissionsRequest AWS API Documentation
#
class ListPermissionsRequest < Struct.new(
:resource_type,
:next_token,
:max_results,
:permission_type)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] permissions
# An array of objects with information about the permissions.
# @return [Array]
#
# @!attribute [rw] next_token
# If present, this value indicates that more output is available than
# is included in the current response. Use this value in the
# `NextToken` request parameter in a subsequent call to the operation
# to get the next part of the output. You should repeat this until the
# `NextToken` response element comes back as `null`. This indicates
# that this is the last page of results.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListPermissionsResponse AWS API Documentation
#
class ListPermissionsResponse < Struct.new(
:permissions,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_owner
# Specifies that you want to list information for only resource shares
# that match the following:
#
# * SELF
– principals that your account is
# sharing resources with
#
# * OTHER-ACCOUNTS
– principals that are sharing
# resources with your account
# @return [String]
#
# @!attribute [rw] resource_arn
# Specifies that you want to list principal information for the
# resource share with the specified [Amazon Resource Name (ARN)][1].
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] principals
# Specifies that you want to list information for only the listed
# principals.
#
# You can include the following values:
#
# * An Amazon Web Services account ID, for example: `123456789012`
#
# * An [Amazon Resource Name (ARN)][1] of an organization in
# Organizations, for example:
# `organizations::123456789012:organization/o-exampleorgid`
#
# * An ARN of an organizational unit (OU) in Organizations, for
# example:
# `organizations::123456789012:ou/o-exampleorgid/ou-examplerootid-exampleouid123`
#
# * An ARN of an IAM role, for example:
# `iam::123456789012:role/rolename`
#
# * An ARN of an IAM user, for example:
# `iam::123456789012user/username`
#
# Not all resource types can be shared with IAM roles and users. For
# more information, see [Sharing with IAM roles and users][2] in the
# *Resource Access Manager User Guide*.
#
#
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# [2]: https://docs.aws.amazon.com/ram/latest/userguide/permissions.html#permissions-rbp-supported-resource-types
# @return [Array]
#
# @!attribute [rw] resource_type
# Specifies that you want to list information for only principals
# associated with resource shares that include the specified resource
# type.
#
# For a list of valid values, query the ListResourceTypes operation.
# @return [String]
#
# @!attribute [rw] resource_share_arns
# Specifies that you want to list information for only principals
# associated with the resource shares specified by a list the [Amazon
# Resource Names (ARNs)][1].
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [Array]
#
# @!attribute [rw] next_token
# Specifies that you want to receive the next page of results. Valid
# only if you received a `NextToken` response in the previous request.
# If you did, it indicates that more output is available. Set this
# parameter to the value provided by the previous call's `NextToken`
# response to request the next page of results.
# @return [String]
#
# @!attribute [rw] max_results
# Specifies the total number of results that you want included on each
# page of the response. If you do not include this parameter, it
# defaults to a value that is specific to the operation. If additional
# items exist beyond the number you specify, the `NextToken` response
# element is returned with a value (not null). Include the specified
# value as the `NextToken` request parameter in the next call to the
# operation to get the next part of the results. Note that the service
# might return fewer results than the maximum even when there are more
# results available. You should check `NextToken` after every
# operation to ensure that you receive all of the results.
# @return [Integer]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListPrincipalsRequest AWS API Documentation
#
class ListPrincipalsRequest < Struct.new(
:resource_owner,
:resource_arn,
:principals,
:resource_type,
:resource_share_arns,
:next_token,
:max_results)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] principals
# An array of objects that contain the details about the principals.
# @return [Array]
#
# @!attribute [rw] next_token
# If present, this value indicates that more output is available than
# is included in the current response. Use this value in the
# `NextToken` request parameter in a subsequent call to the operation
# to get the next part of the output. You should repeat this until the
# `NextToken` response element comes back as `null`. This indicates
# that this is the last page of results.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListPrincipalsResponse AWS API Documentation
#
class ListPrincipalsResponse < Struct.new(
:principals,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] work_ids
# A list of IDs. These values come from the `id`field of the
# `replacePermissionAssociationsWork`structure returned by the
# ReplacePermissionAssociations operation.
# @return [Array]
#
# @!attribute [rw] status
# Specifies that you want to see only the details about requests with
# a status that matches this value.
# @return [String]
#
# @!attribute [rw] next_token
# Specifies that you want to receive the next page of results. Valid
# only if you received a `NextToken` response in the previous request.
# If you did, it indicates that more output is available. Set this
# parameter to the value provided by the previous call's `NextToken`
# response to request the next page of results.
# @return [String]
#
# @!attribute [rw] max_results
# Specifies the total number of results that you want included on each
# page of the response. If you do not include this parameter, it
# defaults to a value that is specific to the operation. If additional
# items exist beyond the number you specify, the `NextToken` response
# element is returned with a value (not null). Include the specified
# value as the `NextToken` request parameter in the next call to the
# operation to get the next part of the results. Note that the service
# might return fewer results than the maximum even when there are more
# results available. You should check `NextToken` after every
# operation to ensure that you receive all of the results.
# @return [Integer]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListReplacePermissionAssociationsWorkRequest AWS API Documentation
#
class ListReplacePermissionAssociationsWorkRequest < Struct.new(
:work_ids,
:status,
:next_token,
:max_results)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] replace_permission_associations_works
# An array of data structures that provide details of the matching
# work IDs.
# @return [Array]
#
# @!attribute [rw] next_token
# If present, this value indicates that more output is available than
# is included in the current response. Use this value in the
# `NextToken` request parameter in a subsequent call to the operation
# to get the next part of the output. You should repeat this until the
# `NextToken` response element comes back as `null`. This indicates
# that this is the last page of results.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListReplacePermissionAssociationsWorkResponse AWS API Documentation
#
class ListReplacePermissionAssociationsWorkResponse < Struct.new(
:replace_permission_associations_works,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the resource share
# for which you want to retrieve the associated permissions.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] next_token
# Specifies that you want to receive the next page of results. Valid
# only if you received a `NextToken` response in the previous request.
# If you did, it indicates that more output is available. Set this
# parameter to the value provided by the previous call's `NextToken`
# response to request the next page of results.
# @return [String]
#
# @!attribute [rw] max_results
# Specifies the total number of results that you want included on each
# page of the response. If you do not include this parameter, it
# defaults to a value that is specific to the operation. If additional
# items exist beyond the number you specify, the `NextToken` response
# element is returned with a value (not null). Include the specified
# value as the `NextToken` request parameter in the next call to the
# operation to get the next part of the results. Note that the service
# might return fewer results than the maximum even when there are more
# results available. You should check `NextToken` after every
# operation to ensure that you receive all of the results.
# @return [Integer]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListResourceSharePermissionsRequest AWS API Documentation
#
class ListResourceSharePermissionsRequest < Struct.new(
:resource_share_arn,
:next_token,
:max_results)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] permissions
# An array of objects that describe the permissions associated with
# the resource share.
# @return [Array]
#
# @!attribute [rw] next_token
# If present, this value indicates that more output is available than
# is included in the current response. Use this value in the
# `NextToken` request parameter in a subsequent call to the operation
# to get the next part of the output. You should repeat this until the
# `NextToken` response element comes back as `null`. This indicates
# that this is the last page of results.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListResourceSharePermissionsResponse AWS API Documentation
#
class ListResourceSharePermissionsResponse < Struct.new(
:permissions,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] next_token
# Specifies that you want to receive the next page of results. Valid
# only if you received a `NextToken` response in the previous request.
# If you did, it indicates that more output is available. Set this
# parameter to the value provided by the previous call's `NextToken`
# response to request the next page of results.
# @return [String]
#
# @!attribute [rw] max_results
# Specifies the total number of results that you want included on each
# page of the response. If you do not include this parameter, it
# defaults to a value that is specific to the operation. If additional
# items exist beyond the number you specify, the `NextToken` response
# element is returned with a value (not null). Include the specified
# value as the `NextToken` request parameter in the next call to the
# operation to get the next part of the results. Note that the service
# might return fewer results than the maximum even when there are more
# results available. You should check `NextToken` after every
# operation to ensure that you receive all of the results.
# @return [Integer]
#
# @!attribute [rw] resource_region_scope
# Specifies that you want the results to include only resources that
# have the specified scope.
#
# * `ALL` – the results include both global and regional resources or
# resource types.
#
# * `GLOBAL` – the results include only global resources or resource
# types.
#
# * `REGIONAL` – the results include only regional resources or
# resource types.
#
# The default value is `ALL`.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListResourceTypesRequest AWS API Documentation
#
class ListResourceTypesRequest < Struct.new(
:next_token,
:max_results,
:resource_region_scope)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_types
# An array of objects that contain information about the resource
# types that can be shared using RAM.
# @return [Array]
#
# @!attribute [rw] next_token
# If present, this value indicates that more output is available than
# is included in the current response. Use this value in the
# `NextToken` request parameter in a subsequent call to the operation
# to get the next part of the output. You should repeat this until the
# `NextToken` response element comes back as `null`. This indicates
# that this is the last page of results.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListResourceTypesResponse AWS API Documentation
#
class ListResourceTypesResponse < Struct.new(
:resource_types,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_owner
# Specifies that you want to list only the resource shares that match
# the following:
#
# * SELF
– resources that your account shares
# with other accounts
#
# * OTHER-ACCOUNTS
– resources that other
# accounts share with your account
# @return [String]
#
# @!attribute [rw] principal
# Specifies that you want to list only the resource shares that are
# associated with the specified principal.
# @return [String]
#
# @!attribute [rw] resource_type
# Specifies that you want to list only the resource shares that
# include resources of the specified resource type.
#
# For valid values, query the ListResourceTypes operation.
# @return [String]
#
# @!attribute [rw] resource_arns
# Specifies that you want to list only the resource shares that
# include resources with the specified [Amazon Resource Names
# (ARNs)][1].
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [Array]
#
# @!attribute [rw] resource_share_arns
# Specifies that you want to list only resources in the resource
# shares identified by the specified [Amazon Resource Names
# (ARNs)][1].
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [Array]
#
# @!attribute [rw] next_token
# Specifies that you want to receive the next page of results. Valid
# only if you received a `NextToken` response in the previous request.
# If you did, it indicates that more output is available. Set this
# parameter to the value provided by the previous call's `NextToken`
# response to request the next page of results.
# @return [String]
#
# @!attribute [rw] max_results
# Specifies the total number of results that you want included on each
# page of the response. If you do not include this parameter, it
# defaults to a value that is specific to the operation. If additional
# items exist beyond the number you specify, the `NextToken` response
# element is returned with a value (not null). Include the specified
# value as the `NextToken` request parameter in the next call to the
# operation to get the next part of the results. Note that the service
# might return fewer results than the maximum even when there are more
# results available. You should check `NextToken` after every
# operation to ensure that you receive all of the results.
# @return [Integer]
#
# @!attribute [rw] resource_region_scope
# Specifies that you want the results to include only resources that
# have the specified scope.
#
# * `ALL` – the results include both global and regional resources or
# resource types.
#
# * `GLOBAL` – the results include only global resources or resource
# types.
#
# * `REGIONAL` – the results include only regional resources or
# resource types.
#
# The default value is `ALL`.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListResourcesRequest AWS API Documentation
#
class ListResourcesRequest < Struct.new(
:resource_owner,
:principal,
:resource_type,
:resource_arns,
:resource_share_arns,
:next_token,
:max_results,
:resource_region_scope)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resources
# An array of objects that contain information about the resources.
# @return [Array]
#
# @!attribute [rw] next_token
# If present, this value indicates that more output is available than
# is included in the current response. Use this value in the
# `NextToken` request parameter in a subsequent call to the operation
# to get the next part of the output. You should repeat this until the
# `NextToken` response element comes back as `null`. This indicates
# that this is the last page of results.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListResourcesResponse AWS API Documentation
#
class ListResourcesResponse < Struct.new(
:resources,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the specified [Amazon Resource Name
# (ARN)][1] has a format that isn't valid.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/MalformedArnException AWS API Documentation
#
class MalformedArnException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the policy template that you provided
# isn't valid.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/MalformedPolicyTemplateException AWS API Documentation
#
class MalformedPolicyTemplateException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because a required input parameter is missing.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/MissingRequiredParameterException AWS API Documentation
#
class MissingRequiredParameterException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the requested operation isn't permitted.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/OperationNotPermittedException AWS API Documentation
#
class OperationNotPermittedException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because a permission with the specified name
# already exists in the requested Amazon Web Services Region. Choose a
# different name.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/PermissionAlreadyExistsException AWS API Documentation
#
class PermissionAlreadyExistsException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because it would exceed the maximum number of
# permissions you can create in each Amazon Web Services Region. To view
# the limits for your Amazon Web Services account, see the [RAM page in
# the Service Quotas console][1].
#
#
#
# [1]: https://console.aws.amazon.com/servicequotas/home/services/ram/quotas
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/PermissionLimitExceededException AWS API Documentation
#
class PermissionLimitExceededException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because it would exceed the limit for the number
# of versions you can have for a permission. To view the limits for your
# Amazon Web Services account, see the [RAM page in the Service Quotas
# console][1].
#
#
#
# [1]: https://console.aws.amazon.com/servicequotas/home/services/ram/quotas
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/PermissionVersionsLimitExceededException AWS API Documentation
#
class PermissionVersionsLimitExceededException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# Describes a principal for use with Resource Access Manager.
#
# @!attribute [rw] id
# The ID of the principal that can be associated with a resource
# share.
# @return [String]
#
# @!attribute [rw] resource_share_arn
# The [Amazon Resource Name (ARN)][1] of a resource share the
# principal is associated with.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] creation_time
# The date and time when the principal was associated with the
# resource share.
# @return [Time]
#
# @!attribute [rw] last_updated_time
# The date and time when the association between the resource share
# and the principal was last updated.
# @return [Time]
#
# @!attribute [rw] external
# Indicates the relationship between the Amazon Web Services account
# the principal belongs to and the account that owns the resource
# share:
#
# * `True` – The two accounts belong to same organization.
#
# * `False` – The two accounts do not belong to the same organization.
# @return [Boolean]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/Principal AWS API Documentation
#
class Principal < Struct.new(
:id,
:resource_share_arn,
:creation_time,
:last_updated_time,
:external)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] permission_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the
# `CREATED_FROM_POLICY` permission that you want to promote. You can
# get this [Amazon Resource Name (ARN)][1] by calling the
# ListResourceSharePermissions operation.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] name
# Specifies a name for the promoted customer managed permission.
# @return [String]
#
# @!attribute [rw] client_token
# Specifies a unique, case-sensitive identifier that you provide to
# ensure the idempotency of the request. This lets you safely retry
# the request without accidentally performing the same operation a
# second time. Passing the same value to a later call to an operation
# requires that you also pass the same value for all other parameters.
# We recommend that you use a [UUID type of value.][1].
#
# If you don't provide this value, then Amazon Web Services generates
# a random one for you.
#
# If you retry the operation with the same `ClientToken`, but with
# different parameters, the retry fails with an
# `IdempotentParameterMismatch` error.
#
#
#
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/PromotePermissionCreatedFromPolicyRequest AWS API Documentation
#
class PromotePermissionCreatedFromPolicyRequest < Struct.new(
:permission_arn,
:name,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] permission
# Information about an RAM permission.
# @return [Types::ResourceSharePermissionSummary]
#
# @!attribute [rw] client_token
# The idempotency identifier associated with this request. If you want
# to repeat the same operation in an idempotent manner then you must
# include this value in the `clientToken` request parameter of that
# later call. All other parameters must also have the same values that
# you used in the first call.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/PromotePermissionCreatedFromPolicyResponse AWS API Documentation
#
class PromotePermissionCreatedFromPolicyResponse < Struct.new(
:permission,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the resource share
# to promote.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/PromoteResourceShareCreatedFromPolicyRequest AWS API Documentation
#
class PromoteResourceShareCreatedFromPolicyRequest < Struct.new(
:resource_share_arn)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] return_value
# A return value of `true` indicates that the request succeeded. A
# value of `false` indicates that the request failed.
# @return [Boolean]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/PromoteResourceShareCreatedFromPolicyResponse AWS API Documentation
#
class PromoteResourceShareCreatedFromPolicyResponse < Struct.new(
:return_value)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_invitation_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the invitation that
# you want to reject.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] client_token
# Specifies a unique, case-sensitive identifier that you provide to
# ensure the idempotency of the request. This lets you safely retry
# the request without accidentally performing the same operation a
# second time. Passing the same value to a later call to an operation
# requires that you also pass the same value for all other parameters.
# We recommend that you use a [UUID type of value.][1].
#
# If you don't provide this value, then Amazon Web Services generates
# a random one for you.
#
# If you retry the operation with the same `ClientToken`, but with
# different parameters, the retry fails with an
# `IdempotentParameterMismatch` error.
#
#
#
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/RejectResourceShareInvitationRequest AWS API Documentation
#
class RejectResourceShareInvitationRequest < Struct.new(
:resource_share_invitation_arn,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_invitation
# An object that contains the details about the rejected invitation.
# @return [Types::ResourceShareInvitation]
#
# @!attribute [rw] client_token
# The idempotency identifier associated with this request. If you want
# to repeat the same operation in an idempotent manner then you must
# include this value in the `clientToken` request parameter of that
# later call. All other parameters must also have the same values that
# you used in the first call.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/RejectResourceShareInvitationResponse AWS API Documentation
#
class RejectResourceShareInvitationResponse < Struct.new(
:resource_share_invitation,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] from_permission_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the managed
# permission that you want to replace.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] from_permission_version
# Specifies that you want to updated the permissions for only those
# resource shares that use the specified version of the managed
# permission.
# @return [Integer]
#
# @!attribute [rw] to_permission_arn
# Specifies the ARN of the managed permission that you want to
# associate with resource shares in place of the one specified by
# `fromPerssionArn` and `fromPermissionVersion`.
#
# The operation always associates the version that is currently the
# default for the specified managed permission.
# @return [String]
#
# @!attribute [rw] client_token
# Specifies a unique, case-sensitive identifier that you provide to
# ensure the idempotency of the request. This lets you safely retry
# the request without accidentally performing the same operation a
# second time. Passing the same value to a later call to an operation
# requires that you also pass the same value for all other parameters.
# We recommend that you use a [UUID type of value.][1].
#
# If you don't provide this value, then Amazon Web Services generates
# a random one for you.
#
# If you retry the operation with the same `ClientToken`, but with
# different parameters, the retry fails with an
# `IdempotentParameterMismatch` error.
#
#
#
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ReplacePermissionAssociationsRequest AWS API Documentation
#
class ReplacePermissionAssociationsRequest < Struct.new(
:from_permission_arn,
:from_permission_version,
:to_permission_arn,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] replace_permission_associations_work
# Specifies a data structure that you can use to track the
# asynchronous tasks that RAM performs to complete this operation. You
# can use the ListReplacePermissionAssociationsWork operation and pass
# the `id` value returned in this structure.
# @return [Types::ReplacePermissionAssociationsWork]
#
# @!attribute [rw] client_token
# The idempotency identifier associated with this request. If you want
# to repeat the same operation in an idempotent manner then you must
# include this value in the `clientToken` request parameter of that
# later call. All other parameters must also have the same values that
# you used in the first call.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ReplacePermissionAssociationsResponse AWS API Documentation
#
class ReplacePermissionAssociationsResponse < Struct.new(
:replace_permission_associations_work,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# A structure that represents the background work that RAM performs when
# you invoke the ReplacePermissionAssociations operation.
#
# @!attribute [rw] id
# The unique identifier for the background task associated with one
# ReplacePermissionAssociations request.
# @return [String]
#
# @!attribute [rw] from_permission_arn
# The [Amazon Resource Name (ARN)][1] of the managed permission that
# this background task is replacing.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] from_permission_version
# The version of the managed permission that this background task is
# replacing.
# @return [String]
#
# @!attribute [rw] to_permission_arn
# The ARN of the managed permission that this background task is
# associating with the resource shares in place of the managed
# permission and version specified in `fromPermissionArn` and
# `fromPermissionVersion`.
# @return [String]
#
# @!attribute [rw] to_permission_version
# The version of the managed permission that this background task is
# associating with the resource shares. This is always the version
# that is currently the default for this managed permission.
# @return [String]
#
# @!attribute [rw] status
# Specifies the current status of the background tasks for the
# specified ID. The output is one of the following strings:
#
# * `IN_PROGRESS`
#
# * `COMPLETED`
#
# * `FAILED`
# @return [String]
#
# @!attribute [rw] status_message
# Specifies the reason for a `FAILED` status. This field is present
# only when there `status` is `FAILED`.
# @return [String]
#
# @!attribute [rw] creation_time
# The date and time when this asynchronous background task was
# created.
# @return [Time]
#
# @!attribute [rw] last_updated_time
# The date and time when the status of this background task was last
# updated.
# @return [Time]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ReplacePermissionAssociationsWork AWS API Documentation
#
class ReplacePermissionAssociationsWork < Struct.new(
:id,
:from_permission_arn,
:from_permission_version,
:to_permission_arn,
:to_permission_version,
:status,
:status_message,
:creation_time,
:last_updated_time)
SENSITIVE = []
include Aws::Structure
end
# Describes a resource associated with a resource share in RAM.
#
# @!attribute [rw] arn
# The [Amazon Resource Name (ARN)][1] of the resource.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] type
# The resource type. This takes the form of:
# `service-code`:`resource-code`, and is case-insensitive. For
# example, an Amazon EC2 Subnet would be represented by the string
# `ec2:subnet`.
# @return [String]
#
# @!attribute [rw] resource_share_arn
# The [Amazon Resource Name (ARN)][1] of the resource share this
# resource is associated with.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] resource_group_arn
# The [Amazon Resource Name (ARN)][1] of the resource group. This
# value is available only if the resource is part of a resource group.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] status
# The current status of the resource.
# @return [String]
#
# @!attribute [rw] status_message
# A message about the status of the resource.
# @return [String]
#
# @!attribute [rw] creation_time
# The date and time when the resource was associated with the resource
# share.
# @return [Time]
#
# @!attribute [rw] last_updated_time
# The date an time when the association between the resource and the
# resource share was last updated.
# @return [Time]
#
# @!attribute [rw] resource_region_scope
# Specifies the scope of visibility of this resource:
#
# * **REGIONAL** – The resource can be accessed only by using requests
# that target the Amazon Web Services Region in which the resource
# exists.
#
# * **GLOBAL** – The resource can be accessed from any Amazon Web
# Services Region.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/Resource AWS API Documentation
#
class Resource < Struct.new(
:arn,
:type,
:resource_share_arn,
:resource_group_arn,
:status,
:status_message,
:creation_time,
:last_updated_time,
:resource_region_scope)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the specified [Amazon Resource Name
# (ARN)][1] was not found.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ResourceArnNotFoundException AWS API Documentation
#
class ResourceArnNotFoundException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# Describes a resource share in RAM.
#
# @!attribute [rw] resource_share_arn
# The [Amazon Resource Name (ARN)][1] of the resource share
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] name
# The name of the resource share.
# @return [String]
#
# @!attribute [rw] owning_account_id
# The ID of the Amazon Web Services account that owns the resource
# share.
# @return [String]
#
# @!attribute [rw] allow_external_principals
# Indicates whether principals outside your organization in
# Organizations can be associated with a resource share.
#
# * `True` – the resource share can be shared with any Amazon Web
# Services account.
#
# * `False` – the resource share can be shared with only accounts in
# the same organization as the account that owns the resource share.
# @return [Boolean]
#
# @!attribute [rw] status
# The current status of the resource share.
# @return [String]
#
# @!attribute [rw] status_message
# A message about the status of the resource share.
# @return [String]
#
# @!attribute [rw] tags
# The tag key and value pairs attached to the resource share.
# @return [Array]
#
# @!attribute [rw] creation_time
# The date and time when the resource share was created.
# @return [Time]
#
# @!attribute [rw] last_updated_time
# The date and time when the resource share was last updated.
# @return [Time]
#
# @!attribute [rw] feature_set
# Indicates what features are available for this resource share. This
# parameter can have one of the following values:
#
# * **STANDARD** – A resource share that supports all functionality.
# These resource shares are visible to all principals you share the
# resource share with. You can modify these resource shares in RAM
# using the console or APIs. This resource share might have been
# created by RAM, or it might have been **CREATED\_FROM\_POLICY**
# and then promoted.
#
# * **CREATED\_FROM\_POLICY** – The customer manually shared a
# resource by attaching a resource-based policy. That policy did not
# match any existing managed permissions, so RAM created this
# customer managed permission automatically on the customer's
# behalf based on the attached policy document. This type of
# resource share is visible only to the Amazon Web Services account
# that created it. You can't modify it in RAM unless you promote
# it. For more information, see
# PromoteResourceShareCreatedFromPolicy.
#
# * **PROMOTING\_TO\_STANDARD** – This resource share was originally
# `CREATED_FROM_POLICY`, but the customer ran the
# PromoteResourceShareCreatedFromPolicy and that operation is still
# in progress. This value changes to `STANDARD` when complete.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ResourceShare AWS API Documentation
#
class ResourceShare < Struct.new(
:resource_share_arn,
:name,
:owning_account_id,
:allow_external_principals,
:status,
:status_message,
:tags,
:creation_time,
:last_updated_time,
:feature_set)
SENSITIVE = []
include Aws::Structure
end
# Describes an association between a resource share and either a
# principal or a resource.
#
# @!attribute [rw] resource_share_arn
# The [Amazon Resource Name (ARN)][1] of the resource share.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] resource_share_name
# The name of the resource share.
# @return [String]
#
# @!attribute [rw] associated_entity
# The associated entity. This can be either of the following:
#
# * For a resource association, this is the [Amazon Resource Name
# (ARN)][1] of the resource.
#
# * For principal associations, this is one of the following:
#
# * The ID of an Amazon Web Services account
#
# * The [Amazon Resource Name (ARN)][1] of an organization in
# Organizations
#
# * The ARN of an organizational unit (OU) in Organizations
#
# * The ARN of an IAM role
#
# * The ARN of an IAM user
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] association_type
# The type of entity included in this association.
# @return [String]
#
# @!attribute [rw] status
# The current status of the association.
# @return [String]
#
# @!attribute [rw] status_message
# A message about the status of the association.
# @return [String]
#
# @!attribute [rw] creation_time
# The date and time when the association was created.
# @return [Time]
#
# @!attribute [rw] last_updated_time
# The date and time when the association was last updated.
# @return [Time]
#
# @!attribute [rw] external
# Indicates whether the principal belongs to the same organization in
# Organizations as the Amazon Web Services account that owns the
# resource share.
# @return [Boolean]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ResourceShareAssociation AWS API Documentation
#
class ResourceShareAssociation < Struct.new(
:resource_share_arn,
:resource_share_name,
:associated_entity,
:association_type,
:status,
:status_message,
:creation_time,
:last_updated_time,
:external)
SENSITIVE = []
include Aws::Structure
end
# Describes an invitation for an Amazon Web Services account to join a
# resource share.
#
# @!attribute [rw] resource_share_invitation_arn
# The [Amazon Resource Name (ARN)][1] of the invitation.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] resource_share_name
# The name of the resource share.
# @return [String]
#
# @!attribute [rw] resource_share_arn
# The [Amazon Resource Name (ARN)][1] of the resource share
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] sender_account_id
# The ID of the Amazon Web Services account that sent the invitation.
# @return [String]
#
# @!attribute [rw] receiver_account_id
# The ID of the Amazon Web Services account that received the
# invitation.
# @return [String]
#
# @!attribute [rw] invitation_timestamp
# The date and time when the invitation was sent.
# @return [Time]
#
# @!attribute [rw] status
# The current status of the invitation.
# @return [String]
#
# @!attribute [rw] resource_share_associations
# To view the resources associated with a pending resource share
# invitation, use ListPendingInvitationResources.
# @return [Array]
#
# @!attribute [rw] receiver_arn
# The [Amazon Resource Name (ARN)][1] of the IAM user or role that
# received the invitation.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ResourceShareInvitation AWS API Documentation
#
class ResourceShareInvitation < Struct.new(
:resource_share_invitation_arn,
:resource_share_name,
:resource_share_arn,
:sender_account_id,
:receiver_account_id,
:invitation_timestamp,
:status,
:resource_share_associations,
:receiver_arn)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the specified invitation was already
# accepted.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ResourceShareInvitationAlreadyAcceptedException AWS API Documentation
#
class ResourceShareInvitationAlreadyAcceptedException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the specified invitation was already
# rejected.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ResourceShareInvitationAlreadyRejectedException AWS API Documentation
#
class ResourceShareInvitationAlreadyRejectedException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the specified [Amazon Resource Name
# (ARN)][1] for an invitation was not found.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ResourceShareInvitationArnNotFoundException AWS API Documentation
#
class ResourceShareInvitationArnNotFoundException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the specified invitation is past its
# expiration date and time.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ResourceShareInvitationExpiredException AWS API Documentation
#
class ResourceShareInvitationExpiredException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because it would exceed the limit for resource
# shares for your account. To view the limits for your Amazon Web
# Services account, see the [RAM page in the Service Quotas console][1].
#
#
#
# [1]: https://console.aws.amazon.com/servicequotas/home/services/ram/quotas
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ResourceShareLimitExceededException AWS API Documentation
#
class ResourceShareLimitExceededException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# Information about a RAM managed permission.
#
# @!attribute [rw] arn
# The [Amazon Resource Name (ARN)][1] of this RAM managed permission.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] version
# The version of the permission described in this response.
# @return [String]
#
# @!attribute [rw] default_version
# Specifies whether the version of the permission represented in this
# response is the default version for this permission.
# @return [Boolean]
#
# @!attribute [rw] name
# The name of this permission.
# @return [String]
#
# @!attribute [rw] resource_type
# The resource type to which this permission applies.
# @return [String]
#
# @!attribute [rw] permission
# The permission's effect and actions in JSON format. The `effect`
# indicates whether the specified actions are allowed or denied. The
# `actions` list the operations to which the principal is granted or
# denied access.
# @return [String]
#
# @!attribute [rw] creation_time
# The date and time when the permission was created.
# @return [Time]
#
# @!attribute [rw] last_updated_time
# The date and time when the permission was last updated.
# @return [Time]
#
# @!attribute [rw] is_resource_type_default
# Specifies whether the version of the permission represented in this
# response is the default version for all resources of this resource
# type.
# @return [Boolean]
#
# @!attribute [rw] permission_type
# The type of managed permission. This can be one of the following
# values:
#
# * `AWS_MANAGED` – Amazon Web Services created and manages this
# managed permission. You can associate it with your resource
# shares, but you can't modify it.
#
# * `CUSTOMER_MANAGED` – You, or another principal in your account
# created this managed permission. You can associate it with your
# resource shares and create new versions that have different
# permissions.
# @return [String]
#
# @!attribute [rw] feature_set
# Indicates what features are available for this resource share. This
# parameter can have one of the following values:
#
# * **STANDARD** – A resource share that supports all functionality.
# These resource shares are visible to all principals you share the
# resource share with. You can modify these resource shares in RAM
# using the console or APIs. This resource share might have been
# created by RAM, or it might have been **CREATED\_FROM\_POLICY**
# and then promoted.
#
# * **CREATED\_FROM\_POLICY** – The customer manually shared a
# resource by attaching a resource-based policy. That policy did not
# match any existing managed permissions, so RAM created this
# customer managed permission automatically on the customer's
# behalf based on the attached policy document. This type of
# resource share is visible only to the Amazon Web Services account
# that created it. You can't modify it in RAM unless you promote
# it. For more information, see
# PromoteResourceShareCreatedFromPolicy.
#
# * **PROMOTING\_TO\_STANDARD** – This resource share was originally
# `CREATED_FROM_POLICY`, but the customer ran the
# PromoteResourceShareCreatedFromPolicy and that operation is still
# in progress. This value changes to `STANDARD` when complete.
# @return [String]
#
# @!attribute [rw] status
# The current status of the association between the permission and the
# resource share. The following are the possible values:
#
# * `ATTACHABLE` – This permission or version can be associated with
# resource shares.
#
# * `UNATTACHABLE` – This permission or version can't currently be
# associated with resource shares.
#
# * `DELETING` – This permission or version is in the process of being
# deleted.
#
# * `DELETED` – This permission or version is deleted.
# @return [String]
#
# @!attribute [rw] tags
# The tag key and value pairs attached to the resource share.
# @return [Array]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ResourceSharePermissionDetail AWS API Documentation
#
class ResourceSharePermissionDetail < Struct.new(
:arn,
:version,
:default_version,
:name,
:resource_type,
:permission,
:creation_time,
:last_updated_time,
:is_resource_type_default,
:permission_type,
:feature_set,
:status,
:tags)
SENSITIVE = []
include Aws::Structure
end
# Information about an RAM permission.
#
# @!attribute [rw] arn
# The [Amazon Resource Name (ARN)][1] of the permission you want
# information about.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] version
# The version of the permission associated with this resource share.
# @return [String]
#
# @!attribute [rw] default_version
# Specifies whether the version of the managed permission used by this
# resource share is the default version for this managed permission.
# @return [Boolean]
#
# @!attribute [rw] name
# The name of this managed permission.
# @return [String]
#
# @!attribute [rw] resource_type
# The type of resource to which this permission applies. This takes
# the form of: `service-code`:`resource-code`, and is
# case-insensitive. For example, an Amazon EC2 Subnet would be
# represented by the string `ec2:subnet`.
# @return [String]
#
# @!attribute [rw] status
# The current status of the permission.
# @return [String]
#
# @!attribute [rw] creation_time
# The date and time when the permission was created.
# @return [Time]
#
# @!attribute [rw] last_updated_time
# The date and time when the permission was last updated.
# @return [Time]
#
# @!attribute [rw] is_resource_type_default
# Specifies whether the managed permission associated with this
# resource share is the default managed permission for all resources
# of this resource type.
# @return [Boolean]
#
# @!attribute [rw] permission_type
# The type of managed permission. This can be one of the following
# values:
#
# * `AWS_MANAGED` – Amazon Web Services created and manages this
# managed permission. You can associate it with your resource
# shares, but you can't modify it.
#
# * `CUSTOMER_MANAGED` – You, or another principal in your account
# created this managed permission. You can associate it with your
# resource shares and create new versions that have different
# permissions.
# @return [String]
#
# @!attribute [rw] feature_set
# Indicates what features are available for this resource share. This
# parameter can have one of the following values:
#
# * **STANDARD** – A resource share that supports all functionality.
# These resource shares are visible to all principals you share the
# resource share with. You can modify these resource shares in RAM
# using the console or APIs. This resource share might have been
# created by RAM, or it might have been **CREATED\_FROM\_POLICY**
# and then promoted.
#
# * **CREATED\_FROM\_POLICY** – The customer manually shared a
# resource by attaching a resource-based policy. That policy did not
# match any existing managed permissions, so RAM created this
# customer managed permission automatically on the customer's
# behalf based on the attached policy document. This type of
# resource share is visible only to the Amazon Web Services account
# that created it. You can't modify it in RAM unless you promote
# it. For more information, see
# PromoteResourceShareCreatedFromPolicy.
#
# * **PROMOTING\_TO\_STANDARD** – This resource share was originally
# `CREATED_FROM_POLICY`, but the customer ran the
# PromoteResourceShareCreatedFromPolicy and that operation is still
# in progress. This value changes to `STANDARD` when complete.
# @return [String]
#
# @!attribute [rw] tags
# A list of the tag key value pairs currently attached to the
# permission.
# @return [Array]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ResourceSharePermissionSummary AWS API Documentation
#
class ResourceSharePermissionSummary < Struct.new(
:arn,
:version,
:default_version,
:name,
:resource_type,
:status,
:creation_time,
:last_updated_time,
:is_resource_type_default,
:permission_type,
:feature_set,
:tags)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the service could not respond to the
# request due to an internal problem. Try again later.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ServerInternalException AWS API Documentation
#
class ServerInternalException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# Information about a shareable resource type and the Amazon Web
# Services service to which resources of that type belong.
#
# @!attribute [rw] resource_type
# The type of the resource. This takes the form of:
# `service-code`:`resource-code`, and is case-insensitive. For
# example, an Amazon EC2 Subnet would be represented by the string
# `ec2:subnet`.
# @return [String]
#
# @!attribute [rw] service_name
# The name of the Amazon Web Services service to which resources of
# this type belong.
# @return [String]
#
# @!attribute [rw] resource_region_scope
# Specifies the scope of visibility of resources of this type:
#
# * **REGIONAL** – The resource can be accessed only by using requests
# that target the Amazon Web Services Region in which the resource
# exists.
#
# * **GLOBAL** – The resource can be accessed from any Amazon Web
# Services Region.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ServiceNameAndResourceType AWS API Documentation
#
class ServiceNameAndResourceType < Struct.new(
:resource_type,
:service_name,
:resource_region_scope)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the service isn't available. Try again
# later.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ServiceUnavailableException AWS API Documentation
#
class ServiceUnavailableException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] permission_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the customer
# managed permission whose default version you want to change.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] permission_version
# Specifies the version number that you want to designate as the
# default for customer managed permission. To see a list of all
# available version numbers, use ListPermissionVersions.
# @return [Integer]
#
# @!attribute [rw] client_token
# Specifies a unique, case-sensitive identifier that you provide to
# ensure the idempotency of the request. This lets you safely retry
# the request without accidentally performing the same operation a
# second time. Passing the same value to a later call to an operation
# requires that you also pass the same value for all other parameters.
# We recommend that you use a [UUID type of value.][1].
#
# If you don't provide this value, then Amazon Web Services generates
# a random one for you.
#
# If you retry the operation with the same `ClientToken`, but with
# different parameters, the retry fails with an
# `IdempotentParameterMismatch` error.
#
#
#
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/SetDefaultPermissionVersionRequest AWS API Documentation
#
class SetDefaultPermissionVersionRequest < Struct.new(
:permission_arn,
:permission_version,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] return_value
# A boolean value that indicates whether the operation was successful.
# @return [Boolean]
#
# @!attribute [rw] client_token
# The idempotency identifier associated with this request. If you want
# to repeat the same operation in an idempotent manner then you must
# include this value in the `clientToken` request parameter of that
# later call. All other parameters must also have the same values that
# you used in the first call.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/SetDefaultPermissionVersionResponse AWS API Documentation
#
class SetDefaultPermissionVersionResponse < Struct.new(
:return_value,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# A structure containing a tag. A tag is metadata that you can attach to
# your resources to help organize and categorize them. You can also use
# them to help you secure your resources. For more information, see
# [Controlling access to Amazon Web Services resources using tags][1].
#
# For more information about tags, see [Tagging Amazon Web Services
# resources][2] in the *Amazon Web Services General Reference Guide*.
#
#
#
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html
# [2]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
#
# @!attribute [rw] key
# The key, or name, attached to the tag. Every tag must have a key.
# Key names are case sensitive.
# @return [String]
#
# @!attribute [rw] value
# The string value attached to the tag. The value can be an empty
# string. Key values are case sensitive.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/Tag AWS API Documentation
#
class Tag < Struct.new(
:key,
:value)
SENSITIVE = []
include Aws::Structure
end
# A tag key and optional list of possible values that you can use to
# filter results for tagged resources.
#
# @!attribute [rw] tag_key
# The tag key. This must have a valid string value and can't be
# empty.
# @return [String]
#
# @!attribute [rw] tag_values
# A list of zero or more tag values. If no values are provided, then
# the filter matches any tag with the specified key, regardless of its
# value.
# @return [Array]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/TagFilter AWS API Documentation
#
class TagFilter < Struct.new(
:tag_key,
:tag_values)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because it would exceed the limit for tags for
# your Amazon Web Services account.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/TagLimitExceededException AWS API Documentation
#
class TagLimitExceededException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because the specified tag key is a reserved word
# and can't be used.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/TagPolicyViolationException AWS API Documentation
#
class TagPolicyViolationException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the resource share
# that you want to add tags to. You must specify *either*
# `resourceShareArn`, or `resourceArn`, but not both.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] tags
# A list of one or more tag key and value pairs. The tag key must be
# present and not be an empty string. The tag value must be present
# but can be an empty string.
# @return [Array]
#
# @!attribute [rw] resource_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the managed
# permission that you want to add tags to. You must specify *either*
# `resourceArn`, or `resourceShareArn`, but not both.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/TagResourceRequest AWS API Documentation
#
class TagResourceRequest < Struct.new(
:resource_share_arn,
:tags,
:resource_arn)
SENSITIVE = []
include Aws::Structure
end
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/TagResourceResponse AWS API Documentation
#
class TagResourceResponse < Aws::EmptyStructure; end
# The operation failed because it exceeded the rate at which you are
# allowed to perform this operation. Please try again later.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ThrottlingException AWS API Documentation
#
class ThrottlingException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# The operation failed because a specified resource couldn't be found.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/UnknownResourceException AWS API Documentation
#
class UnknownResourceException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# There isn't an existing managed permission defined in RAM that has
# the same IAM permissions as the resource-based policy attached to the
# resource. You should first run PromotePermissionCreatedFromPolicy to
# create that managed permission.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/UnmatchedPolicyPermissionException AWS API Documentation
#
class UnmatchedPolicyPermissionException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the resource share
# that you want to remove tags from. The tags are removed from the
# resource share, not the resources in the resource share. You must
# specify either `resourceShareArn`, or `resourceArn`, but not both.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] tag_keys
# Specifies a list of one or more tag keys that you want to remove.
# @return [Array]
#
# @!attribute [rw] resource_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the managed
# permission that you want to remove tags from. You must specify
# either `resourceArn`, or `resourceShareArn`, but not both.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/UntagResourceRequest AWS API Documentation
#
class UntagResourceRequest < Struct.new(
:resource_share_arn,
:tag_keys,
:resource_arn)
SENSITIVE = []
include Aws::Structure
end
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/UntagResourceResponse AWS API Documentation
#
class UntagResourceResponse < Aws::EmptyStructure; end
# @!attribute [rw] resource_share_arn
# Specifies the [Amazon Resource Name (ARN)][1] of the resource share
# that you want to modify.
#
#
#
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
# @return [String]
#
# @!attribute [rw] name
# If specified, the new name that you want to attach to the resource
# share.
# @return [String]
#
# @!attribute [rw] allow_external_principals
# Specifies whether principals outside your organization in
# Organizations can be associated with a resource share.
# @return [Boolean]
#
# @!attribute [rw] client_token
# Specifies a unique, case-sensitive identifier that you provide to
# ensure the idempotency of the request. This lets you safely retry
# the request without accidentally performing the same operation a
# second time. Passing the same value to a later call to an operation
# requires that you also pass the same value for all other parameters.
# We recommend that you use a [UUID type of value.][1].
#
# If you don't provide this value, then Amazon Web Services generates
# a random one for you.
#
# If you retry the operation with the same `ClientToken`, but with
# different parameters, the retry fails with an
# `IdempotentParameterMismatch` error.
#
#
#
# [1]: https://wikipedia.org/wiki/Universally_unique_identifier
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/UpdateResourceShareRequest AWS API Documentation
#
class UpdateResourceShareRequest < Struct.new(
:resource_share_arn,
:name,
:allow_external_principals,
:client_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] resource_share
# Information about the resource share.
# @return [Types::ResourceShare]
#
# @!attribute [rw] client_token
# The idempotency identifier associated with this request. If you want
# to repeat the same operation in an idempotent manner then you must
# include this value in the `clientToken` request parameter of that
# later call. All other parameters must also have the same values that
# you used in the first call.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/UpdateResourceShareResponse AWS API Documentation
#
class UpdateResourceShareResponse < Struct.new(
:resource_share,
:client_token)
SENSITIVE = []
include Aws::Structure
end
end
end