policy

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Jul 11, 2020 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CreatePolicyRequest

type CreatePolicyRequest struct {
	*token.Session `bson:"-" json:"-"`
	Namespace      string      `bson:"namespace" json:"namespace" validate:"lte=120"`         // 范围
	UserID         string      `bson:"user_id" json:"user_id" validate:"required,lte=120"`    // 用户ID
	RoleName       string      `bson:"role_name" json:"role_name" validate:"required,lte=40"` // 角色名称
	Scope          string      `bson:"scope" json:"scope"`                                    // 范围控制
	ExpiredTime    *ftime.Time `bson:"expired_time" json:"expired_time"`                      // 策略过期时间
}

CreatePolicyRequest 创建策略的请求

func NewCreatePolicyRequest

func NewCreatePolicyRequest() *CreatePolicyRequest

NewCreatePolicyRequest 请求实例

func (*CreatePolicyRequest) Validate

func (req *CreatePolicyRequest) Validate() error

Validate 校验请求合法

type DescribePolicyRequest

type DescribePolicyRequest struct {
	ID string
}

DescribePolicyRequest todo

type Policy

type Policy struct {
	ID                   string     `bson:"_id" json:"id"`                // 策略ID
	CreateAt             ftime.Time `bson:"create_at" json:"create_at"`   // 创建时间
	UpdateAt             ftime.Time `bson:"update_at" json:"update_at"`   // 更新时间
	DomainID             string     `bson:"domain_id" json:"domain_id"`   // 策略所属域
	CreaterID            string     `bson:"creater_id" json:"creater_id"` // 创建者ID
	UserType             types.Type `bson:"user_type" json:"user_type"`   // 用户类型
	*CreatePolicyRequest `bson:",inline"`
}

Policy 权限策略

func New

func New(req *CreatePolicyRequest) (*Policy, error)

New 新实例

func NewDefaultPolicy

func NewDefaultPolicy() *Policy

NewDefaultPolicy todo

type QueryPolicyRequest

type QueryPolicyRequest struct {
	*request.PageRequest

	UserID    string `json:"user_id,omitempty"`
	RoleName  string `json:"role_name,omitempty"`
	Namespace string `json:"namespace,omitempty"`
}

QueryPolicyRequest 获取子账号列表

func NewCreateUserRequest

func NewCreateUserRequest() *QueryPolicyRequest

NewCreateUserRequest 创建请求

func NewQueryPolicyRequest

func NewQueryPolicyRequest(pageReq *request.PageRequest) *QueryPolicyRequest

NewQueryPolicyRequest 列表查询请求

func (*QueryPolicyRequest) Validate

func (req *QueryPolicyRequest) Validate() error

Validate 校验请求是否合法

type Service

type Service interface {
	CreatePolicy(req *CreatePolicyRequest) (*Policy, error)
	QueryPolicy(req *QueryPolicyRequest) (*Set, error)
}

Service 策略服务

type Set

type Set struct {
	*request.PageRequest

	Total int64     `json:"total"`
	Items []*Policy `json:"items"`
}

Set 列表

func NewPolicySet

func NewPolicySet(req *request.PageRequest) *Set

NewPolicySet todo

func (*Set) Add

func (s *Set) Add(e *Policy)

Add 添加

func (*Set) UserRoles

func (s *Set) UserRoles(userID string) []string

UserRoles 获取用户的角色

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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