authorizer

package
v0.0.0-...-455e706 Latest Latest
Warning

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

Go to latest
Published: Mar 7, 2022 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewAuthorization

func NewAuthorization(getter PolicyGetter) authorization.AuthorizationInterface

传来获取用户权限的接口 是使用 load 中的struct 进行 初始化 即 通过cache得到 Policy

Types

type Authorization

type Authorization struct {
	// contains filtered or unexported fields
}

这个为实现 service(authorization) 的types.go的接口

func (*Authorization) Create

func (a *Authorization) Create(*ladon.DefaultPolicy) error

创建一个策略 返回nil,因为我们使用mysql存储来存储策略。

func (*Authorization) Delete

func (auth *Authorization) Delete(id string) error

按给定标识符删除策略。 返回nil,因为我们使用mysql存储来存储策略。

func (*Authorization) DeleteCollection

func (auth *Authorization) DeleteCollection(idList []string) error

DeleteCollection按给定标识符批量删除策略。 返回nil,因为我们使用mysql存储来存储策略。

func (*Authorization) Get

func (auth *Authorization) Get(id string) (*ladon.DefaultPolicy, error)

Get按给定标识符返回策略详细信息。 返回nil,因为我们使用mysql存储来存储策略。

func (*Authorization) List

func (auth *Authorization) List(username string) ([]*ladon.DefaultPolicy, error)

列表返回用户名下的所有策略。

func (*Authorization) LogGrantedAccessRequest

func (auth *Authorization) LogGrantedAccessRequest(r *ladon.Request, p ladon.Policies, d ladon.Policies)

LogGrantedAccessRequest write granted subject access to redis.

func (*Authorization) LogRejectedAccessRequest

func (auth *Authorization) LogRejectedAccessRequest(r *ladon.Request, p ladon.Policies, d ladon.Policies)

为了降低请求延时,LogRejectedAccessRequest 和 LogGrantedAccessRequest 会将授权记录存储在 Redis 中, 之后由 iam-pump 进程读取 Redis,并将授权记录持久化存储在 MongoDB 中。

func (*Authorization) Update

func (auth *Authorization) Update(policy *ladon.DefaultPolicy) error

更新策略。 返回nil,因为我们使用mysql存储来存储策略。

type PolicyGetter

type PolicyGetter interface {
	GetPolicy(key string) ([]*ladon.DefaultPolicy, error) //根据key得到 ladon 选项
}

通过 Cache 得到 (cache实现这个接口)

Jump to

Keyboard shortcuts

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