namespace ZB.MOM.WW.OtOpcUa.Host.Configuration { /// /// LDAP authentication and group-to-role mapping settings. /// public class LdapConfiguration { /// /// Gets or sets whether LDAP authentication is enabled. /// When true, user credentials are validated against the configured LDAP server /// and group membership determines OPC UA permissions. /// public bool Enabled { get; set; } = false; /// /// Gets or sets the LDAP server hostname or IP address. /// public string Host { get; set; } = "localhost"; /// /// Gets or sets the LDAP server port. /// public int Port { get; set; } = 3893; /// /// Gets or sets the base DN for LDAP operations. /// public string BaseDN { get; set; } = "dc=lmxopcua,dc=local"; /// /// Gets or sets the bind DN template. Use {username} as a placeholder. /// public string BindDnTemplate { get; set; } = "cn={username},dc=lmxopcua,dc=local"; /// /// Gets or sets the service account DN used for LDAP searches (group lookups). /// public string ServiceAccountDn { get; set; } = ""; /// /// Gets or sets the service account password. /// public string ServiceAccountPassword { get; set; } = ""; /// /// Gets or sets the LDAP connection timeout in seconds. /// public int TimeoutSeconds { get; set; } = 5; /// /// Gets or sets the LDAP group name that grants read-only access. /// public string ReadOnlyGroup { get; set; } = "ReadOnly"; /// /// Gets or sets the LDAP group name that grants write access for FreeAccess/Operate attributes. /// public string WriteOperateGroup { get; set; } = "WriteOperate"; /// /// Gets or sets the LDAP group name that grants write access for Tune attributes. /// public string WriteTuneGroup { get; set; } = "WriteTune"; /// /// Gets or sets the LDAP group name that grants write access for Configure attributes. /// public string WriteConfigureGroup { get; set; } = "WriteConfigure"; /// /// Gets or sets the LDAP group name that grants alarm acknowledgment access. /// public string AlarmAckGroup { get; set; } = "AlarmAck"; } }