diff --git a/internal/app/wireguard/wireguard_peers.go b/internal/app/wireguard/wireguard_peers.go index 4bea2d4..0696bf5 100644 --- a/internal/app/wireguard/wireguard_peers.go +++ b/internal/app/wireguard/wireguard_peers.go @@ -75,7 +75,7 @@ func (m Manager) PreparePeer(ctx context.Context, id domain.InterfaceIdentifier) return nil, fmt.Errorf("unable to find interface %s: %w", id, err) } - if m.cfg.Core.SelfProvisioningAllowed && iface.Type != domain.InterfaceTypeServer { + if m.cfg.Core.SelfProvisioningAllowed && !currentUser.IsAdmin && iface.Type != domain.InterfaceTypeServer { return nil, fmt.Errorf("self provisioning is only allowed for server interfaces: %w", domain.ErrNoPermission) }