AWS CloudFormation
User Guide (Version )

AWS::ManagedBlockchain::Member

Creates a member within a Managed Blockchain network.

Syntax

To declare this entity in your AWS CloudFormation template, use the following syntax:

JSON

{ "Type" : "AWS::ManagedBlockchain::Member", "Properties" : { "InvitationId" : String, "MemberConfiguration" : MemberConfiguration, "NetworkConfiguration" : NetworkConfiguration, "NetworkId" : String } }

YAML

Type: AWS::ManagedBlockchain::Member Properties: InvitationId: String MemberConfiguration: MemberConfiguration NetworkConfiguration: NetworkConfiguration NetworkId: String

Properties

InvitationId

The unique identifier of the invitation to join the network sent to the account that creates the member.

Required: No

Type: String

Minimum: 1

Maximum: 32

Update requires: No interruption

MemberConfiguration

Configuration properties of the member.

Required: Yes

Type: MemberConfiguration

Update requires: No interruption

NetworkConfiguration

Configuration properties of the network to which the member belongs.

Required: No

Type: NetworkConfiguration

Update requires: No interruption

NetworkId

The unique identifier of the network to which the member belongs.

Required: No

Type: String

Update requires: No interruption

Return Values

Ref

When you pass the logical ID of this resource to the intrinsic Ref function, Ref returns the member ID.

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.

MemberId

The unique identifier of the member.

NetworkId

The unique identifier of the network to which the member belongs.

Examples

Create a New Managed Blockchain Network and the First Member

When you create the first member in a Managed Blockchain network, you also specify parameters to create the network.

JSON

{ "Description": "Basic Initial Member template", "Parameters": { "MemberName": { "Type": "String" }, "MemberDescription": { "Type": "String" }, "MemberAdminUsername": { "Type": "String" }, "MemberAdminPassword": { "Type": "String" }, "NetworkName": { "Type": "String" }, "NetworkDescription": { "Type": "String" }, "Edition": { "Type": "String" }, "ThresholdPercentage": { "Type": "Number" }, "ThresholdComparator": { "Type": "String" }, "ProposalDurationInHours": { "Type": "Number" } }, "Resources": { "Member": { "Type": "AWS::ManagedBlockchain::Member", "Properties": { "NetworkConfiguration": { "Name": "NetworkName", "Description": "NetworkDescription", "Framework": "HYPERLEDGER_FABRIC", "FrameworkVersion": "1.2", "NetworkFrameworkConfiguration": { "NetworkFabricConfiguration": { "Edition": "Edition" } }, "VotingPolicy": { "ApprovalThresholdPolicy": { "ThresholdPercentage": "ThresholdPercentage", "ProposalDurationInHours": "ProposalDurationInHours", "ThresholdComparator": "ThresholdComparator" } } }, "MemberConfiguration": { "Name": "MemberName", "Description": "MemberDescription", "MemberFrameworkConfiguration": { "MemberFabricConfiguration": { "AdminUsername": "MemberAdminUsername", "AdminPassword": "MemberAdminPassword" } } } } } } }

YAML

Description: "Basic Initial Member template" Parameters: MemberName: Type: String MemberDescription: Type: String MemberAdminUsername: Type: String MemberAdminPassword: Type: String NetworkName: Type: String NetworkDescription: Type: String Edition: Type: String ThresholdPercentage: Type: Number ThresholdComparator: Type: String ProposalDurationInHours: Type: Number Resources: Member: Type: "AWS::ManagedBlockchain::Member" Properties: NetworkConfiguration: Name: !Ref NetworkName Description: !Ref NetworkDescription Framework: "HYPERLEDGER_FABRIC" FrameworkVersion: "1.2" NetworkFrameworkConfiguration: NetworkFabricConfiguration: Edition: !Ref Edition VotingPolicy: ApprovalThresholdPolicy: ThresholdPercentage: !Ref ThresholdPercentage ProposalDurationInHours: !Ref ProposalDurationInHours ThresholdComparator: !Ref ThresholdComparator MemberConfiguration: Name: !Ref MemberName Description: !Ref MemberDescription MemberFrameworkConfiguration: MemberFabricConfiguration: AdminUsername: !Ref MemberAdminUsername AdminPassword: !Ref MemberAdminPassword

Create an Additional Member in an Existing Network

YAML

Description: "Basic Secondary Member template" Parameters: MemberName: Type: String MemberDescription: Type: String MemberAdminUsername: Type: String MemberAdminPassword: Type: String NetworkId: Type: String InvitationId: Type: String Resources: Member: Type: "AWS::ManagedBlockchain::Member" Properties: MemberConfiguration: Name: !Ref MemberName Description: !Ref MemberDescription FabricMemberConfiguration: AdminUsername: !Ref MemberAdminUsername AdminPassword: !Ref MemberAdminPassword NetworkId: !Ref NetworkId InvitationId: !Ref InvitationId

JSON

{ "Description": "Basic Additional Member template", "Parameters": { "MemberName": { "Type": "String" }, "MemberDescription": { "Type": "String" }, "MemberAdminUsername": { "Type": "String" }, "MemberAdminPassword": { "Type": "String" }, "NetworkId": { "Type": "String" }, "InvitationId": { "Type": "String" } }, "Resources": { "Member": { "Type": "AWS::ManagedBlockchain::Member", "Properties": { "MemberConfiguration": { "Name": "MemberName", "Description": "MemberDescription", "FabricMemberConfiguration": { "AdminUsername": "MemberAdminUsername", "AdminPassword": "MemberAdminPassword" } }, "NetworkId": "NetworkId", "InvitationId": "InvitationId" } } } }