docs(audit): apply per-cluster judgment fixes across living docs
Resolve audit findings: correct WorkerEnvelope proto/route/metric/session facts; rewrite auth (ZB.MOM.WW.Auth migration), dashboard (ZB.MOM.WW.Theme), and StyleGuide (foreign-project copy-paste); document alarm subsystem, Ldap options, and gateway alarm broker; fix client CLI flags and package paths.
This commit is contained in:
@@ -18,6 +18,19 @@ paths, timeouts, queue sizes, enum values, or protocol values are invalid.
|
||||
"PepperSecretName": "MxGateway:ApiKeyPepper",
|
||||
"RunMigrationsOnStartup": true
|
||||
},
|
||||
"Ldap": {
|
||||
"Enabled": true,
|
||||
"Server": "localhost",
|
||||
"Port": 3893,
|
||||
"Transport": "None",
|
||||
"AllowInsecure": true,
|
||||
"SearchBase": "dc=zb,dc=local",
|
||||
"ServiceAccountDn": "cn=serviceaccount,dc=zb,dc=local",
|
||||
"ServiceAccountPassword": "serviceaccount123",
|
||||
"UserNameAttribute": "cn",
|
||||
"DisplayNameAttribute": "cn",
|
||||
"GroupAttribute": "memberOf"
|
||||
},
|
||||
"Worker": {
|
||||
"ExecutablePath": "src\\ZB.MOM.WW.MxGateway.Worker\\bin\\x86\\Release\\ZB.MOM.WW.MxGateway.Worker.exe",
|
||||
"WorkingDirectory": null,
|
||||
@@ -93,6 +106,39 @@ Environment variables use the normal .NET double-underscore form. For example,
|
||||
When `Mode` is `ApiKey`, `SqlitePath` and `PepperSecretName` must be present.
|
||||
`SqlitePath` must be a valid filesystem path.
|
||||
|
||||
## Ldap Options
|
||||
|
||||
The `MxGateway:Ldap` section configures the dashboard's LDAP login (the gRPC API
|
||||
uses API keys, not LDAP — see [Authentication](./Authentication.md)). The same
|
||||
section is bound twice: the runtime bind/search is performed by the shared
|
||||
`ZB.MOM.WW.Auth.Ldap` provider wired up by `AddZbLdapAuth`, while the gateway's
|
||||
own `LdapOptions` shadow exists only for startup validation, the redacted
|
||||
effective-config display, and the dev/default values. The two stay
|
||||
field-compatible so the one section binds onto both. The gateway ships
|
||||
dev-friendly defaults (plaintext localhost); the shared provider's own defaults
|
||||
are secure-by-default.
|
||||
|
||||
| Option | Default | Description |
|
||||
|--------|---------|-------------|
|
||||
| `MxGateway:Ldap:Enabled` | `true` | Enables LDAP-backed dashboard login. When `false`, the rest of the section is not validated and LDAP login is not wired up. |
|
||||
| `MxGateway:Ldap:Server` | `localhost` | LDAP server host. Required when `Enabled`. |
|
||||
| `MxGateway:Ldap:Port` | `3893` | LDAP server port. Must be a valid port (1–65535). |
|
||||
| `MxGateway:Ldap:Transport` | `None` | Transport/TLS mode. One of `None` (plaintext), `StartTls` (upgrade a plaintext connection to TLS), or `Ldaps` (TLS from connect). Replaces the former boolean `UseTls`. |
|
||||
| `MxGateway:Ldap:AllowInsecure` | `true` | Allows plaintext LDAP connections. Must be `true` when `Transport` is `None`; setting `Transport=None` with `AllowInsecure=false` fails validation. |
|
||||
| `MxGateway:Ldap:SearchBase` | `dc=zb,dc=local` | Search base distinguished name for user lookup. Required when `Enabled`. |
|
||||
| `MxGateway:Ldap:ServiceAccountDn` | `cn=serviceaccount,dc=zb,dc=local` | Service account DN used to bind before searching for the logging-in user. Required when `Enabled`. Redacted in the effective-config display. |
|
||||
| `MxGateway:Ldap:ServiceAccountPassword` | `serviceaccount123` | Service account bind password. Required when `Enabled`. Never logged; redacted in the effective-config display. |
|
||||
| `MxGateway:Ldap:UserNameAttribute` | `cn` | Attribute matched against the login user name (the dev GLAuth directory keys users by `cn`, not `uid`). Required when `Enabled`. |
|
||||
| `MxGateway:Ldap:DisplayNameAttribute` | `cn` | Attribute read for the user's display name. Required when `Enabled`. |
|
||||
| `MxGateway:Ldap:GroupAttribute` | `memberOf` | Attribute read for the user's group membership. The resulting group names are mapped to dashboard roles by `MxGateway:Dashboard:GroupToRole`. Required when `Enabled`. |
|
||||
|
||||
When `Enabled` is `true`, `Server`, `SearchBase`, `ServiceAccountDn`,
|
||||
`ServiceAccountPassword`, `UserNameAttribute`, `DisplayNameAttribute`, and
|
||||
`GroupAttribute` must be non-blank, `Port` must be valid, and `AllowInsecure`
|
||||
must be `true` whenever `Transport` is `None`. Group-to-role mapping lives in the
|
||||
dashboard section; see `MxGateway:Dashboard:GroupToRole` below and
|
||||
[glauth.md](../glauth.md).
|
||||
|
||||
## Worker Options
|
||||
|
||||
| Option | Default | Description |
|
||||
|
||||
Reference in New Issue
Block a user