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 ¶
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