requestor

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Feb 2, 2026 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CreateRequestRequest

type CreateRequestRequest struct {
	Username            string   `json:"username,omitempty" yaml:"username,omitempty"`
	PolicyID            string   `json:"policy_id,omitempty" yaml:"policy_id,omitempty"`
	ResourcePaths       []string `json:"resource_paths,omitempty" yaml:"resource_paths,omitempty"`
	RoleIDs             []string `json:"role_ids,omitempty" yaml:"role_ids,omitempty"`
	ResourceDisplayName string   `json:"resource_display_name,omitempty" yaml:"resource_display_name,omitempty"`
}

CreateRequestRequest represents the payload to create a request

type PolicyConfig

type PolicyConfig struct {
	Policies []CreateRequestRequest `yaml:"policies"`
}

type Request

type Request struct {
	RequestID       string   `json:"request_id,omitempty" yaml:"request_id,omitempty"`
	Username        string   `json:"username,omitempty" yaml:"username,omitempty"`
	PolicyID        string   `json:"policy_id,omitempty" yaml:"policy_id,omitempty"`
	ResourcePaths   []string `json:"resource_paths,omitempty" yaml:"resource_paths,omitempty"`
	RoleIDs         []string `json:"role_ids,omitempty" yaml:"role_ids,omitempty"`
	ResourceID      string   `json:"resource_id,omitempty" yaml:"resource_id,omitempty"`
	ResourceDisplay string   `json:"resource_display_name,omitempty" yaml:"resource_display_name,omitempty"`
	Status          string   `json:"status,omitempty" yaml:"status,omitempty"`
	CreatedTime     string   `json:"created_time,omitempty" yaml:"created_time,omitempty"`
	UpdatedTime     string   `json:"updated_time,omitempty" yaml:"updated_time,omitempty"`
	Revoke          bool     `json:"revoke,omitempty" yaml:"revoke,omitempty"`
}

Request represents a requestor request object

type RequestorClient

type RequestorClient struct {
	request.RequestInterface
	Endpoint string
}

func NewRequestorClient

func NewRequestorClient(req request.RequestInterface, creds *conf.Credential) *RequestorClient

func (*RequestorClient) AddUser

func (c *RequestorClient) AddUser(ctx context.Context, projectID string, username string, write bool, guppy bool) ([]Request, error)

func (*RequestorClient) CreateRequest

func (c *RequestorClient) CreateRequest(ctx context.Context, reqPayload CreateRequestRequest, revoke bool) (*Request, error)

func (*RequestorClient) ListRequests

func (c *RequestorClient) ListRequests(ctx context.Context, mine bool, active bool, username string) ([]Request, error)

func (*RequestorClient) RemoveUser

func (c *RequestorClient) RemoveUser(ctx context.Context, projectID string, username string) ([]Request, error)

func (*RequestorClient) UpdateRequest

func (c *RequestorClient) UpdateRequest(ctx context.Context, requestID string, status string) (*Request, error)

type RequestorInterface

type RequestorInterface interface {
	ListRequests(ctx context.Context, mine bool, active bool, username string) ([]Request, error)
	CreateRequest(ctx context.Context, req CreateRequestRequest, revoke bool) (*Request, error)
	UpdateRequest(ctx context.Context, requestID string, status string) (*Request, error)
	AddUser(ctx context.Context, projectID string, username string, write bool, guppy bool) ([]Request, error)
	RemoveUser(ctx context.Context, projectID string, username string) ([]Request, error)
}

type UpdateRequestRequest

type UpdateRequestRequest struct {
	Status string `json:"status" yaml:"status"`
}

UpdateRequestRequest represents the payload to update a request

Jump to

Keyboard shortcuts

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