1. Packages
  2. Google Cloud Native
  3. API Docs
  4. cloudidentity
  5. cloudidentity/v1
  6. Membership

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

google-native.cloudidentity/v1.Membership

Explore with Pulumi AI

google-native logo

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

    Creates a Membership. Auto-naming is currently not supported for this resource.

    Create Membership Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new Membership(name: string, args: MembershipArgs, opts?: CustomResourceOptions);
    @overload
    def Membership(resource_name: str,
                   args: MembershipArgs,
                   opts: Optional[ResourceOptions] = None)
    
    @overload
    def Membership(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   group_id: Optional[str] = None,
                   preferred_member_key: Optional[EntityKeyArgs] = None,
                   roles: Optional[Sequence[MembershipRoleArgs]] = None)
    func NewMembership(ctx *Context, name string, args MembershipArgs, opts ...ResourceOption) (*Membership, error)
    public Membership(string name, MembershipArgs args, CustomResourceOptions? opts = null)
    public Membership(String name, MembershipArgs args)
    public Membership(String name, MembershipArgs args, CustomResourceOptions options)
    
    type: google-native:cloudidentity/v1:Membership
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args MembershipArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args MembershipArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args MembershipArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args MembershipArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args MembershipArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var membershipResource = new GoogleNative.CloudIdentity.V1.Membership("membershipResource", new()
    {
        GroupId = "string",
        PreferredMemberKey = new GoogleNative.CloudIdentity.V1.Inputs.EntityKeyArgs
        {
            Id = "string",
            Namespace = "string",
        },
        Roles = new[]
        {
            new GoogleNative.CloudIdentity.V1.Inputs.MembershipRoleArgs
            {
                ExpiryDetail = new GoogleNative.CloudIdentity.V1.Inputs.ExpiryDetailArgs
                {
                    ExpireTime = "string",
                },
                Name = "string",
                RestrictionEvaluations = new GoogleNative.CloudIdentity.V1.Inputs.RestrictionEvaluationsArgs
                {
                    MemberRestrictionEvaluation = null,
                },
            },
        },
    });
    
    example, err := cloudidentity.NewMembership(ctx, "membershipResource", &cloudidentity.MembershipArgs{
    	GroupId: pulumi.String("string"),
    	PreferredMemberKey: &cloudidentity.EntityKeyArgs{
    		Id:        pulumi.String("string"),
    		Namespace: pulumi.String("string"),
    	},
    	Roles: cloudidentity.MembershipRoleArray{
    		&cloudidentity.MembershipRoleArgs{
    			ExpiryDetail: &cloudidentity.ExpiryDetailArgs{
    				ExpireTime: pulumi.String("string"),
    			},
    			Name: pulumi.String("string"),
    			RestrictionEvaluations: &cloudidentity.RestrictionEvaluationsArgs{
    				MemberRestrictionEvaluation: nil,
    			},
    		},
    	},
    })
    
    var membershipResource = new Membership("membershipResource", MembershipArgs.builder()
        .groupId("string")
        .preferredMemberKey(EntityKeyArgs.builder()
            .id("string")
            .namespace("string")
            .build())
        .roles(MembershipRoleArgs.builder()
            .expiryDetail(ExpiryDetailArgs.builder()
                .expireTime("string")
                .build())
            .name("string")
            .restrictionEvaluations(RestrictionEvaluationsArgs.builder()
                .memberRestrictionEvaluation()
                .build())
            .build())
        .build());
    
    membership_resource = google_native.cloudidentity.v1.Membership("membershipResource",
        group_id="string",
        preferred_member_key=google_native.cloudidentity.v1.EntityKeyArgs(
            id="string",
            namespace="string",
        ),
        roles=[google_native.cloudidentity.v1.MembershipRoleArgs(
            expiry_detail=google_native.cloudidentity.v1.ExpiryDetailArgs(
                expire_time="string",
            ),
            name="string",
            restriction_evaluations=google_native.cloudidentity.v1.RestrictionEvaluationsArgs(
                member_restriction_evaluation=google_native.cloudidentity.v1.MembershipRoleRestrictionEvaluationArgs(),
            ),
        )])
    
    const membershipResource = new google_native.cloudidentity.v1.Membership("membershipResource", {
        groupId: "string",
        preferredMemberKey: {
            id: "string",
            namespace: "string",
        },
        roles: [{
            expiryDetail: {
                expireTime: "string",
            },
            name: "string",
            restrictionEvaluations: {
                memberRestrictionEvaluation: {},
            },
        }],
    });
    
    type: google-native:cloudidentity/v1:Membership
    properties:
        groupId: string
        preferredMemberKey:
            id: string
            namespace: string
        roles:
            - expiryDetail:
                expireTime: string
              name: string
              restrictionEvaluations:
                memberRestrictionEvaluation: {}
    

    Membership Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The Membership resource accepts the following input properties:

    GroupId string
    PreferredMemberKey Pulumi.GoogleNative.CloudIdentity.V1.Inputs.EntityKey
    Immutable. The EntityKey of the member.
    Roles List<Pulumi.GoogleNative.CloudIdentity.V1.Inputs.MembershipRole>
    The MembershipRoles that apply to the Membership. If unspecified, defaults to a single MembershipRole with name MEMBER. Must not contain duplicate MembershipRoles with the same name.
    GroupId string
    PreferredMemberKey EntityKeyArgs
    Immutable. The EntityKey of the member.
    Roles []MembershipRoleArgs
    The MembershipRoles that apply to the Membership. If unspecified, defaults to a single MembershipRole with name MEMBER. Must not contain duplicate MembershipRoles with the same name.
    groupId String
    preferredMemberKey EntityKey
    Immutable. The EntityKey of the member.
    roles List<MembershipRole>
    The MembershipRoles that apply to the Membership. If unspecified, defaults to a single MembershipRole with name MEMBER. Must not contain duplicate MembershipRoles with the same name.
    groupId string
    preferredMemberKey EntityKey
    Immutable. The EntityKey of the member.
    roles MembershipRole[]
    The MembershipRoles that apply to the Membership. If unspecified, defaults to a single MembershipRole with name MEMBER. Must not contain duplicate MembershipRoles with the same name.
    group_id str
    preferred_member_key EntityKeyArgs
    Immutable. The EntityKey of the member.
    roles Sequence[MembershipRoleArgs]
    The MembershipRoles that apply to the Membership. If unspecified, defaults to a single MembershipRole with name MEMBER. Must not contain duplicate MembershipRoles with the same name.
    groupId String
    preferredMemberKey Property Map
    Immutable. The EntityKey of the member.
    roles List<Property Map>
    The MembershipRoles that apply to the Membership. If unspecified, defaults to a single MembershipRole with name MEMBER. Must not contain duplicate MembershipRoles with the same name.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Membership resource produces the following output properties:

    CreateTime string
    The time when the Membership was created.
    DeliverySetting string
    Delivery setting associated with the membership.
    Id string
    The provider-assigned unique ID for this managed resource.
    Name string
    The resource name of the Membership. Shall be of the form groups/{group}/memberships/{membership}.
    Type string
    The type of the membership.
    UpdateTime string
    The time when the Membership was last updated.
    CreateTime string
    The time when the Membership was created.
    DeliverySetting string
    Delivery setting associated with the membership.
    Id string
    The provider-assigned unique ID for this managed resource.
    Name string
    The resource name of the Membership. Shall be of the form groups/{group}/memberships/{membership}.
    Type string
    The type of the membership.
    UpdateTime string
    The time when the Membership was last updated.
    createTime String
    The time when the Membership was created.
    deliverySetting String
    Delivery setting associated with the membership.
    id String
    The provider-assigned unique ID for this managed resource.
    name String
    The resource name of the Membership. Shall be of the form groups/{group}/memberships/{membership}.
    type String
    The type of the membership.
    updateTime String
    The time when the Membership was last updated.
    createTime string
    The time when the Membership was created.
    deliverySetting string
    Delivery setting associated with the membership.
    id string
    The provider-assigned unique ID for this managed resource.
    name string
    The resource name of the Membership. Shall be of the form groups/{group}/memberships/{membership}.
    type string
    The type of the membership.
    updateTime string
    The time when the Membership was last updated.
    create_time str
    The time when the Membership was created.
    delivery_setting str
    Delivery setting associated with the membership.
    id str
    The provider-assigned unique ID for this managed resource.
    name str
    The resource name of the Membership. Shall be of the form groups/{group}/memberships/{membership}.
    type str
    The type of the membership.
    update_time str
    The time when the Membership was last updated.
    createTime String
    The time when the Membership was created.
    deliverySetting String
    Delivery setting associated with the membership.
    id String
    The provider-assigned unique ID for this managed resource.
    name String
    The resource name of the Membership. Shall be of the form groups/{group}/memberships/{membership}.
    type String
    The type of the membership.
    updateTime String
    The time when the Membership was last updated.

    Supporting Types

    EntityKey, EntityKeyArgs

    Id string
    The ID of the entity. For Google-managed entities, the id should be the email address of an existing group or user. For external-identity-mapped entities, the id must be a string conforming to the Identity Source's requirements. Must be unique within a namespace.
    Namespace string
    The namespace in which the entity exists. If not specified, the EntityKey represents a Google-managed entity such as a Google user or a Google Group. If specified, the EntityKey represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of identitysources/{identity_source}.
    Id string
    The ID of the entity. For Google-managed entities, the id should be the email address of an existing group or user. For external-identity-mapped entities, the id must be a string conforming to the Identity Source's requirements. Must be unique within a namespace.
    Namespace string
    The namespace in which the entity exists. If not specified, the EntityKey represents a Google-managed entity such as a Google user or a Google Group. If specified, the EntityKey represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of identitysources/{identity_source}.
    id String
    The ID of the entity. For Google-managed entities, the id should be the email address of an existing group or user. For external-identity-mapped entities, the id must be a string conforming to the Identity Source's requirements. Must be unique within a namespace.
    namespace String
    The namespace in which the entity exists. If not specified, the EntityKey represents a Google-managed entity such as a Google user or a Google Group. If specified, the EntityKey represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of identitysources/{identity_source}.
    id string
    The ID of the entity. For Google-managed entities, the id should be the email address of an existing group or user. For external-identity-mapped entities, the id must be a string conforming to the Identity Source's requirements. Must be unique within a namespace.
    namespace string
    The namespace in which the entity exists. If not specified, the EntityKey represents a Google-managed entity such as a Google user or a Google Group. If specified, the EntityKey represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of identitysources/{identity_source}.
    id str
    The ID of the entity. For Google-managed entities, the id should be the email address of an existing group or user. For external-identity-mapped entities, the id must be a string conforming to the Identity Source's requirements. Must be unique within a namespace.
    namespace str
    The namespace in which the entity exists. If not specified, the EntityKey represents a Google-managed entity such as a Google user or a Google Group. If specified, the EntityKey represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of identitysources/{identity_source}.
    id String
    The ID of the entity. For Google-managed entities, the id should be the email address of an existing group or user. For external-identity-mapped entities, the id must be a string conforming to the Identity Source's requirements. Must be unique within a namespace.
    namespace String
    The namespace in which the entity exists. If not specified, the EntityKey represents a Google-managed entity such as a Google user or a Google Group. If specified, the EntityKey represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of identitysources/{identity_source}.

    EntityKeyResponse, EntityKeyResponseArgs

    Namespace string
    The namespace in which the entity exists. If not specified, the EntityKey represents a Google-managed entity such as a Google user or a Google Group. If specified, the EntityKey represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of identitysources/{identity_source}.
    Namespace string
    The namespace in which the entity exists. If not specified, the EntityKey represents a Google-managed entity such as a Google user or a Google Group. If specified, the EntityKey represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of identitysources/{identity_source}.
    namespace String
    The namespace in which the entity exists. If not specified, the EntityKey represents a Google-managed entity such as a Google user or a Google Group. If specified, the EntityKey represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of identitysources/{identity_source}.
    namespace string
    The namespace in which the entity exists. If not specified, the EntityKey represents a Google-managed entity such as a Google user or a Google Group. If specified, the EntityKey represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of identitysources/{identity_source}.
    namespace str
    The namespace in which the entity exists. If not specified, the EntityKey represents a Google-managed entity such as a Google user or a Google Group. If specified, the EntityKey represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of identitysources/{identity_source}.
    namespace String
    The namespace in which the entity exists. If not specified, the EntityKey represents a Google-managed entity such as a Google user or a Google Group. If specified, the EntityKey represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of identitysources/{identity_source}.

    ExpiryDetail, ExpiryDetailArgs

    ExpireTime string
    The time at which the MembershipRole will expire.
    ExpireTime string
    The time at which the MembershipRole will expire.
    expireTime String
    The time at which the MembershipRole will expire.
    expireTime string
    The time at which the MembershipRole will expire.
    expire_time str
    The time at which the MembershipRole will expire.
    expireTime String
    The time at which the MembershipRole will expire.

    ExpiryDetailResponse, ExpiryDetailResponseArgs

    ExpireTime string
    The time at which the MembershipRole will expire.
    ExpireTime string
    The time at which the MembershipRole will expire.
    expireTime String
    The time at which the MembershipRole will expire.
    expireTime string
    The time at which the MembershipRole will expire.
    expire_time str
    The time at which the MembershipRole will expire.
    expireTime String
    The time at which the MembershipRole will expire.

    MembershipRole, MembershipRoleArgs

    ExpiryDetail Pulumi.GoogleNative.CloudIdentity.V1.Inputs.ExpiryDetail
    The expiry details of the MembershipRole. Expiry details are only supported for MEMBER MembershipRoles. May be set if name is MEMBER. Must not be set if name is any other value.
    Name string
    The name of the MembershipRole. Must be one of OWNER, MANAGER, MEMBER.
    RestrictionEvaluations Pulumi.GoogleNative.CloudIdentity.V1.Inputs.RestrictionEvaluations
    Evaluations of restrictions applied to parent group on this membership.
    ExpiryDetail ExpiryDetail
    The expiry details of the MembershipRole. Expiry details are only supported for MEMBER MembershipRoles. May be set if name is MEMBER. Must not be set if name is any other value.
    Name string
    The name of the MembershipRole. Must be one of OWNER, MANAGER, MEMBER.
    RestrictionEvaluations RestrictionEvaluations
    Evaluations of restrictions applied to parent group on this membership.
    expiryDetail ExpiryDetail
    The expiry details of the MembershipRole. Expiry details are only supported for MEMBER MembershipRoles. May be set if name is MEMBER. Must not be set if name is any other value.
    name String
    The name of the MembershipRole. Must be one of OWNER, MANAGER, MEMBER.
    restrictionEvaluations RestrictionEvaluations
    Evaluations of restrictions applied to parent group on this membership.
    expiryDetail ExpiryDetail
    The expiry details of the MembershipRole. Expiry details are only supported for MEMBER MembershipRoles. May be set if name is MEMBER. Must not be set if name is any other value.
    name string
    The name of the MembershipRole. Must be one of OWNER, MANAGER, MEMBER.
    restrictionEvaluations RestrictionEvaluations
    Evaluations of restrictions applied to parent group on this membership.
    expiry_detail ExpiryDetail
    The expiry details of the MembershipRole. Expiry details are only supported for MEMBER MembershipRoles. May be set if name is MEMBER. Must not be set if name is any other value.
    name str
    The name of the MembershipRole. Must be one of OWNER, MANAGER, MEMBER.
    restriction_evaluations RestrictionEvaluations
    Evaluations of restrictions applied to parent group on this membership.
    expiryDetail Property Map
    The expiry details of the MembershipRole. Expiry details are only supported for MEMBER MembershipRoles. May be set if name is MEMBER. Must not be set if name is any other value.
    name String
    The name of the MembershipRole. Must be one of OWNER, MANAGER, MEMBER.
    restrictionEvaluations Property Map
    Evaluations of restrictions applied to parent group on this membership.

    MembershipRoleResponse, MembershipRoleResponseArgs

    ExpiryDetail Pulumi.GoogleNative.CloudIdentity.V1.Inputs.ExpiryDetailResponse
    The expiry details of the MembershipRole. Expiry details are only supported for MEMBER MembershipRoles. May be set if name is MEMBER. Must not be set if name is any other value.
    Name string
    The name of the MembershipRole. Must be one of OWNER, MANAGER, MEMBER.
    RestrictionEvaluations Pulumi.GoogleNative.CloudIdentity.V1.Inputs.RestrictionEvaluationsResponse
    Evaluations of restrictions applied to parent group on this membership.
    ExpiryDetail ExpiryDetailResponse
    The expiry details of the MembershipRole. Expiry details are only supported for MEMBER MembershipRoles. May be set if name is MEMBER. Must not be set if name is any other value.
    Name string
    The name of the MembershipRole. Must be one of OWNER, MANAGER, MEMBER.
    RestrictionEvaluations RestrictionEvaluationsResponse
    Evaluations of restrictions applied to parent group on this membership.
    expiryDetail ExpiryDetailResponse
    The expiry details of the MembershipRole. Expiry details are only supported for MEMBER MembershipRoles. May be set if name is MEMBER. Must not be set if name is any other value.
    name String
    The name of the MembershipRole. Must be one of OWNER, MANAGER, MEMBER.
    restrictionEvaluations RestrictionEvaluationsResponse
    Evaluations of restrictions applied to parent group on this membership.
    expiryDetail ExpiryDetailResponse
    The expiry details of the MembershipRole. Expiry details are only supported for MEMBER MembershipRoles. May be set if name is MEMBER. Must not be set if name is any other value.
    name string
    The name of the MembershipRole. Must be one of OWNER, MANAGER, MEMBER.
    restrictionEvaluations RestrictionEvaluationsResponse
    Evaluations of restrictions applied to parent group on this membership.
    expiry_detail ExpiryDetailResponse
    The expiry details of the MembershipRole. Expiry details are only supported for MEMBER MembershipRoles. May be set if name is MEMBER. Must not be set if name is any other value.
    name str
    The name of the MembershipRole. Must be one of OWNER, MANAGER, MEMBER.
    restriction_evaluations RestrictionEvaluationsResponse
    Evaluations of restrictions applied to parent group on this membership.
    expiryDetail Property Map
    The expiry details of the MembershipRole. Expiry details are only supported for MEMBER MembershipRoles. May be set if name is MEMBER. Must not be set if name is any other value.
    name String
    The name of the MembershipRole. Must be one of OWNER, MANAGER, MEMBER.
    restrictionEvaluations Property Map
    Evaluations of restrictions applied to parent group on this membership.

    MembershipRoleRestrictionEvaluationResponse, MembershipRoleRestrictionEvaluationResponseArgs

    State string
    The current state of the restriction
    State string
    The current state of the restriction
    state String
    The current state of the restriction
    state string
    The current state of the restriction
    state str
    The current state of the restriction
    state String
    The current state of the restriction

    RestrictionEvaluations, RestrictionEvaluationsArgs

    MemberRestrictionEvaluation Pulumi.GoogleNative.CloudIdentity.V1.Inputs.MembershipRoleRestrictionEvaluation
    Evaluation of the member restriction applied to this membership. Empty if the user lacks permission to view the restriction evaluation.
    MemberRestrictionEvaluation MembershipRoleRestrictionEvaluation
    Evaluation of the member restriction applied to this membership. Empty if the user lacks permission to view the restriction evaluation.
    memberRestrictionEvaluation MembershipRoleRestrictionEvaluation
    Evaluation of the member restriction applied to this membership. Empty if the user lacks permission to view the restriction evaluation.
    memberRestrictionEvaluation MembershipRoleRestrictionEvaluation
    Evaluation of the member restriction applied to this membership. Empty if the user lacks permission to view the restriction evaluation.
    member_restriction_evaluation MembershipRoleRestrictionEvaluation
    Evaluation of the member restriction applied to this membership. Empty if the user lacks permission to view the restriction evaluation.
    memberRestrictionEvaluation Property Map
    Evaluation of the member restriction applied to this membership. Empty if the user lacks permission to view the restriction evaluation.

    RestrictionEvaluationsResponse, RestrictionEvaluationsResponseArgs

    MemberRestrictionEvaluation Pulumi.GoogleNative.CloudIdentity.V1.Inputs.MembershipRoleRestrictionEvaluationResponse
    Evaluation of the member restriction applied to this membership. Empty if the user lacks permission to view the restriction evaluation.
    MemberRestrictionEvaluation MembershipRoleRestrictionEvaluationResponse
    Evaluation of the member restriction applied to this membership. Empty if the user lacks permission to view the restriction evaluation.
    memberRestrictionEvaluation MembershipRoleRestrictionEvaluationResponse
    Evaluation of the member restriction applied to this membership. Empty if the user lacks permission to view the restriction evaluation.
    memberRestrictionEvaluation MembershipRoleRestrictionEvaluationResponse
    Evaluation of the member restriction applied to this membership. Empty if the user lacks permission to view the restriction evaluation.
    member_restriction_evaluation MembershipRoleRestrictionEvaluationResponse
    Evaluation of the member restriction applied to this membership. Empty if the user lacks permission to view the restriction evaluation.
    memberRestrictionEvaluation Property Map
    Evaluation of the member restriction applied to this membership. Empty if the user lacks permission to view the restriction evaluation.

    Package Details

    Repository
    Google Cloud Native pulumi/pulumi-google-native
    License
    Apache-2.0
    google-native logo

    Google Cloud Native is in preview. Google Cloud Classic is fully supported.

    Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi