add set auth secret

This commit is contained in:
abhishek9686 2024-04-04 11:45:33 +05:30
parent 4d001f0d27
commit f41cef5da5
2 changed files with 19 additions and 18 deletions

View file

@ -75,9 +75,9 @@ func InitializeAuthProvider() string {
if functions == nil {
return ""
}
var _, err = fetchPassValue(logic.RandomString(64))
var err = logic.SetAuthSecret(auth_key, logic.RandomString(64))
if err != nil {
logger.Log(0, err.Error())
logger.FatalLog("failed to set auth_secret", err.Error())
return ""
}
var authInfo = servercfg.GetAuthProviderInfo()
@ -280,16 +280,8 @@ func fetchPassValue(newValue string) (string, error) {
type valueHolder struct {
Value string `json:"value" bson:"value"`
}
var b64NewValue = base64.StdEncoding.EncodeToString([]byte(newValue))
var newValueHolder = &valueHolder{
Value: b64NewValue,
}
var data, marshalErr = json.Marshal(newValueHolder)
if marshalErr != nil {
return "", marshalErr
}
var currentValue, err = logic.FetchAuthSecret(auth_key, string(data))
newValueHolder := valueHolder{}
var currentValue, err = logic.FetchAuthSecret(auth_key)
if err != nil {
return "", err
}

View file

@ -1,6 +1,7 @@
package logic
import (
"encoding/base64"
"encoding/json"
"errors"
"fmt"
@ -284,15 +285,23 @@ func DeleteUser(user string) (bool, error) {
return true, nil
}
func SetAuthSecret(key, secret string) error {
type valueHolder struct {
Value string `json:"value" bson:"value"`
}
var b64NewValue = base64.StdEncoding.EncodeToString([]byte(secret))
newValueHolder := valueHolder{
Value: b64NewValue,
}
d, _ := json.Marshal(newValueHolder)
return database.Insert(key, string(d), database.GENERATED_TABLE_NAME)
}
// FetchAuthSecret - manages secrets for oauth
func FetchAuthSecret(key string, secret string) (string, error) {
func FetchAuthSecret(key string) (string, error) {
var record, err = database.FetchRecord(database.GENERATED_TABLE_NAME, key)
if err != nil {
if err = database.Insert(key, secret, database.GENERATED_TABLE_NAME); err != nil {
return "", err
} else {
return secret, nil
}
return "", err
}
return record, nil
}