1
0
mirror of https://github.com/go-micro/go-micro.git synced 2024-12-12 08:23:58 +02:00
go-micro/auth/auth.go
2019-11-25 09:30:26 +00:00

27 lines
709 B
Go

// Package auth provides authentication and authorization capability
package auth
// Auth providers authentication and authorization
type Auth interface {
// Generate a new authorization token
Generate(u string) (*Token, error)
// Revoke an authorization token
Revoke(t *Token) error
// Verify a token
Verify(t *Token) error
}
// Token providers by an auth provider
type Token struct {
// Unique token id
Id string `json: "id"`
// Time of token creation
Created time.Time `json:"created"`
// Time of token expiry
Expiry time.Time `json:"expiry"`
// Roles associated with the token
Roles []string `json:"roles"`
// Any other associated metadata
Metadata map[string]string `json:"metadata"`
}