GroupMembershipArgs

data class GroupMembershipArgs(val group: Output<String>? = null, val memberKey: Output<GroupMembershipMemberKeyArgs>? = null, val preferredMemberKey: Output<GroupMembershipPreferredMemberKeyArgs>? = null, val roles: Output<List<GroupMembershipRoleArgs>>? = null) : ConvertibleToJava<GroupMembershipArgs>

A Membership defines a relationship between a Group and an entity belonging to that Group, referred to as a "member". To get more information about GroupMembership, see:

Warning: If you are using User ADCs (Application Default Credentials) with this resource, you must specify a billing_project and set user_project_override to true in the provider configuration. Otherwise the Cloud Identity API will return a 403 error. Your account must have the serviceusage.services.use permission on the billing_project you defined.

Example Usage

Cloud Identity Group Membership

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.cloudidentity.Group;
import com.pulumi.gcp.cloudidentity.GroupArgs;
import com.pulumi.gcp.cloudidentity.inputs.GroupGroupKeyArgs;
import com.pulumi.gcp.cloudidentity.GroupMembership;
import com.pulumi.gcp.cloudidentity.GroupMembershipArgs;
import com.pulumi.gcp.cloudidentity.inputs.GroupMembershipPreferredMemberKeyArgs;
import com.pulumi.gcp.cloudidentity.inputs.GroupMembershipRoleArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var group = new Group("group", GroupArgs.builder()
.displayName("my-identity-group")
.parent("customers/A01b123xz")
.groupKey(GroupGroupKeyArgs.builder()
.id("my-identity-group@example.com")
.build())
.labels(Map.of("cloudidentity.googleapis.com/groups.discussion_forum", ""))
.build());
var child_group = new Group("child-group", GroupArgs.builder()
.displayName("my-identity-group-child")
.parent("customers/A01b123xz")
.groupKey(GroupGroupKeyArgs.builder()
.id("my-identity-group-child@example.com")
.build())
.labels(Map.of("cloudidentity.googleapis.com/groups.discussion_forum", ""))
.build());
var cloudIdentityGroupMembershipBasic = new GroupMembership("cloudIdentityGroupMembershipBasic", GroupMembershipArgs.builder()
.group(group.id())
.preferredMemberKey(GroupMembershipPreferredMemberKeyArgs.builder()
.id(child_group.groupKey().applyValue(groupKey -> groupKey.id()))
.build())
.roles(GroupMembershipRoleArgs.builder()
.name("MEMBER")
.build())
.build());
}
}

Cloud Identity Group Membership User

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.cloudidentity.Group;
import com.pulumi.gcp.cloudidentity.GroupArgs;
import com.pulumi.gcp.cloudidentity.inputs.GroupGroupKeyArgs;
import com.pulumi.gcp.cloudidentity.GroupMembership;
import com.pulumi.gcp.cloudidentity.GroupMembershipArgs;
import com.pulumi.gcp.cloudidentity.inputs.GroupMembershipPreferredMemberKeyArgs;
import com.pulumi.gcp.cloudidentity.inputs.GroupMembershipRoleArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var group = new Group("group", GroupArgs.builder()
.displayName("my-identity-group")
.parent("customers/A01b123xz")
.groupKey(GroupGroupKeyArgs.builder()
.id("my-identity-group@example.com")
.build())
.labels(Map.of("cloudidentity.googleapis.com/groups.discussion_forum", ""))
.build());
var cloudIdentityGroupMembershipBasic = new GroupMembership("cloudIdentityGroupMembershipBasic", GroupMembershipArgs.builder()
.group(group.id())
.preferredMemberKey(GroupMembershipPreferredMemberKeyArgs.builder()
.id("cloud_identity_user@example.com")
.build())
.roles(
GroupMembershipRoleArgs.builder()
.name("MEMBER")
.build(),
GroupMembershipRoleArgs.builder()
.name("MANAGER")
.build())
.build());
}
}

Import

GroupMembership can be imported using any of these accepted formats:

$ pulumi import gcp:cloudidentity/groupMembership:GroupMembership default {{name}}

Constructors

Link copied to clipboard
constructor(group: Output<String>? = null, memberKey: Output<GroupMembershipMemberKeyArgs>? = null, preferredMemberKey: Output<GroupMembershipPreferredMemberKeyArgs>? = null, roles: Output<List<GroupMembershipRoleArgs>>? = null)

Properties

Link copied to clipboard
val group: Output<String>? = null

The name of the Group to create this membership in.

Link copied to clipboard

EntityKey of the member. Structure is documented below.

Link copied to clipboard

EntityKey of the member. Structure is documented below.

Link copied to clipboard
val roles: Output<List<GroupMembershipRoleArgs>>? = null

The MembershipRoles that apply to the Membership. Must not contain duplicate MembershipRoles with the same name. Structure is documented below.

Functions

Link copied to clipboard
open override fun toJava(): GroupMembershipArgs