Redo auth flags

This commit is contained in:
Denis Arh
2018-07-28 12:01:33 +02:00
parent 99401065a7
commit c02fec809f
6 changed files with 53 additions and 35 deletions
+27
View File
@@ -0,0 +1,27 @@
package auth
import (
"github.com/namsral/flag"
"github.com/pkg/errors"
)
type (
configuration struct {
jwtSecret string
}
)
var config configuration
func (c configuration) validate() error {
if c.jwtSecret == "" {
return errors.New("JWT Secret not set for AUTH")
}
return nil
}
// Flags should be called from main to register flags
func Flags() {
flag.StringVar(&config.jwtSecret, "auth-jwt-secret", "", "JWT Secret")
}
+7 -3
View File
@@ -11,10 +11,14 @@ type jwt struct {
tokenAuth *jwtauth.JWTAuth
}
func JWT(secret []byte) *jwt {
jwt := &jwt{tokenAuth: jwtauth.New("HS256", secret, nil)}
func JWT() (*jwt, error) {
if err := config.validate(); err != nil {
return nil, err
}
return jwt
jwt := &jwt{tokenAuth: jwtauth.New("HS256", []byte(config.jwtSecret), nil)}
return jwt, nil
}
// Verifies JWT and stores it into context