vault: github.com/hashicorp/vault/vendor/github.com/hashicorp/vault-plugin-secrets-azure Index | Files

package azuresecrets

import "github.com/hashicorp/vault/vendor/github.com/hashicorp/vault-plugin-secrets-azure"

Index

Package Files

backend.go client.go path_config.go path_roles.go path_service_principal.go provider.go

Constants

const (
    SecretTypeSP       = "service_principal"
    SecretTypeStaticSP = "static_service_principal"
)

func Factory Uses

func Factory(ctx context.Context, conf *logical.BackendConfig) (logical.Backend, error)

type ApplicationsClient Uses

type ApplicationsClient interface {
    CreateApplication(ctx context.Context, parameters graphrbac.ApplicationCreateParameters) (graphrbac.Application, error)
    DeleteApplication(ctx context.Context, applicationObjectID string) (autorest.Response, error)
    GetApplication(ctx context.Context, applicationObjectID string) (graphrbac.Application, error)
    UpdateApplicationPasswordCredentials(
        ctx context.Context,
        applicationObjectID string,
        parameters graphrbac.PasswordCredentialsUpdateParameters) (result autorest.Response, err error)
    ListApplicationPasswordCredentials(ctx context.Context, applicationObjectID string) (result graphrbac.PasswordCredentialListResult, err error)
}

type AzureProvider Uses

type AzureProvider interface {
    ApplicationsClient
    ServicePrincipalsClient
    RoleAssignmentsClient
    RoleDefinitionsClient
}

AzureProvider is an interface to access underlying Azure client objects and supporting services. Where practical the original function signature is preserved. client provides higher level operations atop AzureProvider.

type AzureRole Uses

type AzureRole struct {
    RoleName string `json:"role_name"` // e.g. Owner
    RoleID   string `json:"role_id"`   // e.g. /subscriptions/e0a207b2-.../providers/Microsoft.Authorization/roleDefinitions/de139f84-...
    Scope    string `json:"scope"`     // e.g. /subscriptions/e0a207b2-...
}

AzureRole is an Azure Role (https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) applied to a scope. RoleName and RoleID are both traits of the role. RoleID is the unique identifier, but RoleName is more useful to a human (thought it is not unique).

type RoleAssignmentsClient Uses

type RoleAssignmentsClient interface {
    CreateRoleAssignment(
        ctx context.Context,
        scope string,
        roleAssignmentName string,
        parameters authorization.RoleAssignmentCreateParameters) (authorization.RoleAssignment, error)
    DeleteRoleAssignmentByID(ctx context.Context, roleID string) (authorization.RoleAssignment, error)
}

type RoleDefinitionsClient Uses

type RoleDefinitionsClient interface {
    ListRoles(ctx context.Context, scope string, filter string) ([]authorization.RoleDefinition, error)
    GetRoleByID(ctx context.Context, roleID string) (result authorization.RoleDefinition, err error)
}

type ServicePrincipalsClient Uses

type ServicePrincipalsClient interface {
    CreateServicePrincipal(ctx context.Context, parameters graphrbac.ServicePrincipalCreateParameters) (graphrbac.ServicePrincipal, error)
}

Package azuresecrets imports 23 packages (graph). Updated 2019-08-20. Refresh now. Tools for package owners.