scopeids

package
v0.13.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 9, 2023 License: MPL-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetListingScopeIds

func GetListingScopeIds(

	ctx context.Context,

	repoFn common.IamRepoFactory,

	authResults auth.VerifyResults,

	rootScopeId string,

	typ resource.Type,

	recursive bool,
) ([]string, map[string]*scopes.ScopeInfo, error)

GetListingScopeIds is provided for backwards compatibility with existing services; services should eventually migrate to GetListingResourceInformation.

Types

type GetListingResourceInformationInput

type GetListingResourceInformationInput struct {
	// An IAM repo function to use for a scope listing call
	IamRepoFn common.IamRepoFactory

	// The original auth results from the list command
	AuthResults auth.VerifyResults

	// The scope ID to use, or the starting point for a recursive search
	RootScopeId string

	// The type of resource being listed
	Type resource.Type

	// Whether the search is recursive
	Recursive bool

	// A repo to fetch resources
	AuthzProtectedEntityProvider authzProtectedEntityProvider

	// The available actions for the resource type
	ActionSet action.ActionSet
}

GetListingResourceInformationInput contains input parameters to the function

type GetListingResourceInformationOutput

type GetListingResourceInformationOutput struct {
	// The calculated list of relevant scope IDs
	ScopeIds []string

	// The specific resource IDs calculated to be authorized for listing
	ResourceIds []string

	// A map of scope ID to scope information and a map of resource IDs in that
	// scope and specific information about that resource, such as available
	// actions
	ScopeResourceMap map[string]*ScopeInfoWithResourceIds
}

GetListingResourceInformationOutput contains results from the function

func GetListingResourceInformation

func GetListingResourceInformation(

	ctx context.Context,

	input GetListingResourceInformationInput,
) (*GetListingResourceInformationOutput, error)

GetListingResourceInformation, given common parameters for List calls, returns useful information: the set of scope IDs in which to search for resources; the IDs of the resources known to be authorized for that user; and a memoized map of the scopes to their info for populating returned values.

type ResourceInfo

type ResourceInfo struct {
	AuthorizedActions action.ActionSet
}

ResourceInfo contains information about a particular resource

type ScopeInfoWithResourceIds

type ScopeInfoWithResourceIds struct {
	*scopes.ScopeInfo
	Resources map[string]ResourceInfo
}

ScopeInfoWithResourceIds contains information about a scope and the resources found within it

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL