gophercloud: github.com/rackspace/gophercloud/openstack/identity/v3/roles Index | Files

package roles

import "github.com/rackspace/gophercloud/openstack/identity/v3/roles"

Package roles provides information and interaction with the roles API resource for the OpenStack Identity service.

Index

Package Files

doc.go requests.go results.go urls.go

func ExtractRoleAssignments Uses

func ExtractRoleAssignments(page pagination.Page) ([]RoleAssignment, error)

ExtractRoleAssignments extracts a slice of RoleAssignments from a Collection acquired from List.

func ListAssignments Uses

func ListAssignments(client *gophercloud.ServiceClient, opts ListAssignmentsOptsBuilder) pagination.Pager

ListAssignments enumerates the roles assigned to a specified resource.

type Domain Uses

type Domain struct {
    ID string `json:"id,omitempty"`
}

type Group Uses

type Group struct {
    ID string `json:"id,omitempty"`
}

type ListAssignmentsOpts Uses

type ListAssignmentsOpts struct {
    GroupId        string `q:"group.id"`
    RoleId         string `q:"role.id"`
    ScopeDomainId  string `q:"scope.domain.id"`
    ScopeProjectId string `q:"scope.project.id"`
    UserId         string `q:"user.id"`
    Effective      bool   `q:"effective"`
}

ListAssignmentsOpts allows you to query the ListAssignments method. Specify one of or a combination of GroupId, RoleId, ScopeDomainId, ScopeProjectId, and/or UserId to search for roles assigned to corresponding entities. Effective lists effective assignments at the user, project, and domain level, allowing for the effects of group membership.

func (ListAssignmentsOpts) ToRolesListAssignmentsQuery Uses

func (opts ListAssignmentsOpts) ToRolesListAssignmentsQuery() (string, error)

ToRolesListAssignmentsQuery formats a ListAssignmentsOpts into a query string.

type ListAssignmentsOptsBuilder Uses

type ListAssignmentsOptsBuilder interface {
    ToRolesListAssignmentsQuery() (string, error)
}

ListAssignmentsOptsBuilder allows extensions to add additional parameters to the ListAssignments request.

type Project Uses

type Project struct {
    ID string `json:"id,omitempty"`
}

type Role Uses

type Role struct {
    ID string `json:"id,omitempty"`
}

type RoleAssignment Uses

type RoleAssignment struct {
    Role  Role  `json:"role,omitempty"`
    Scope Scope `json:"scope,omitempty"`
    User  User  `json:"user,omitempty"`
    Group Group `json:"group,omitempty"`
}

RoleAssignment is the result of a role assignments query.

type RoleAssignmentsPage Uses

type RoleAssignmentsPage struct {
    pagination.LinkedPageBase
}

RoleAssignmentsPage is a single page of RoleAssignments results.

func (RoleAssignmentsPage) IsEmpty Uses

func (p RoleAssignmentsPage) IsEmpty() (bool, error)

IsEmpty returns true if the page contains no results.

func (RoleAssignmentsPage) NextPageURL Uses

func (page RoleAssignmentsPage) NextPageURL() (string, error)

NextPageURL uses the response's embedded link reference to navigate to the next page of results.

type Scope Uses

type Scope struct {
    Domain  Domain  `json:"domain,omitempty"`
    Project Project `json:"domain,omitempty"`
}

type User Uses

type User struct {
    ID string `json:"id,omitempty"`
}

Package roles imports 3 packages (graph). Updated 2016-07-23. Refresh now. Tools for package owners. This is an inactive package (no imports and no commits in at least two years).