1. Packages
  2. Linode Provider
  3. API Docs
  4. User
Linode v4.30.0 published on Friday, Nov 8, 2024 by Pulumi

linode.User

Explore with Pulumi AI

linode logo
Linode v4.30.0 published on Friday, Nov 8, 2024 by Pulumi

    Manages a Linode User. For more information, see the Linode APIv4 docs.

    Example Usage

    Create an unrestricted user:

    import * as pulumi from "@pulumi/pulumi";
    import * as linode from "@pulumi/linode";
    
    const john = new linode.User("john", {
        username: "john123",
        email: "john@acme.io",
    });
    
    import pulumi
    import pulumi_linode as linode
    
    john = linode.User("john",
        username="john123",
        email="john@acme.io")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-linode/sdk/v4/go/linode"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := linode.NewUser(ctx, "john", &linode.UserArgs{
    			Username: pulumi.String("john123"),
    			Email:    pulumi.String("john@acme.io"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Linode = Pulumi.Linode;
    
    return await Deployment.RunAsync(() => 
    {
        var john = new Linode.User("john", new()
        {
            Username = "john123",
            Email = "john@acme.io",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.linode.User;
    import com.pulumi.linode.UserArgs;
    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 john = new User("john", UserArgs.builder()
                .username("john123")
                .email("john@acme.io")
                .build());
    
        }
    }
    
    resources:
      john:
        type: linode:User
        properties:
          username: john123
          email: john@acme.io
    

    Create a restricted user with grants:

    import * as pulumi from "@pulumi/pulumi";
    import * as linode from "@pulumi/linode";
    
    const fooser = new linode.User("fooser", {
        username: "cooluser123",
        email: "cool@acme.io",
        restricted: true,
        globalGrants: {
            addLinodes: true,
            addImages: true,
        },
        linodeGrants: [{
            id: 12345,
            permissions: "read_write",
        }],
    });
    
    import pulumi
    import pulumi_linode as linode
    
    fooser = linode.User("fooser",
        username="cooluser123",
        email="cool@acme.io",
        restricted=True,
        global_grants={
            "add_linodes": True,
            "add_images": True,
        },
        linode_grants=[{
            "id": 12345,
            "permissions": "read_write",
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-linode/sdk/v4/go/linode"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := linode.NewUser(ctx, "fooser", &linode.UserArgs{
    			Username:   pulumi.String("cooluser123"),
    			Email:      pulumi.String("cool@acme.io"),
    			Restricted: pulumi.Bool(true),
    			GlobalGrants: &linode.UserGlobalGrantsArgs{
    				AddLinodes: pulumi.Bool(true),
    				AddImages:  pulumi.Bool(true),
    			},
    			LinodeGrants: linode.UserLinodeGrantArray{
    				&linode.UserLinodeGrantArgs{
    					Id:          pulumi.Int(12345),
    					Permissions: pulumi.String("read_write"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Linode = Pulumi.Linode;
    
    return await Deployment.RunAsync(() => 
    {
        var fooser = new Linode.User("fooser", new()
        {
            Username = "cooluser123",
            Email = "cool@acme.io",
            Restricted = true,
            GlobalGrants = new Linode.Inputs.UserGlobalGrantsArgs
            {
                AddLinodes = true,
                AddImages = true,
            },
            LinodeGrants = new[]
            {
                new Linode.Inputs.UserLinodeGrantArgs
                {
                    Id = 12345,
                    Permissions = "read_write",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.linode.User;
    import com.pulumi.linode.UserArgs;
    import com.pulumi.linode.inputs.UserGlobalGrantsArgs;
    import com.pulumi.linode.inputs.UserLinodeGrantArgs;
    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 fooser = new User("fooser", UserArgs.builder()
                .username("cooluser123")
                .email("cool@acme.io")
                .restricted(true)
                .globalGrants(UserGlobalGrantsArgs.builder()
                    .addLinodes(true)
                    .addImages(true)
                    .build())
                .linodeGrants(UserLinodeGrantArgs.builder()
                    .id(12345)
                    .permissions("read_write")
                    .build())
                .build());
    
        }
    }
    
    resources:
      fooser:
        type: linode:User
        properties:
          username: cooluser123
          email: cool@acme.io
          restricted: true
          globalGrants:
            addLinodes: true
            addImages: true
          linodeGrants:
            - id: 12345
              permissions: read_write
    

    Global Grants

    • account_access - (optional) The level of access this User has to Account-level actions, like billing information. (read_only, read_write)

    • add_domains - (optional) If true, this User may add Domains.

    • add_databases - (optional) If true, this User may add Databases.

    • add_firewalls - (optional) If true, this User may add Firewalls.

    • add_images - (optional) If true, this User may add Images.

    • add_linodes - (optional) If true, this User may create Linodes.

    • add_longview - (optional) If true, this User may create Longview clients and view the current plan.

    • add_nodebalancers - (optional) If true, this User may add NodeBalancers.

    • add_stackscripts - (optional) If true, this User may add StackScripts.

    • cancel_account - (optional) If true, this User may cancel the entire Account.

    • longview_subscription - (optional) If true, this User may manage the Account’s Longview subscription.

    Entity Grants

    • id - (required) The ID of the entity this grant applies to.

    • permissions - (required) The level of access this User has to this entity. (read_only, read_write)

    Create User Resource

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

    Constructor syntax

    new User(name: string, args: UserArgs, opts?: CustomResourceOptions);
    @overload
    def User(resource_name: str,
             args: UserArgs,
             opts: Optional[ResourceOptions] = None)
    
    @overload
    def User(resource_name: str,
             opts: Optional[ResourceOptions] = None,
             email: Optional[str] = None,
             username: Optional[str] = None,
             domain_grants: Optional[Sequence[UserDomainGrantArgs]] = None,
             firewall_grants: Optional[Sequence[UserFirewallGrantArgs]] = None,
             global_grants: Optional[UserGlobalGrantsArgs] = None,
             image_grants: Optional[Sequence[UserImageGrantArgs]] = None,
             linode_grants: Optional[Sequence[UserLinodeGrantArgs]] = None,
             longview_grants: Optional[Sequence[UserLongviewGrantArgs]] = None,
             nodebalancer_grants: Optional[Sequence[UserNodebalancerGrantArgs]] = None,
             restricted: Optional[bool] = None,
             stackscript_grants: Optional[Sequence[UserStackscriptGrantArgs]] = None,
             volume_grants: Optional[Sequence[UserVolumeGrantArgs]] = None)
    func NewUser(ctx *Context, name string, args UserArgs, opts ...ResourceOption) (*User, error)
    public User(string name, UserArgs args, CustomResourceOptions? opts = null)
    public User(String name, UserArgs args)
    public User(String name, UserArgs args, CustomResourceOptions options)
    
    type: linode:User
    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 UserArgs
    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 UserArgs
    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 UserArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args UserArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args UserArgs
    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 userResource = new Linode.User("userResource", new()
    {
        Email = "string",
        Username = "string",
        DomainGrants = new[]
        {
            new Linode.Inputs.UserDomainGrantArgs
            {
                Id = 0,
                Permissions = "string",
            },
        },
        FirewallGrants = new[]
        {
            new Linode.Inputs.UserFirewallGrantArgs
            {
                Id = 0,
                Permissions = "string",
            },
        },
        GlobalGrants = new Linode.Inputs.UserGlobalGrantsArgs
        {
            AccountAccess = "string",
            AddDatabases = false,
            AddDomains = false,
            AddFirewalls = false,
            AddImages = false,
            AddLinodes = false,
            AddLongview = false,
            AddNodebalancers = false,
            AddStackscripts = false,
            AddVolumes = false,
            CancelAccount = false,
            LongviewSubscription = false,
        },
        ImageGrants = new[]
        {
            new Linode.Inputs.UserImageGrantArgs
            {
                Id = 0,
                Permissions = "string",
            },
        },
        LinodeGrants = new[]
        {
            new Linode.Inputs.UserLinodeGrantArgs
            {
                Id = 0,
                Permissions = "string",
            },
        },
        LongviewGrants = new[]
        {
            new Linode.Inputs.UserLongviewGrantArgs
            {
                Id = 0,
                Permissions = "string",
            },
        },
        NodebalancerGrants = new[]
        {
            new Linode.Inputs.UserNodebalancerGrantArgs
            {
                Id = 0,
                Permissions = "string",
            },
        },
        Restricted = false,
        StackscriptGrants = new[]
        {
            new Linode.Inputs.UserStackscriptGrantArgs
            {
                Id = 0,
                Permissions = "string",
            },
        },
        VolumeGrants = new[]
        {
            new Linode.Inputs.UserVolumeGrantArgs
            {
                Id = 0,
                Permissions = "string",
            },
        },
    });
    
    example, err := linode.NewUser(ctx, "userResource", &linode.UserArgs{
    	Email:    pulumi.String("string"),
    	Username: pulumi.String("string"),
    	DomainGrants: linode.UserDomainGrantArray{
    		&linode.UserDomainGrantArgs{
    			Id:          pulumi.Int(0),
    			Permissions: pulumi.String("string"),
    		},
    	},
    	FirewallGrants: linode.UserFirewallGrantArray{
    		&linode.UserFirewallGrantArgs{
    			Id:          pulumi.Int(0),
    			Permissions: pulumi.String("string"),
    		},
    	},
    	GlobalGrants: &linode.UserGlobalGrantsArgs{
    		AccountAccess:        pulumi.String("string"),
    		AddDatabases:         pulumi.Bool(false),
    		AddDomains:           pulumi.Bool(false),
    		AddFirewalls:         pulumi.Bool(false),
    		AddImages:            pulumi.Bool(false),
    		AddLinodes:           pulumi.Bool(false),
    		AddLongview:          pulumi.Bool(false),
    		AddNodebalancers:     pulumi.Bool(false),
    		AddStackscripts:      pulumi.Bool(false),
    		AddVolumes:           pulumi.Bool(false),
    		CancelAccount:        pulumi.Bool(false),
    		LongviewSubscription: pulumi.Bool(false),
    	},
    	ImageGrants: linode.UserImageGrantArray{
    		&linode.UserImageGrantArgs{
    			Id:          pulumi.Int(0),
    			Permissions: pulumi.String("string"),
    		},
    	},
    	LinodeGrants: linode.UserLinodeGrantArray{
    		&linode.UserLinodeGrantArgs{
    			Id:          pulumi.Int(0),
    			Permissions: pulumi.String("string"),
    		},
    	},
    	LongviewGrants: linode.UserLongviewGrantArray{
    		&linode.UserLongviewGrantArgs{
    			Id:          pulumi.Int(0),
    			Permissions: pulumi.String("string"),
    		},
    	},
    	NodebalancerGrants: linode.UserNodebalancerGrantArray{
    		&linode.UserNodebalancerGrantArgs{
    			Id:          pulumi.Int(0),
    			Permissions: pulumi.String("string"),
    		},
    	},
    	Restricted: pulumi.Bool(false),
    	StackscriptGrants: linode.UserStackscriptGrantArray{
    		&linode.UserStackscriptGrantArgs{
    			Id:          pulumi.Int(0),
    			Permissions: pulumi.String("string"),
    		},
    	},
    	VolumeGrants: linode.UserVolumeGrantArray{
    		&linode.UserVolumeGrantArgs{
    			Id:          pulumi.Int(0),
    			Permissions: pulumi.String("string"),
    		},
    	},
    })
    
    var userResource = new User("userResource", UserArgs.builder()
        .email("string")
        .username("string")
        .domainGrants(UserDomainGrantArgs.builder()
            .id(0)
            .permissions("string")
            .build())
        .firewallGrants(UserFirewallGrantArgs.builder()
            .id(0)
            .permissions("string")
            .build())
        .globalGrants(UserGlobalGrantsArgs.builder()
            .accountAccess("string")
            .addDatabases(false)
            .addDomains(false)
            .addFirewalls(false)
            .addImages(false)
            .addLinodes(false)
            .addLongview(false)
            .addNodebalancers(false)
            .addStackscripts(false)
            .addVolumes(false)
            .cancelAccount(false)
            .longviewSubscription(false)
            .build())
        .imageGrants(UserImageGrantArgs.builder()
            .id(0)
            .permissions("string")
            .build())
        .linodeGrants(UserLinodeGrantArgs.builder()
            .id(0)
            .permissions("string")
            .build())
        .longviewGrants(UserLongviewGrantArgs.builder()
            .id(0)
            .permissions("string")
            .build())
        .nodebalancerGrants(UserNodebalancerGrantArgs.builder()
            .id(0)
            .permissions("string")
            .build())
        .restricted(false)
        .stackscriptGrants(UserStackscriptGrantArgs.builder()
            .id(0)
            .permissions("string")
            .build())
        .volumeGrants(UserVolumeGrantArgs.builder()
            .id(0)
            .permissions("string")
            .build())
        .build());
    
    user_resource = linode.User("userResource",
        email="string",
        username="string",
        domain_grants=[{
            "id": 0,
            "permissions": "string",
        }],
        firewall_grants=[{
            "id": 0,
            "permissions": "string",
        }],
        global_grants={
            "account_access": "string",
            "add_databases": False,
            "add_domains": False,
            "add_firewalls": False,
            "add_images": False,
            "add_linodes": False,
            "add_longview": False,
            "add_nodebalancers": False,
            "add_stackscripts": False,
            "add_volumes": False,
            "cancel_account": False,
            "longview_subscription": False,
        },
        image_grants=[{
            "id": 0,
            "permissions": "string",
        }],
        linode_grants=[{
            "id": 0,
            "permissions": "string",
        }],
        longview_grants=[{
            "id": 0,
            "permissions": "string",
        }],
        nodebalancer_grants=[{
            "id": 0,
            "permissions": "string",
        }],
        restricted=False,
        stackscript_grants=[{
            "id": 0,
            "permissions": "string",
        }],
        volume_grants=[{
            "id": 0,
            "permissions": "string",
        }])
    
    const userResource = new linode.User("userResource", {
        email: "string",
        username: "string",
        domainGrants: [{
            id: 0,
            permissions: "string",
        }],
        firewallGrants: [{
            id: 0,
            permissions: "string",
        }],
        globalGrants: {
            accountAccess: "string",
            addDatabases: false,
            addDomains: false,
            addFirewalls: false,
            addImages: false,
            addLinodes: false,
            addLongview: false,
            addNodebalancers: false,
            addStackscripts: false,
            addVolumes: false,
            cancelAccount: false,
            longviewSubscription: false,
        },
        imageGrants: [{
            id: 0,
            permissions: "string",
        }],
        linodeGrants: [{
            id: 0,
            permissions: "string",
        }],
        longviewGrants: [{
            id: 0,
            permissions: "string",
        }],
        nodebalancerGrants: [{
            id: 0,
            permissions: "string",
        }],
        restricted: false,
        stackscriptGrants: [{
            id: 0,
            permissions: "string",
        }],
        volumeGrants: [{
            id: 0,
            permissions: "string",
        }],
    });
    
    type: linode:User
    properties:
        domainGrants:
            - id: 0
              permissions: string
        email: string
        firewallGrants:
            - id: 0
              permissions: string
        globalGrants:
            accountAccess: string
            addDatabases: false
            addDomains: false
            addFirewalls: false
            addImages: false
            addLinodes: false
            addLongview: false
            addNodebalancers: false
            addStackscripts: false
            addVolumes: false
            cancelAccount: false
            longviewSubscription: false
        imageGrants:
            - id: 0
              permissions: string
        linodeGrants:
            - id: 0
              permissions: string
        longviewGrants:
            - id: 0
              permissions: string
        nodebalancerGrants:
            - id: 0
              permissions: string
        restricted: false
        stackscriptGrants:
            - id: 0
              permissions: string
        username: string
        volumeGrants:
            - id: 0
              permissions: string
    

    User Resource Properties

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

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The User resource accepts the following input properties:

    Email string
    The email address of the user.
    Username string
    The username of the user.
    DomainGrants List<UserDomainGrant>
    The domains the user has permissions access to.
    FirewallGrants List<UserFirewallGrant>
    The firewalls the user has permissions access to.
    GlobalGrants UserGlobalGrants
    A structure containing the Account-level grants a User has.
    ImageGrants List<UserImageGrant>
    The images the user has permissions access to.
    LinodeGrants List<UserLinodeGrant>
    The Linodes the user has permissions access to.
    LongviewGrants List<UserLongviewGrant>
    The longview the user has permissions access to.
    NodebalancerGrants List<UserNodebalancerGrant>
    The NodeBalancers the user has permissions access to.
    Restricted bool

    If true, this user will only have explicit permissions granted.

    • global_grants - (optional) A structure containing the Account-level grants a User has.

    The following arguments are sets of entity grants:

    StackscriptGrants List<UserStackscriptGrant>
    The StackScripts the user has permissions access to.
    VolumeGrants List<UserVolumeGrant>
    The volumes the user has permissions access to.
    Email string
    The email address of the user.
    Username string
    The username of the user.
    DomainGrants []UserDomainGrantArgs
    The domains the user has permissions access to.
    FirewallGrants []UserFirewallGrantArgs
    The firewalls the user has permissions access to.
    GlobalGrants UserGlobalGrantsArgs
    A structure containing the Account-level grants a User has.
    ImageGrants []UserImageGrantArgs
    The images the user has permissions access to.
    LinodeGrants []UserLinodeGrantArgs
    The Linodes the user has permissions access to.
    LongviewGrants []UserLongviewGrantArgs
    The longview the user has permissions access to.
    NodebalancerGrants []UserNodebalancerGrantArgs
    The NodeBalancers the user has permissions access to.
    Restricted bool

    If true, this user will only have explicit permissions granted.

    • global_grants - (optional) A structure containing the Account-level grants a User has.

    The following arguments are sets of entity grants:

    StackscriptGrants []UserStackscriptGrantArgs
    The StackScripts the user has permissions access to.
    VolumeGrants []UserVolumeGrantArgs
    The volumes the user has permissions access to.
    email String
    The email address of the user.
    username String
    The username of the user.
    domainGrants List<UserDomainGrant>
    The domains the user has permissions access to.
    firewallGrants List<UserFirewallGrant>
    The firewalls the user has permissions access to.
    globalGrants UserGlobalGrants
    A structure containing the Account-level grants a User has.
    imageGrants List<UserImageGrant>
    The images the user has permissions access to.
    linodeGrants List<UserLinodeGrant>
    The Linodes the user has permissions access to.
    longviewGrants List<UserLongviewGrant>
    The longview the user has permissions access to.
    nodebalancerGrants List<UserNodebalancerGrant>
    The NodeBalancers the user has permissions access to.
    restricted Boolean

    If true, this user will only have explicit permissions granted.

    • global_grants - (optional) A structure containing the Account-level grants a User has.

    The following arguments are sets of entity grants:

    stackscriptGrants List<UserStackscriptGrant>
    The StackScripts the user has permissions access to.
    volumeGrants List<UserVolumeGrant>
    The volumes the user has permissions access to.
    email string
    The email address of the user.
    username string
    The username of the user.
    domainGrants UserDomainGrant[]
    The domains the user has permissions access to.
    firewallGrants UserFirewallGrant[]
    The firewalls the user has permissions access to.
    globalGrants UserGlobalGrants
    A structure containing the Account-level grants a User has.
    imageGrants UserImageGrant[]
    The images the user has permissions access to.
    linodeGrants UserLinodeGrant[]
    The Linodes the user has permissions access to.
    longviewGrants UserLongviewGrant[]
    The longview the user has permissions access to.
    nodebalancerGrants UserNodebalancerGrant[]
    The NodeBalancers the user has permissions access to.
    restricted boolean

    If true, this user will only have explicit permissions granted.

    • global_grants - (optional) A structure containing the Account-level grants a User has.

    The following arguments are sets of entity grants:

    stackscriptGrants UserStackscriptGrant[]
    The StackScripts the user has permissions access to.
    volumeGrants UserVolumeGrant[]
    The volumes the user has permissions access to.
    email str
    The email address of the user.
    username str
    The username of the user.
    domain_grants Sequence[UserDomainGrantArgs]
    The domains the user has permissions access to.
    firewall_grants Sequence[UserFirewallGrantArgs]
    The firewalls the user has permissions access to.
    global_grants UserGlobalGrantsArgs
    A structure containing the Account-level grants a User has.
    image_grants Sequence[UserImageGrantArgs]
    The images the user has permissions access to.
    linode_grants Sequence[UserLinodeGrantArgs]
    The Linodes the user has permissions access to.
    longview_grants Sequence[UserLongviewGrantArgs]
    The longview the user has permissions access to.
    nodebalancer_grants Sequence[UserNodebalancerGrantArgs]
    The NodeBalancers the user has permissions access to.
    restricted bool

    If true, this user will only have explicit permissions granted.

    • global_grants - (optional) A structure containing the Account-level grants a User has.

    The following arguments are sets of entity grants:

    stackscript_grants Sequence[UserStackscriptGrantArgs]
    The StackScripts the user has permissions access to.
    volume_grants Sequence[UserVolumeGrantArgs]
    The volumes the user has permissions access to.
    email String
    The email address of the user.
    username String
    The username of the user.
    domainGrants List<Property Map>
    The domains the user has permissions access to.
    firewallGrants List<Property Map>
    The firewalls the user has permissions access to.
    globalGrants Property Map
    A structure containing the Account-level grants a User has.
    imageGrants List<Property Map>
    The images the user has permissions access to.
    linodeGrants List<Property Map>
    The Linodes the user has permissions access to.
    longviewGrants List<Property Map>
    The longview the user has permissions access to.
    nodebalancerGrants List<Property Map>
    The NodeBalancers the user has permissions access to.
    restricted Boolean

    If true, this user will only have explicit permissions granted.

    • global_grants - (optional) A structure containing the Account-level grants a User has.

    The following arguments are sets of entity grants:

    stackscriptGrants List<Property Map>
    The StackScripts the user has permissions access to.
    volumeGrants List<Property Map>
    The volumes the user has permissions access to.

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    SshKeys List<string>
    A list of the User's SSH keys.
    TfaEnabled bool
    Whether the user has two-factor-authentication enabled.
    UserType string
    The type of this user.
    Id string
    The provider-assigned unique ID for this managed resource.
    SshKeys []string
    A list of the User's SSH keys.
    TfaEnabled bool
    Whether the user has two-factor-authentication enabled.
    UserType string
    The type of this user.
    id String
    The provider-assigned unique ID for this managed resource.
    sshKeys List<String>
    A list of the User's SSH keys.
    tfaEnabled Boolean
    Whether the user has two-factor-authentication enabled.
    userType String
    The type of this user.
    id string
    The provider-assigned unique ID for this managed resource.
    sshKeys string[]
    A list of the User's SSH keys.
    tfaEnabled boolean
    Whether the user has two-factor-authentication enabled.
    userType string
    The type of this user.
    id str
    The provider-assigned unique ID for this managed resource.
    ssh_keys Sequence[str]
    A list of the User's SSH keys.
    tfa_enabled bool
    Whether the user has two-factor-authentication enabled.
    user_type str
    The type of this user.
    id String
    The provider-assigned unique ID for this managed resource.
    sshKeys List<String>
    A list of the User's SSH keys.
    tfaEnabled Boolean
    Whether the user has two-factor-authentication enabled.
    userType String
    The type of this user.

    Look up Existing User Resource

    Get an existing User resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: UserState, opts?: CustomResourceOptions): User
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            domain_grants: Optional[Sequence[UserDomainGrantArgs]] = None,
            email: Optional[str] = None,
            firewall_grants: Optional[Sequence[UserFirewallGrantArgs]] = None,
            global_grants: Optional[UserGlobalGrantsArgs] = None,
            image_grants: Optional[Sequence[UserImageGrantArgs]] = None,
            linode_grants: Optional[Sequence[UserLinodeGrantArgs]] = None,
            longview_grants: Optional[Sequence[UserLongviewGrantArgs]] = None,
            nodebalancer_grants: Optional[Sequence[UserNodebalancerGrantArgs]] = None,
            restricted: Optional[bool] = None,
            ssh_keys: Optional[Sequence[str]] = None,
            stackscript_grants: Optional[Sequence[UserStackscriptGrantArgs]] = None,
            tfa_enabled: Optional[bool] = None,
            user_type: Optional[str] = None,
            username: Optional[str] = None,
            volume_grants: Optional[Sequence[UserVolumeGrantArgs]] = None) -> User
    func GetUser(ctx *Context, name string, id IDInput, state *UserState, opts ...ResourceOption) (*User, error)
    public static User Get(string name, Input<string> id, UserState? state, CustomResourceOptions? opts = null)
    public static User get(String name, Output<String> id, UserState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    DomainGrants List<UserDomainGrant>
    The domains the user has permissions access to.
    Email string
    The email address of the user.
    FirewallGrants List<UserFirewallGrant>
    The firewalls the user has permissions access to.
    GlobalGrants UserGlobalGrants
    A structure containing the Account-level grants a User has.
    ImageGrants List<UserImageGrant>
    The images the user has permissions access to.
    LinodeGrants List<UserLinodeGrant>
    The Linodes the user has permissions access to.
    LongviewGrants List<UserLongviewGrant>
    The longview the user has permissions access to.
    NodebalancerGrants List<UserNodebalancerGrant>
    The NodeBalancers the user has permissions access to.
    Restricted bool

    If true, this user will only have explicit permissions granted.

    • global_grants - (optional) A structure containing the Account-level grants a User has.

    The following arguments are sets of entity grants:

    SshKeys List<string>
    A list of the User's SSH keys.
    StackscriptGrants List<UserStackscriptGrant>
    The StackScripts the user has permissions access to.
    TfaEnabled bool
    Whether the user has two-factor-authentication enabled.
    UserType string
    The type of this user.
    Username string
    The username of the user.
    VolumeGrants List<UserVolumeGrant>
    The volumes the user has permissions access to.
    DomainGrants []UserDomainGrantArgs
    The domains the user has permissions access to.
    Email string
    The email address of the user.
    FirewallGrants []UserFirewallGrantArgs
    The firewalls the user has permissions access to.
    GlobalGrants UserGlobalGrantsArgs
    A structure containing the Account-level grants a User has.
    ImageGrants []UserImageGrantArgs
    The images the user has permissions access to.
    LinodeGrants []UserLinodeGrantArgs
    The Linodes the user has permissions access to.
    LongviewGrants []UserLongviewGrantArgs
    The longview the user has permissions access to.
    NodebalancerGrants []UserNodebalancerGrantArgs
    The NodeBalancers the user has permissions access to.
    Restricted bool

    If true, this user will only have explicit permissions granted.

    • global_grants - (optional) A structure containing the Account-level grants a User has.

    The following arguments are sets of entity grants:

    SshKeys []string
    A list of the User's SSH keys.
    StackscriptGrants []UserStackscriptGrantArgs
    The StackScripts the user has permissions access to.
    TfaEnabled bool
    Whether the user has two-factor-authentication enabled.
    UserType string
    The type of this user.
    Username string
    The username of the user.
    VolumeGrants []UserVolumeGrantArgs
    The volumes the user has permissions access to.
    domainGrants List<UserDomainGrant>
    The domains the user has permissions access to.
    email String
    The email address of the user.
    firewallGrants List<UserFirewallGrant>
    The firewalls the user has permissions access to.
    globalGrants UserGlobalGrants
    A structure containing the Account-level grants a User has.
    imageGrants List<UserImageGrant>
    The images the user has permissions access to.
    linodeGrants List<UserLinodeGrant>
    The Linodes the user has permissions access to.
    longviewGrants List<UserLongviewGrant>
    The longview the user has permissions access to.
    nodebalancerGrants List<UserNodebalancerGrant>
    The NodeBalancers the user has permissions access to.
    restricted Boolean

    If true, this user will only have explicit permissions granted.

    • global_grants - (optional) A structure containing the Account-level grants a User has.

    The following arguments are sets of entity grants:

    sshKeys List<String>
    A list of the User's SSH keys.
    stackscriptGrants List<UserStackscriptGrant>
    The StackScripts the user has permissions access to.
    tfaEnabled Boolean
    Whether the user has two-factor-authentication enabled.
    userType String
    The type of this user.
    username String
    The username of the user.
    volumeGrants List<UserVolumeGrant>
    The volumes the user has permissions access to.
    domainGrants UserDomainGrant[]
    The domains the user has permissions access to.
    email string
    The email address of the user.
    firewallGrants UserFirewallGrant[]
    The firewalls the user has permissions access to.
    globalGrants UserGlobalGrants
    A structure containing the Account-level grants a User has.
    imageGrants UserImageGrant[]
    The images the user has permissions access to.
    linodeGrants UserLinodeGrant[]
    The Linodes the user has permissions access to.
    longviewGrants UserLongviewGrant[]
    The longview the user has permissions access to.
    nodebalancerGrants UserNodebalancerGrant[]
    The NodeBalancers the user has permissions access to.
    restricted boolean

    If true, this user will only have explicit permissions granted.

    • global_grants - (optional) A structure containing the Account-level grants a User has.

    The following arguments are sets of entity grants:

    sshKeys string[]
    A list of the User's SSH keys.
    stackscriptGrants UserStackscriptGrant[]
    The StackScripts the user has permissions access to.
    tfaEnabled boolean
    Whether the user has two-factor-authentication enabled.
    userType string
    The type of this user.
    username string
    The username of the user.
    volumeGrants UserVolumeGrant[]
    The volumes the user has permissions access to.
    domain_grants Sequence[UserDomainGrantArgs]
    The domains the user has permissions access to.
    email str
    The email address of the user.
    firewall_grants Sequence[UserFirewallGrantArgs]
    The firewalls the user has permissions access to.
    global_grants UserGlobalGrantsArgs
    A structure containing the Account-level grants a User has.
    image_grants Sequence[UserImageGrantArgs]
    The images the user has permissions access to.
    linode_grants Sequence[UserLinodeGrantArgs]
    The Linodes the user has permissions access to.
    longview_grants Sequence[UserLongviewGrantArgs]
    The longview the user has permissions access to.
    nodebalancer_grants Sequence[UserNodebalancerGrantArgs]
    The NodeBalancers the user has permissions access to.
    restricted bool

    If true, this user will only have explicit permissions granted.

    • global_grants - (optional) A structure containing the Account-level grants a User has.

    The following arguments are sets of entity grants:

    ssh_keys Sequence[str]
    A list of the User's SSH keys.
    stackscript_grants Sequence[UserStackscriptGrantArgs]
    The StackScripts the user has permissions access to.
    tfa_enabled bool
    Whether the user has two-factor-authentication enabled.
    user_type str
    The type of this user.
    username str
    The username of the user.
    volume_grants Sequence[UserVolumeGrantArgs]
    The volumes the user has permissions access to.
    domainGrants List<Property Map>
    The domains the user has permissions access to.
    email String
    The email address of the user.
    firewallGrants List<Property Map>
    The firewalls the user has permissions access to.
    globalGrants Property Map
    A structure containing the Account-level grants a User has.
    imageGrants List<Property Map>
    The images the user has permissions access to.
    linodeGrants List<Property Map>
    The Linodes the user has permissions access to.
    longviewGrants List<Property Map>
    The longview the user has permissions access to.
    nodebalancerGrants List<Property Map>
    The NodeBalancers the user has permissions access to.
    restricted Boolean

    If true, this user will only have explicit permissions granted.

    • global_grants - (optional) A structure containing the Account-level grants a User has.

    The following arguments are sets of entity grants:

    sshKeys List<String>
    A list of the User's SSH keys.
    stackscriptGrants List<Property Map>
    The StackScripts the user has permissions access to.
    tfaEnabled Boolean
    Whether the user has two-factor-authentication enabled.
    userType String
    The type of this user.
    username String
    The username of the user.
    volumeGrants List<Property Map>
    The volumes the user has permissions access to.

    Supporting Types

    UserDomainGrant, UserDomainGrantArgs

    Id int
    The ID of the entity this grant applies to.
    Permissions string
    The level of access this User has to this entity. If null, this User has no access.
    Id int
    The ID of the entity this grant applies to.
    Permissions string
    The level of access this User has to this entity. If null, this User has no access.
    id Integer
    The ID of the entity this grant applies to.
    permissions String
    The level of access this User has to this entity. If null, this User has no access.
    id number
    The ID of the entity this grant applies to.
    permissions string
    The level of access this User has to this entity. If null, this User has no access.
    id int
    The ID of the entity this grant applies to.
    permissions str
    The level of access this User has to this entity. If null, this User has no access.
    id Number
    The ID of the entity this grant applies to.
    permissions String
    The level of access this User has to this entity. If null, this User has no access.

    UserFirewallGrant, UserFirewallGrantArgs

    Id int
    The ID of the entity this grant applies to.
    Permissions string
    The level of access this User has to this entity. If null, this User has no access.
    Id int
    The ID of the entity this grant applies to.
    Permissions string
    The level of access this User has to this entity. If null, this User has no access.
    id Integer
    The ID of the entity this grant applies to.
    permissions String
    The level of access this User has to this entity. If null, this User has no access.
    id number
    The ID of the entity this grant applies to.
    permissions string
    The level of access this User has to this entity. If null, this User has no access.
    id int
    The ID of the entity this grant applies to.
    permissions str
    The level of access this User has to this entity. If null, this User has no access.
    id Number
    The ID of the entity this grant applies to.
    permissions String
    The level of access this User has to this entity. If null, this User has no access.

    UserGlobalGrants, UserGlobalGrantsArgs

    AccountAccess string
    The level of access this User has to Account-level actions, like billing information. A restricted User will never be able to manage users.
    AddDatabases bool
    If true, this User may add Databases.
    AddDomains bool
    If true, this User may add Domains.
    AddFirewalls bool
    If true, this User may add Firewalls.
    AddImages bool
    If true, this User may add Images.
    AddLinodes bool
    If true, this User may create Linodes.
    AddLongview bool
    If true, this User may create Longview clients and view the current plan.
    AddNodebalancers bool
    If true, this User may add NodeBalancers.
    AddStackscripts bool
    If true, this User may add StackScripts.
    AddVolumes bool
    If true, this User may add Volumes.
    CancelAccount bool
    If true, this User may cancel the entire Account.
    LongviewSubscription bool
    If true, this User may manage the Account’s Longview subscription.
    AccountAccess string
    The level of access this User has to Account-level actions, like billing information. A restricted User will never be able to manage users.
    AddDatabases bool
    If true, this User may add Databases.
    AddDomains bool
    If true, this User may add Domains.
    AddFirewalls bool
    If true, this User may add Firewalls.
    AddImages bool
    If true, this User may add Images.
    AddLinodes bool
    If true, this User may create Linodes.
    AddLongview bool
    If true, this User may create Longview clients and view the current plan.
    AddNodebalancers bool
    If true, this User may add NodeBalancers.
    AddStackscripts bool
    If true, this User may add StackScripts.
    AddVolumes bool
    If true, this User may add Volumes.
    CancelAccount bool
    If true, this User may cancel the entire Account.
    LongviewSubscription bool
    If true, this User may manage the Account’s Longview subscription.
    accountAccess String
    The level of access this User has to Account-level actions, like billing information. A restricted User will never be able to manage users.
    addDatabases Boolean
    If true, this User may add Databases.
    addDomains Boolean
    If true, this User may add Domains.
    addFirewalls Boolean
    If true, this User may add Firewalls.
    addImages Boolean
    If true, this User may add Images.
    addLinodes Boolean
    If true, this User may create Linodes.
    addLongview Boolean
    If true, this User may create Longview clients and view the current plan.
    addNodebalancers Boolean
    If true, this User may add NodeBalancers.
    addStackscripts Boolean
    If true, this User may add StackScripts.
    addVolumes Boolean
    If true, this User may add Volumes.
    cancelAccount Boolean
    If true, this User may cancel the entire Account.
    longviewSubscription Boolean
    If true, this User may manage the Account’s Longview subscription.
    accountAccess string
    The level of access this User has to Account-level actions, like billing information. A restricted User will never be able to manage users.
    addDatabases boolean
    If true, this User may add Databases.
    addDomains boolean
    If true, this User may add Domains.
    addFirewalls boolean
    If true, this User may add Firewalls.
    addImages boolean
    If true, this User may add Images.
    addLinodes boolean
    If true, this User may create Linodes.
    addLongview boolean
    If true, this User may create Longview clients and view the current plan.
    addNodebalancers boolean
    If true, this User may add NodeBalancers.
    addStackscripts boolean
    If true, this User may add StackScripts.
    addVolumes boolean
    If true, this User may add Volumes.
    cancelAccount boolean
    If true, this User may cancel the entire Account.
    longviewSubscription boolean
    If true, this User may manage the Account’s Longview subscription.
    account_access str
    The level of access this User has to Account-level actions, like billing information. A restricted User will never be able to manage users.
    add_databases bool
    If true, this User may add Databases.
    add_domains bool
    If true, this User may add Domains.
    add_firewalls bool
    If true, this User may add Firewalls.
    add_images bool
    If true, this User may add Images.
    add_linodes bool
    If true, this User may create Linodes.
    add_longview bool
    If true, this User may create Longview clients and view the current plan.
    add_nodebalancers bool
    If true, this User may add NodeBalancers.
    add_stackscripts bool
    If true, this User may add StackScripts.
    add_volumes bool
    If true, this User may add Volumes.
    cancel_account bool
    If true, this User may cancel the entire Account.
    longview_subscription bool
    If true, this User may manage the Account’s Longview subscription.
    accountAccess String
    The level of access this User has to Account-level actions, like billing information. A restricted User will never be able to manage users.
    addDatabases Boolean
    If true, this User may add Databases.
    addDomains Boolean
    If true, this User may add Domains.
    addFirewalls Boolean
    If true, this User may add Firewalls.
    addImages Boolean
    If true, this User may add Images.
    addLinodes Boolean
    If true, this User may create Linodes.
    addLongview Boolean
    If true, this User may create Longview clients and view the current plan.
    addNodebalancers Boolean
    If true, this User may add NodeBalancers.
    addStackscripts Boolean
    If true, this User may add StackScripts.
    addVolumes Boolean
    If true, this User may add Volumes.
    cancelAccount Boolean
    If true, this User may cancel the entire Account.
    longviewSubscription Boolean
    If true, this User may manage the Account’s Longview subscription.

    UserImageGrant, UserImageGrantArgs

    Id int
    The ID of the entity this grant applies to.
    Permissions string
    The level of access this User has to this entity. If null, this User has no access.
    Id int
    The ID of the entity this grant applies to.
    Permissions string
    The level of access this User has to this entity. If null, this User has no access.
    id Integer
    The ID of the entity this grant applies to.
    permissions String
    The level of access this User has to this entity. If null, this User has no access.
    id number
    The ID of the entity this grant applies to.
    permissions string
    The level of access this User has to this entity. If null, this User has no access.
    id int
    The ID of the entity this grant applies to.
    permissions str
    The level of access this User has to this entity. If null, this User has no access.
    id Number
    The ID of the entity this grant applies to.
    permissions String
    The level of access this User has to this entity. If null, this User has no access.

    UserLinodeGrant, UserLinodeGrantArgs

    Id int
    The ID of the entity this grant applies to.
    Permissions string
    The level of access this User has to this entity. If null, this User has no access.
    Id int
    The ID of the entity this grant applies to.
    Permissions string
    The level of access this User has to this entity. If null, this User has no access.
    id Integer
    The ID of the entity this grant applies to.
    permissions String
    The level of access this User has to this entity. If null, this User has no access.
    id number
    The ID of the entity this grant applies to.
    permissions string
    The level of access this User has to this entity. If null, this User has no access.
    id int
    The ID of the entity this grant applies to.
    permissions str
    The level of access this User has to this entity. If null, this User has no access.
    id Number
    The ID of the entity this grant applies to.
    permissions String
    The level of access this User has to this entity. If null, this User has no access.

    UserLongviewGrant, UserLongviewGrantArgs

    Id int
    The ID of the entity this grant applies to.
    Permissions string
    The level of access this User has to this entity. If null, this User has no access.
    Id int
    The ID of the entity this grant applies to.
    Permissions string
    The level of access this User has to this entity. If null, this User has no access.
    id Integer
    The ID of the entity this grant applies to.
    permissions String
    The level of access this User has to this entity. If null, this User has no access.
    id number
    The ID of the entity this grant applies to.
    permissions string
    The level of access this User has to this entity. If null, this User has no access.
    id int
    The ID of the entity this grant applies to.
    permissions str
    The level of access this User has to this entity. If null, this User has no access.
    id Number
    The ID of the entity this grant applies to.
    permissions String
    The level of access this User has to this entity. If null, this User has no access.

    UserNodebalancerGrant, UserNodebalancerGrantArgs

    Id int
    The ID of the entity this grant applies to.
    Permissions string
    The level of access this User has to this entity. If null, this User has no access.
    Id int
    The ID of the entity this grant applies to.
    Permissions string
    The level of access this User has to this entity. If null, this User has no access.
    id Integer
    The ID of the entity this grant applies to.
    permissions String
    The level of access this User has to this entity. If null, this User has no access.
    id number
    The ID of the entity this grant applies to.
    permissions string
    The level of access this User has to this entity. If null, this User has no access.
    id int
    The ID of the entity this grant applies to.
    permissions str
    The level of access this User has to this entity. If null, this User has no access.
    id Number
    The ID of the entity this grant applies to.
    permissions String
    The level of access this User has to this entity. If null, this User has no access.

    UserStackscriptGrant, UserStackscriptGrantArgs

    Id int
    The ID of the entity this grant applies to.
    Permissions string
    The level of access this User has to this entity. If null, this User has no access.
    Id int
    The ID of the entity this grant applies to.
    Permissions string
    The level of access this User has to this entity. If null, this User has no access.
    id Integer
    The ID of the entity this grant applies to.
    permissions String
    The level of access this User has to this entity. If null, this User has no access.
    id number
    The ID of the entity this grant applies to.
    permissions string
    The level of access this User has to this entity. If null, this User has no access.
    id int
    The ID of the entity this grant applies to.
    permissions str
    The level of access this User has to this entity. If null, this User has no access.
    id Number
    The ID of the entity this grant applies to.
    permissions String
    The level of access this User has to this entity. If null, this User has no access.

    UserVolumeGrant, UserVolumeGrantArgs

    Id int
    The ID of the entity this grant applies to.
    Permissions string
    The level of access this User has to this entity. If null, this User has no access.
    Id int
    The ID of the entity this grant applies to.
    Permissions string
    The level of access this User has to this entity. If null, this User has no access.
    id Integer
    The ID of the entity this grant applies to.
    permissions String
    The level of access this User has to this entity. If null, this User has no access.
    id number
    The ID of the entity this grant applies to.
    permissions string
    The level of access this User has to this entity. If null, this User has no access.
    id int
    The ID of the entity this grant applies to.
    permissions str
    The level of access this User has to this entity. If null, this User has no access.
    id Number
    The ID of the entity this grant applies to.
    permissions String
    The level of access this User has to this entity. If null, this User has no access.

    Package Details

    Repository
    Linode pulumi/pulumi-linode
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the linode Terraform Provider.
    linode logo
    Linode v4.30.0 published on Friday, Nov 8, 2024 by Pulumi