mirror of
https://github.com/gravitl/netmaker.git
synced 2025-09-06 05:04:27 +08:00
* feat: api access tokens
* revoke all user tokens
* redefine access token api routes, add auto egress option to enrollment keys
* add server settings apis, add db table for settigs
* handle server settings updates
* switch to using settings from DB
* fix sever settings migration
* revet force migration for settings
* fix server settings database write
* fix revoked tokens to be unauthorized
* remove unused functions
* convert access token to sql schema
* switch access token to sql schema
* fix merge conflicts
* fix server settings types
* bypass basic auth setting for super admin
* add TODO comment
* publish peer update on settings update
* chore(go): import style changes from migration branch;
1. Singular file names for table schema.
2. No table name method.
3. Use .Model instead of .Table.
4. No unnecessary tagging.
* remove nat check on egress gateway request
* Revert "remove nat check on egress gateway request"
This reverts commit 0aff12a189
.
* feat(go): add db middleware;
* feat(go): restore method;
* feat(go): add user access token schema;
* fix user auth api:
* re initalise oauth and email config
* set verbosity
* sync auto update settings with hosts
* sync auto update settings with hosts
* mask secret and convert jwt duration to minutes
* convert jwt duration to minutes
* notify peers after settings update
* compare with curr settings before updating
* send host update to devices on auto update
---------
Co-authored-by: Vishal Dalwadi <dalwadivishal26@gmail.com>
40 lines
1.7 KiB
Go
40 lines
1.7 KiB
Go
package models
|
|
|
|
type Theme string
|
|
|
|
const (
|
|
Dark Theme = "dark"
|
|
Light Theme = "light"
|
|
System Theme = "system"
|
|
)
|
|
|
|
type ServerSettings struct {
|
|
NetclientAutoUpdate bool `json:"netclientautoupdate"`
|
|
Verbosity int32 `json:"verbosity"`
|
|
AuthProvider string `json:"authprovider"`
|
|
OIDCIssuer string `json:"oidcissuer"`
|
|
ClientID string `json:"client_id"`
|
|
ClientSecret string `json:"client_secret"`
|
|
AzureTenant string `json:"azure_tenant"`
|
|
Telemetry string `json:"telemetry"`
|
|
BasicAuth bool `json:"basic_auth"`
|
|
JwtValidityDuration int `json:"jwt_validity_duration"`
|
|
RacAutoDisable bool `json:"rac_auto_disable"`
|
|
RacRestrictToSingleNetwork bool `json:"rac_restrict_to_single_network"`
|
|
EndpointDetection bool `json:"endpoint_detection"`
|
|
AllowedEmailDomains string `json:"allowed_email_domains"`
|
|
EmailSenderAddr string `json:"email_sender_addr"`
|
|
EmailSenderUser string `json:"email_sender_user"`
|
|
EmailSenderPassword string `json:"email_sender_password"`
|
|
SmtpHost string `json:"smtp_host"`
|
|
SmtpPort int `json:"smtp_port"`
|
|
MetricInterval string `json:"metric_interval"`
|
|
MetricsPort int `json:"metrics_port"`
|
|
ManageDNS bool `json:"manage_dns"`
|
|
DefaultDomain string `json:"default_domain"`
|
|
Stun bool `json:"stun"`
|
|
StunServers string `json:"stun_servers"`
|
|
Theme Theme `json:"theme"`
|
|
TextSize string `json:"text_size"`
|
|
ReducedMotion bool `json:"reduced_motion"`
|
|
}
|