Show / Hide Table of Contents

Namespace Pulumi.OpenStack.Identity

Classes

ApplicationCredential

Manages a V3 Application Credential resource within OpenStack Keystone.

Note: All arguments including the application credential name and secret will be stored in the raw state as plain-text. Read more about sensitive data in state.

Note: An Application Credential is created within the authenticated user project scope and is not visible by an admin or other accounts. The Application Credential visibility is similar to openstack.compute.Keypair.

Example Usage

Predefined secret

using Pulumi;
using OpenStack = Pulumi.OpenStack;

class MyStack : Stack
{
public MyStack()
{
    var swift = new OpenStack.Identity.ApplicationCredential("swift", new OpenStack.Identity.ApplicationCredentialArgs
    {
        Description = "Swift technical application credential",
        ExpiresAt = "2019-02-13T12:12:12Z",
        Roles = 
        {
            "swiftoperator",
        },
        Secret = "supersecret",
    });
}

}

Unrestricted with autogenerated secret and unlimited TTL

using Pulumi;
using OpenStack = Pulumi.OpenStack;

class MyStack : Stack
{
public MyStack()
{
    var unrestricted = new OpenStack.Identity.ApplicationCredential("unrestricted", new OpenStack.Identity.ApplicationCredentialArgs
    {
        Description = "Unrestricted application credential",
        Unrestricted = true,
    });
    this.ApplicationCredentialSecret = unrestricted.Secret;
}

[Output("applicationCredentialSecret")]
public Output<string> ApplicationCredentialSecret { get; set; }
}

Application credential with access rules

using Pulumi;
using OpenStack = Pulumi.OpenStack;

class MyStack : Stack
{
public MyStack()
{
    var monitoring = new OpenStack.Identity.ApplicationCredential("monitoring", new OpenStack.Identity.ApplicationCredentialArgs
    {
        AccessRules = 
        {
            new OpenStack.Identity.Inputs.ApplicationCredentialAccessRuleArgs
            {
                Method = "GET",
                Path = "/v2.0/metrics",
                Service = "monitoring",
            },
            new OpenStack.Identity.Inputs.ApplicationCredentialAccessRuleArgs
            {
                Method = "PUT",
                Path = "/v2.0/metrics",
                Service = "monitoring",
            },
        },
        ExpiresAt = "2019-02-13T12:12:12Z",
    });
}

}

ApplicationCredentialArgs

ApplicationCredentialState

EndpointV3

Manages a V3 Endpoint resource within OpenStack Keystone.

Note: This usually requires admin privileges.

Example Usage

using Pulumi;
using OpenStack = Pulumi.OpenStack;

class MyStack : Stack
{
public MyStack()
{
    var service1 = new OpenStack.Identity.ServiceV3("service1", new OpenStack.Identity.ServiceV3Args
    {
        Type = "my-service-type",
    });
    var endpoint1 = new OpenStack.Identity.EndpointV3("endpoint1", new OpenStack.Identity.EndpointV3Args
    {
        EndpointRegion = service1.Region,
        ServiceId = service1.Id,
        Url = "http://my-endpoint",
    });
}

}

EndpointV3Args

EndpointV3State

GetAuthScope

GetAuthScopeArgs

GetAuthScopeResult

GetEndpoint

GetEndpointArgs

GetEndpointResult

GetGroup

GetGroupArgs

GetGroupResult

GetProject

GetProjectArgs

GetProjectResult

GetRole

GetRoleArgs

GetRoleResult

GetService

GetServiceArgs

GetServiceResult

GetUser

GetUserArgs

GetUserResult

Project

Manages a V3 Project resource within OpenStack Keystone.

Note: You must have admin privileges in your OpenStack cloud to use this resource.

Example Usage

using Pulumi;
using OpenStack = Pulumi.OpenStack;

class MyStack : Stack
{
public MyStack()
{
    var project1 = new OpenStack.Identity.Project("project1", new OpenStack.Identity.ProjectArgs
    {
        Description = "A project",
    });
}

}

ProjectArgs

ProjectState

Role

Manages a V3 Role resource within OpenStack Keystone.

Note: You must have admin privileges in your OpenStack cloud to use this resource.

Example Usage

using Pulumi;
using OpenStack = Pulumi.OpenStack;

class MyStack : Stack
{
public MyStack()
{
    var role1 = new OpenStack.Identity.Role("role1", new OpenStack.Identity.RoleArgs
    {
    });
}

}

RoleArgs

RoleAssignment

Manages a V3 Role assignment within OpenStack Keystone.

Note: You must have admin privileges in your OpenStack cloud to use this resource.

Example Usage

using Pulumi;
using OpenStack = Pulumi.OpenStack;

class MyStack : Stack
{
public MyStack()
{
    var project1 = new OpenStack.Identity.Project("project1", new OpenStack.Identity.ProjectArgs
    {
    });
    var user1 = new OpenStack.Identity.User("user1", new OpenStack.Identity.UserArgs
    {
        DefaultProjectId = project1.Id,
    });
    var role1 = new OpenStack.Identity.Role("role1", new OpenStack.Identity.RoleArgs
    {
    });
    var roleAssignment1 = new OpenStack.Identity.RoleAssignment("roleAssignment1", new OpenStack.Identity.RoleAssignmentArgs
    {
        ProjectId = project1.Id,
        RoleId = role1.Id,
        UserId = user1.Id,
    });
}

}

RoleAssignmentArgs

RoleAssignmentState

RoleState

ServiceV3

Manages a V3 Service resource within OpenStack Keystone.

Note: This usually requires admin privileges.

Example Usage

using Pulumi;
using OpenStack = Pulumi.OpenStack;

class MyStack : Stack
{
public MyStack()
{
    var service1 = new OpenStack.Identity.ServiceV3("service1", new OpenStack.Identity.ServiceV3Args
    {
        Type = "custom",
    });
}

}

ServiceV3Args

ServiceV3State

User

Manages a V3 User resource within OpenStack Keystone.

Note: You must have admin privileges in your OpenStack cloud to use this resource.

Example Usage

using Pulumi;
using OpenStack = Pulumi.OpenStack;

class MyStack : Stack
{
public MyStack()
{
    var project1 = new OpenStack.Identity.Project("project1", new OpenStack.Identity.ProjectArgs
    {
    });
    var user1 = new OpenStack.Identity.User("user1", new OpenStack.Identity.UserArgs
    {
        DefaultProjectId = project1.Id,
        Description = "A user",
        Extra = 
        {
            { "email", "user_1@foobar.com" },
        },
        IgnoreChangePasswordUponFirstUse = true,
        MultiFactorAuthEnabled = true,
        MultiFactorAuthRules = 
        {
            new OpenStack.Identity.Inputs.UserMultiFactorAuthRuleArgs
            {
                Rule = 
                {
                    "password",
                    "totp",
                },
            },
            new OpenStack.Identity.Inputs.UserMultiFactorAuthRuleArgs
            {
                Rule = 
                {
                    "password",
                },
            },
        },
        Password = "password123",
    });
}

}

UserArgs

UserState

Back to top Copyright 2016-2020, Pulumi Corporation.