1. Packages
  2. Google Cloud Native
  3. API Docs
  4. storage
  5. storage/v1
  6. DefaultObjectAccessControl

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.storage/v1.DefaultObjectAccessControl

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 new default object ACL entry on the specified bucket. Auto-naming is currently not supported for this resource.

    Create DefaultObjectAccessControl Resource

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

    Constructor syntax

    new DefaultObjectAccessControl(name: string, args: DefaultObjectAccessControlArgs, opts?: CustomResourceOptions);
    @overload
    def DefaultObjectAccessControl(resource_name: str,
                                   args: DefaultObjectAccessControlArgs,
                                   opts: Optional[ResourceOptions] = None)
    
    @overload
    def DefaultObjectAccessControl(resource_name: str,
                                   opts: Optional[ResourceOptions] = None,
                                   bucket: Optional[str] = None,
                                   domain: Optional[str] = None,
                                   email: Optional[str] = None,
                                   entity: Optional[str] = None,
                                   entity_id: Optional[str] = None,
                                   etag: Optional[str] = None,
                                   generation: Optional[str] = None,
                                   id: Optional[str] = None,
                                   kind: Optional[str] = None,
                                   object: Optional[str] = None,
                                   project_team: Optional[DefaultObjectAccessControlProjectTeamArgs] = None,
                                   role: Optional[str] = None,
                                   self_link: Optional[str] = None,
                                   user_project: Optional[str] = None)
    func NewDefaultObjectAccessControl(ctx *Context, name string, args DefaultObjectAccessControlArgs, opts ...ResourceOption) (*DefaultObjectAccessControl, error)
    public DefaultObjectAccessControl(string name, DefaultObjectAccessControlArgs args, CustomResourceOptions? opts = null)
    public DefaultObjectAccessControl(String name, DefaultObjectAccessControlArgs args)
    public DefaultObjectAccessControl(String name, DefaultObjectAccessControlArgs args, CustomResourceOptions options)
    
    type: google-native:storage/v1:DefaultObjectAccessControl
    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 DefaultObjectAccessControlArgs
    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 DefaultObjectAccessControlArgs
    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 DefaultObjectAccessControlArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args DefaultObjectAccessControlArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args DefaultObjectAccessControlArgs
    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 defaultObjectAccessControlResource = new GoogleNative.Storage.V1.DefaultObjectAccessControl("defaultObjectAccessControlResource", new()
    {
        Bucket = "string",
        Domain = "string",
        Email = "string",
        Entity = "string",
        EntityId = "string",
        Etag = "string",
        Generation = "string",
        Id = "string",
        Kind = "string",
        Object = "string",
        ProjectTeam = new GoogleNative.Storage.V1.Inputs.DefaultObjectAccessControlProjectTeamArgs
        {
            ProjectNumber = "string",
            Team = "string",
        },
        Role = "string",
        SelfLink = "string",
        UserProject = "string",
    });
    
    example, err := storage.NewDefaultObjectAccessControl(ctx, "defaultObjectAccessControlResource", &storage.DefaultObjectAccessControlArgs{
    	Bucket:     pulumi.String("string"),
    	Domain:     pulumi.String("string"),
    	Email:      pulumi.String("string"),
    	Entity:     pulumi.String("string"),
    	EntityId:   pulumi.String("string"),
    	Etag:       pulumi.String("string"),
    	Generation: pulumi.String("string"),
    	Id:         pulumi.String("string"),
    	Kind:       pulumi.String("string"),
    	Object:     pulumi.String("string"),
    	ProjectTeam: &storage.DefaultObjectAccessControlProjectTeamArgs{
    		ProjectNumber: pulumi.String("string"),
    		Team:          pulumi.String("string"),
    	},
    	Role:        pulumi.String("string"),
    	SelfLink:    pulumi.String("string"),
    	UserProject: pulumi.String("string"),
    })
    
    var defaultObjectAccessControlResource = new DefaultObjectAccessControl("defaultObjectAccessControlResource", DefaultObjectAccessControlArgs.builder()
        .bucket("string")
        .domain("string")
        .email("string")
        .entity("string")
        .entityId("string")
        .etag("string")
        .generation("string")
        .id("string")
        .kind("string")
        .object("string")
        .projectTeam(DefaultObjectAccessControlProjectTeamArgs.builder()
            .projectNumber("string")
            .team("string")
            .build())
        .role("string")
        .selfLink("string")
        .userProject("string")
        .build());
    
    default_object_access_control_resource = google_native.storage.v1.DefaultObjectAccessControl("defaultObjectAccessControlResource",
        bucket="string",
        domain="string",
        email="string",
        entity="string",
        entity_id="string",
        etag="string",
        generation="string",
        id="string",
        kind="string",
        object="string",
        project_team=google_native.storage.v1.DefaultObjectAccessControlProjectTeamArgs(
            project_number="string",
            team="string",
        ),
        role="string",
        self_link="string",
        user_project="string")
    
    const defaultObjectAccessControlResource = new google_native.storage.v1.DefaultObjectAccessControl("defaultObjectAccessControlResource", {
        bucket: "string",
        domain: "string",
        email: "string",
        entity: "string",
        entityId: "string",
        etag: "string",
        generation: "string",
        id: "string",
        kind: "string",
        object: "string",
        projectTeam: {
            projectNumber: "string",
            team: "string",
        },
        role: "string",
        selfLink: "string",
        userProject: "string",
    });
    
    type: google-native:storage/v1:DefaultObjectAccessControl
    properties:
        bucket: string
        domain: string
        email: string
        entity: string
        entityId: string
        etag: string
        generation: string
        id: string
        kind: string
        object: string
        projectTeam:
            projectNumber: string
            team: string
        role: string
        selfLink: string
        userProject: string
    

    DefaultObjectAccessControl 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 DefaultObjectAccessControl resource accepts the following input properties:

    Bucket string
    The name of the bucket.
    Domain string
    The domain associated with the entity, if any.
    Email string
    The email address associated with the entity, if any.
    Entity string
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    EntityId string
    The ID for the entity, if any.
    Etag string
    HTTP 1.1 Entity tag for the access-control entry.
    Generation string
    The content generation of the object, if applied to an object.
    Id string
    The ID of the access-control entry.
    Kind string
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    Object string
    The name of the object, if applied to an object.
    ProjectTeam Pulumi.GoogleNative.Storage.V1.Inputs.DefaultObjectAccessControlProjectTeam
    The project team associated with the entity, if any.
    Role string
    The access permission for the entity.
    SelfLink string
    The link to this access-control entry.
    UserProject string
    The project to be billed for this request. Required for Requester Pays buckets.
    Bucket string
    The name of the bucket.
    Domain string
    The domain associated with the entity, if any.
    Email string
    The email address associated with the entity, if any.
    Entity string
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    EntityId string
    The ID for the entity, if any.
    Etag string
    HTTP 1.1 Entity tag for the access-control entry.
    Generation string
    The content generation of the object, if applied to an object.
    Id string
    The ID of the access-control entry.
    Kind string
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    Object string
    The name of the object, if applied to an object.
    ProjectTeam DefaultObjectAccessControlProjectTeamArgs
    The project team associated with the entity, if any.
    Role string
    The access permission for the entity.
    SelfLink string
    The link to this access-control entry.
    UserProject string
    The project to be billed for this request. Required for Requester Pays buckets.
    bucket String
    The name of the bucket.
    domain String
    The domain associated with the entity, if any.
    email String
    The email address associated with the entity, if any.
    entity String
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entityId String
    The ID for the entity, if any.
    etag String
    HTTP 1.1 Entity tag for the access-control entry.
    generation String
    The content generation of the object, if applied to an object.
    id String
    The ID of the access-control entry.
    kind String
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    object String
    The name of the object, if applied to an object.
    projectTeam DefaultObjectAccessControlProjectTeam
    The project team associated with the entity, if any.
    role String
    The access permission for the entity.
    selfLink String
    The link to this access-control entry.
    userProject String
    The project to be billed for this request. Required for Requester Pays buckets.
    bucket string
    The name of the bucket.
    domain string
    The domain associated with the entity, if any.
    email string
    The email address associated with the entity, if any.
    entity string
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entityId string
    The ID for the entity, if any.
    etag string
    HTTP 1.1 Entity tag for the access-control entry.
    generation string
    The content generation of the object, if applied to an object.
    id string
    The ID of the access-control entry.
    kind string
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    object string
    The name of the object, if applied to an object.
    projectTeam DefaultObjectAccessControlProjectTeam
    The project team associated with the entity, if any.
    role string
    The access permission for the entity.
    selfLink string
    The link to this access-control entry.
    userProject string
    The project to be billed for this request. Required for Requester Pays buckets.
    bucket str
    The name of the bucket.
    domain str
    The domain associated with the entity, if any.
    email str
    The email address associated with the entity, if any.
    entity str
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entity_id str
    The ID for the entity, if any.
    etag str
    HTTP 1.1 Entity tag for the access-control entry.
    generation str
    The content generation of the object, if applied to an object.
    id str
    The ID of the access-control entry.
    kind str
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    object str
    The name of the object, if applied to an object.
    project_team DefaultObjectAccessControlProjectTeamArgs
    The project team associated with the entity, if any.
    role str
    The access permission for the entity.
    self_link str
    The link to this access-control entry.
    user_project str
    The project to be billed for this request. Required for Requester Pays buckets.
    bucket String
    The name of the bucket.
    domain String
    The domain associated with the entity, if any.
    email String
    The email address associated with the entity, if any.
    entity String
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entityId String
    The ID for the entity, if any.
    etag String
    HTTP 1.1 Entity tag for the access-control entry.
    generation String
    The content generation of the object, if applied to an object.
    id String
    The ID of the access-control entry.
    kind String
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    object String
    The name of the object, if applied to an object.
    projectTeam Property Map
    The project team associated with the entity, if any.
    role String
    The access permission for the entity.
    selfLink String
    The link to this access-control entry.
    userProject String
    The project to be billed for this request. Required for Requester Pays buckets.

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Supporting Types

    DefaultObjectAccessControlProjectTeam, DefaultObjectAccessControlProjectTeamArgs

    ProjectNumber string
    The project number.
    Team string
    The team.
    ProjectNumber string
    The project number.
    Team string
    The team.
    projectNumber String
    The project number.
    team String
    The team.
    projectNumber string
    The project number.
    team string
    The team.
    project_number str
    The project number.
    team str
    The team.
    projectNumber String
    The project number.
    team String
    The team.

    DefaultObjectAccessControlProjectTeamResponse, DefaultObjectAccessControlProjectTeamResponseArgs

    ProjectNumber string
    The project number.
    Team string
    The team.
    ProjectNumber string
    The project number.
    Team string
    The team.
    projectNumber String
    The project number.
    team String
    The team.
    projectNumber string
    The project number.
    team string
    The team.
    project_number str
    The project number.
    team str
    The team.
    projectNumber String
    The project number.
    team String
    The team.

    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