فهرست منبع

add set auth secret

abhishek9686 1 سال پیش
والد
کامیت
f41cef5da5
2فایلهای تغییر یافته به همراه19 افزوده شده و 18 حذف شده
  1. 4 12
      auth/auth.go
  2. 15 6
      logic/auth.go

+ 4 - 12
auth/auth.go

@@ -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
 	}

+ 15 - 6
logic/auth.go

@@ -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
 }