Skip to content

Commit 15212ba

Browse files
committed
增加并实现Manager接口
1 parent 7467657 commit 15212ba

File tree

6 files changed

+219
-68
lines changed

6 files changed

+219
-68
lines changed

manage/const.go renamed to const.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
package manage
1+
package oauth2
22

3-
// ResponseType 授权类型
3+
// ResponseType 定义授权类型
44
type ResponseType byte
55

66
const (

generate.go

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,23 +3,22 @@ package oauth2
33
import "time"
44

55
type (
6-
// TokenGenerateData 提供生成令牌的基础数据
7-
TokenGenerateData struct {
6+
// TokenGenerateBasic 提供生成令牌的基础数据
7+
TokenGenerateBasic struct {
88
Client ClientInfo // 客户端信息
99
UserID string // 用户标识
10-
Scope string // 权限范围
1110
CreateAt time.Time // 创建时间
1211
}
1312

14-
// AuthorizeGenerate 授权令牌生成接口
15-
AuthorizeGenerate interface {
13+
// AuthorizeTokenGenerate 授权令牌生成接口
14+
AuthorizeTokenGenerate interface {
1615
// 授权令牌
17-
Token(data *TokenGenerateData) (string, error)
16+
Token(data *TokenGenerateBasic) (string, error)
1817
}
1918

2019
// TokenGenerate 令牌生成接口
2120
TokenGenerate interface {
2221
// 生成令牌
23-
Token(data *TokenGenerateData, isGenRefresh bool) (string, string, error)
22+
Token(data *TokenGenerateBasic, isGenRefresh bool) (string, string, error)
2423
}
2524
)

manage.go

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
package oauth2
2+
3+
// TokenGenerateRequest 提供生成令牌的请求参数
4+
type TokenGenerateRequest struct {
5+
ClientID string // 客户端标识
6+
ClientSecret string // 客户端密钥
7+
UserID string // 用户标识
8+
RedirectURI string // 重定向URI
9+
Scope string // 授权范围
10+
Code string // 授权码(授权码模式使用)
11+
IsGenerateRefresh bool // 是否生成刷新令牌
12+
}
13+
14+
// Manager OAuth2授权管理接口
15+
type Manager interface {
16+
// GenerateAuthToken 生成授权令牌
17+
// rt 授权类型
18+
// tgr 生成令牌的请求参数
19+
GenerateAuthToken(rt ResponseType, tgr *TokenGenerateRequest) (token string, err error)
20+
21+
// GenerateToken 生成访问令牌、刷新令牌
22+
// rt 授权模式
23+
// tgr 生成令牌的请求参数
24+
GenerateToken(rt GrantType, tgr *TokenGenerateRequest) (token, refresh string, err error)
25+
26+
// RefreshToken 使用刷新令牌更新访问令牌
27+
// refresh 刷新令牌
28+
// scope 作用域
29+
RefreshToken(refresh, scope string) (token string, err error)
30+
31+
// RevokeToken 使用访问令牌废除令牌信息
32+
// token 访问令牌
33+
RevokeToken(token string) (err error)
34+
35+
// CheckToken 令牌检查,如果存在则返回令牌信息
36+
CheckToken(token string) (ti TokenInfo, err error)
37+
38+
// CheckRefreshToken 访问令牌检查,如果存在则返回令牌信息
39+
CheckRefreshToken(refresh string) (ti TokenInfo, err error)
40+
}

manage/config.go

Lines changed: 0 additions & 20 deletions
This file was deleted.

manage/error.go

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,15 @@ var (
1515
// ErrAuthTokenInvalid Authorize token invalid
1616
ErrAuthTokenInvalid = errors.New("authorize token invalid")
1717

18-
// ErrExpired Expired
19-
ErrExpired = errors.New("expired")
18+
// ErrRefreshInvalid Refresh token invalid
19+
ErrRefreshInvalid = errors.New("refresh token invalid")
2020

21-
// ErrForbidden Forbidden
22-
ErrForbidden = errors.New("forbidden")
21+
// ErrRefreshExpired Refresh token expired
22+
ErrRefreshExpired = errors.New("refresh token expired")
23+
24+
// ErrTokenInvalid Token invalid
25+
ErrTokenInvalid = errors.New("token invalid")
26+
27+
// ErrTokenExpired Token expired
28+
ErrTokenExpired = errors.New("token expired")
2329
)

0 commit comments

Comments
 (0)