AWS::CleanRooms::Membership
Creates a membership for a specific collaboration identifier and joins the collaboration.
Syntax
To declare this entity in your Amazon CloudFormation template, use the following syntax:
JSON
{ "Type" : "AWS::CleanRooms::Membership", "Properties" : { "CollaborationIdentifier" :
String
, "DefaultResultConfiguration" :MembershipProtectedQueryResultConfiguration
, "PaymentConfiguration" :MembershipPaymentConfiguration
, "QueryLogStatus" :String
, "Tags" :[ Tag, ... ]
} }
YAML
Type: AWS::CleanRooms::Membership Properties: CollaborationIdentifier:
String
DefaultResultConfiguration:MembershipProtectedQueryResultConfiguration
PaymentConfiguration:MembershipPaymentConfiguration
QueryLogStatus:String
Tags:- Tag
Properties
CollaborationIdentifier
-
The unique ID for the associated collaboration.
Required: Yes
Type: String
Pattern:
[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}
Minimum:
36
Maximum:
36
Update requires: Replacement
DefaultResultConfiguration
-
The default protected query result configuration as specified by the member who can receive results.
Required: No
Type: MembershipProtectedQueryResultConfiguration
Update requires: No interruption
PaymentConfiguration
-
The payment responsibilities accepted by the collaboration member.
Required: No
Type: MembershipPaymentConfiguration
Update requires: No interruption
QueryLogStatus
-
An indicator as to whether query logging has been enabled or disabled for the membership.
Required: Yes
Type: String
Allowed values:
ENABLED | DISABLED
Update requires: No interruption
-
An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.
Required: No
Type: Array of Tag
Update requires: No interruption
Return values
Ref
When you pass the logical ID of this resource to the intrinsic Ref
function, Ref
returns the MembershipId
, such as
a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
. For example:
{ "Ref": "MyMembership" }
For more information about using the Ref
function, see Ref.
Fn::GetAtt
The Fn::GetAtt
intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.
For more information about using the Fn::GetAtt
intrinsic function, see Fn::GetAtt
.
Arn
-
Returns the Amazon Resource Name (ARN) of the specified membership.
Example:
arn:aws:cleanrooms:us-east-1:111122223333:membership/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
CollaborationArn
-
Returns the Amazon Resource Name (ARN) of the specified collaboration.
Example:
arn:aws:cleanrooms:us-east-1:111122223333:collaboration/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
CollaborationCreatorAccountId
-
Returns the unique identifier of the specified collaboration creator account.
Example:
a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
MembershipIdentifier
-
Returns the unique identifier of the specified membership.
Example:
a1b2c3d4-5678-90ab-cdef-EXAMPLE22222
Remarks
If you are a collaboration owner, ensure that you add "DeletionPolicy:
Retain"
and "UpdateReplacePolicy: Retain"
to the
Membership
resource in your CloudFormation template.
If your Membership
resource depends on the collaboration explicitly or
implicitly by using a "Ref"
on the Collaboration
(CollaborationIdentifier: !Ref Collaboration
), CloudFormation tries to delete
the Membership
resource before the Collaboration
resource.
However, this attempt will fail because collaboration owners must delete the collaboration
before deleting their membership to the collaboration.
For more information, see DeletionPolicy attribute and UpdateReplacePolicy attribute.
Examples
Membership for a collaboration creator
The following an example of a membership for a collaboration creator. See the Remarks section for notes on the use of the deletion and update replacement policies.
JSON
"CollaborationCreatorMembership": { "Type" : "AWS::CleanRooms::Membership", "DeletionPolicy": "Retain", "UpdateReplacePolicy": "Retain", "Properties" : { "CollaborationIdentifier" : "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "QueryLogStatus" : "ENABLED", } }
YAML
CollaborationCreatorMembership: Type: AWS::CleanRooms::Membership DeletionPolicy: Retain UpdateReplacePolicy: Retain Properties: CollaborationIdentifier: a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 QueryLogStatus: ENABLED
Membership for a non-collaboration creator
The following is an example of a membership for a non-collaboration creator.
JSON
"ExampleMembership": { "Type" : "AWS::CleanRooms::Membership", "Properties" : { "CollaborationIdentifier" : "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "QueryLogStatus" : "ENABLED", } }
YAML
ExampleMembership: Type: AWS::CleanRooms::Membership Properties: CollaborationIdentifier: a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 QueryLogStatus: ENABLED