mirror of
https://github.com/netbirdio/netbird.git
synced 2026-10-13 00:49:07 +02:00
Assign groups to peers when registering with the setup key (#466)
This commit is contained in:
@@ -294,6 +294,8 @@ func (am *DefaultAccountManager) AddPeer(
|
|||||||
var account *Account
|
var account *Account
|
||||||
var err error
|
var err error
|
||||||
var sk *SetupKey
|
var sk *SetupKey
|
||||||
|
// auto-assign groups that are coming with a SetupKey or a User
|
||||||
|
var groupsToAdd []string
|
||||||
if len(upperKey) != 0 {
|
if len(upperKey) != 0 {
|
||||||
account, err = am.Store.GetAccountBySetupKey(upperKey)
|
account, err = am.Store.GetAccountBySetupKey(upperKey)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -321,6 +323,8 @@ func (am *DefaultAccountManager) AddPeer(
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
groupsToAdd = sk.AutoGroups
|
||||||
|
|
||||||
} else if len(userID) != 0 {
|
} else if len(userID) != 0 {
|
||||||
account, err = am.Store.GetUserAccount(userID)
|
account, err = am.Store.GetUserAccount(userID)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -361,6 +365,14 @@ func (am *DefaultAccountManager) AddPeer(
|
|||||||
}
|
}
|
||||||
group.Peers = append(group.Peers, newPeer.Key)
|
group.Peers = append(group.Peers, newPeer.Key)
|
||||||
|
|
||||||
|
if len(groupsToAdd) > 0 {
|
||||||
|
for _, s := range groupsToAdd {
|
||||||
|
if g, ok := account.Groups[s]; ok && g.Name != "All" {
|
||||||
|
g.Peers = append(g.Peers, newPeer.Key)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
account.Peers[newPeer.Key] = newPeer
|
account.Peers[newPeer.Key] = newPeer
|
||||||
if len(upperKey) != 0 {
|
if len(upperKey) != 0 {
|
||||||
account.SetupKeys[sk.Key] = sk.IncrementUsage()
|
account.SetupKeys[sk.Key] = sk.IncrementUsage()
|
||||||
|
|||||||
Reference in New Issue
Block a user