[WIP] changed some stuff
This commit is contained in:
parent
3e880725df
commit
f09c08e239
@ -30,11 +30,11 @@ func (self *MongoDbAuthorizationHandler) RemoveUser(username string) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *MongoDbAuthorizationHandler) RemoveServer(server_id string) error {
|
func (self *MongoDbAuthorizationHandler) RemoveServer(serverId string) error {
|
||||||
_, err := self.collection.DeleteMany(
|
_, err := self.collection.DeleteMany(
|
||||||
context.Background(),
|
context.Background(),
|
||||||
bson.D{
|
bson.D{
|
||||||
{Key: "server_id", Value: server_id},
|
{Key: "server_id", Value: serverId},
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -63,17 +63,16 @@ func (self *MongoDbAuthorizationHandler) AddPermissions(username string, serverI
|
|||||||
{Key: "username", Value: username},
|
{Key: "username", Value: username},
|
||||||
{Key: "server_id", Value: serverId},
|
{Key: "server_id", Value: serverId},
|
||||||
},
|
},
|
||||||
&ServerPermissions{
|
bson.M{"$set": bson.M{
|
||||||
Username: username,
|
"permissions": newPermissions,
|
||||||
ServerId: serverId,
|
},
|
||||||
Permissions: newPermissions,
|
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *MongoDbAuthorizationHandler) RemovePermissions(username string, server_id string, permissions models.Permission) error {
|
func (self *MongoDbAuthorizationHandler) RemovePermissions(username string, serverId string, permissions models.Permission) error {
|
||||||
var serverPermissions ServerPermissions
|
var serverPermissions ServerPermissions
|
||||||
err := self.collection.FindOne(
|
err := self.collection.FindOne(
|
||||||
context.Background(),
|
context.Background(),
|
||||||
@ -87,7 +86,7 @@ func (self *MongoDbAuthorizationHandler) RemovePermissions(username string, serv
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
newPermissions := serverPermissions.Permissions | permissions
|
newPermissions := serverPermissions.Permissions | permissions ^ permissions
|
||||||
|
|
||||||
_, err = self.collection.UpdateOne(
|
_, err = self.collection.UpdateOne(
|
||||||
context.Background(),
|
context.Background(),
|
||||||
@ -95,22 +94,46 @@ func (self *MongoDbAuthorizationHandler) RemovePermissions(username string, serv
|
|||||||
{Key: "username", Value: username},
|
{Key: "username", Value: username},
|
||||||
{Key: "server_id", Value: serverId},
|
{Key: "server_id", Value: serverId},
|
||||||
},
|
},
|
||||||
&ServerPermissions{
|
bson.M{"$set": bson.M{
|
||||||
Username: username,
|
"permissions": newPermissions,
|
||||||
ServerId: serverId,
|
},
|
||||||
Permissions: newPermissions,
|
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *MongoDbAuthorizationHandler) SetPermissions(username string, server_id string, permissions models.Permission) error {
|
func (self *MongoDbAuthorizationHandler) SetPermissions(username string, serverId string, permissions models.Permission) error {
|
||||||
return nil
|
_, err := self.collection.UpdateOne(
|
||||||
|
context.Background(),
|
||||||
|
bson.D{
|
||||||
|
{Key: "username", Value: username},
|
||||||
|
{Key: "server_id", Value: serverId},
|
||||||
|
},
|
||||||
|
bson.M{"$set": bson.M{
|
||||||
|
"permissions": permissions,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
)
|
||||||
|
|
||||||
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *MongoDbAuthorizationHandler) GetPermissions(username string, server_id string) (models.Permission, error) {
|
func (self *MongoDbAuthorizationHandler) GetPermissions(username string, serverId string) (models.Permission, error) {
|
||||||
return 0, nil
|
var serverPermissions ServerPermissions
|
||||||
|
err := self.collection.FindOne(
|
||||||
|
context.Background(),
|
||||||
|
bson.D{
|
||||||
|
{Key: "username", Value: username},
|
||||||
|
{Key: "server_id", Value: serverId},
|
||||||
|
},
|
||||||
|
).Decode(&serverPermissions)
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
return 0, err
|
||||||
|
}
|
||||||
|
|
||||||
|
return serverPermissions.Permissions, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewMongoDbAuthorizationHandler(config models.MongoDBConfig) (*MongoDbAuthorizationHandler, error) {
|
func NewMongoDbAuthorizationHandler(config models.MongoDBConfig) (*MongoDbAuthorizationHandler, error) {
|
@ -5,7 +5,6 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"git.acooldomain.co/server-manager/backend-kubernetes-go/dbhandler"
|
"git.acooldomain.co/server-manager/backend-kubernetes-go/dbhandler"
|
||||||
"git.acooldomain.co/server-manager/backend-kubernetes-go/mail"
|
|
||||||
"git.acooldomain.co/server-manager/backend-kubernetes-go/models"
|
"git.acooldomain.co/server-manager/backend-kubernetes-go/models"
|
||||||
"go.mongodb.org/mongo-driver/bson"
|
"go.mongodb.org/mongo-driver/bson"
|
||||||
"go.mongodb.org/mongo-driver/mongo"
|
"go.mongodb.org/mongo-driver/mongo"
|
||||||
@ -84,8 +83,19 @@ func (self *MongoDbUserPassHandler) SetPermissions(
|
|||||||
username string,
|
username string,
|
||||||
permissions models.Permission,
|
permissions models.Permission,
|
||||||
) error {
|
) error {
|
||||||
|
_, err := self.collection.UpdateOne(
|
||||||
|
context.Background(),
|
||||||
|
bson.D{
|
||||||
|
{Key: "username", Value: username},
|
||||||
|
},
|
||||||
|
bson.M{
|
||||||
|
"$set": bson.M{
|
||||||
|
"permissions": permissions,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
)
|
||||||
|
|
||||||
return nil
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewMMongoDbUserPassAuthHandler(config models.MongoDBConfig) (*MongoDbUserPassHandler, error) {
|
func NewMMongoDbUserPassAuthHandler(config models.MongoDBConfig) (*MongoDbUserPassHandler, error) {
|
Loading…
x
Reference in New Issue
Block a user