private void InitUI() { this.hostTB.Text = Settings.Store.Host; int port = Settings.Store.Port; this.portTB.Text = Convert.ToString(port); this.userTB.Text = Settings.Store.User; this.passwordTB.Text = Settings.Store.GetEncryptedSetting("Password"); this.dbTB.Text = Settings.Store.Database; bool useSsl = Settings.Store.UseSsl; this.useSslCB.Checked = useSsl; // User table schema settings this.userTableTB.Text = Settings.Store.Table; this.unameColTB.Text = Settings.Store.UsernameColumn; this.hashMethodColTB.Text = Settings.Store.HashMethodColumn; this.passwdColTB.Text = Settings.Store.PasswordColumn; this.userPrimaryKeyColTB.Text = Settings.Store.UserTablePrimaryKeyColumn; int encodingInt = Settings.Store.HashEncoding; Settings.HashEncoding encoding = (Settings.HashEncoding)encodingInt; if (encoding == Settings.HashEncoding.HEX) { this.encHexRB.Checked = true; } else { this.encBase64RB.Checked = true; } // Group table schema settings this.groupTableNameTB.Text = Settings.Store.GroupTableName; this.groupNameColTB.Text = Settings.Store.GroupNameColumn; this.groupTablePrimaryKeyColTB.Text = Settings.Store.GroupTablePrimaryKeyColumn; // User-Group table settings this.userGroupTableNameTB.Text = Settings.Store.UserGroupTableName; this.userGroupUserFKColTB.Text = Settings.Store.UserForeignKeyColumn; this.userGroupGroupFKColTB.Text = Settings.Store.GroupForeignKeyColumn; // Gateway rules List <GroupGatewayRule> gwLst = GroupRuleLoader.GetGatewayRules(); foreach (GroupGatewayRule rule in gwLst) { this.gtwRulesListBox.Items.Add(rule); } this.gtwRuleConditionCB.SelectedIndex = 0; }
private byte[] Decode(string hash) { int encInt = Settings.Store.HashEncoding; Settings.HashEncoding encoding = (Settings.HashEncoding)encInt; if (encoding == Settings.HashEncoding.HEX) { return(FromHexString(hash)); } else if (encoding == Settings.HashEncoding.BASE_64) { return(Convert.FromBase64String(hash)); } else { m_logger.ErrorFormat("Unrecognized hash encoding! This shouldn't happen."); throw new Exception("Unrecognized hash encoding."); } }
private void InitUI() { this.hostTB.Text = Settings.Store.Host; int port = Settings.Store.Port; this.portTB.Text = Convert.ToString(port); this.userTB.Text = Settings.Store.User; this.passwordTB.Text = Settings.Store.GetEncryptedSetting("Password"); this.dbTB.Text = Settings.Store.Database; bool useSsl = Settings.Store.UseSsl; this.useSslCB.Checked = useSsl; // User table schema settings this.userTableTB.Text = Settings.Store.Table; this.unameColTB.Text = Settings.Store.UsernameColumn; this.hashMethodColTB.Text = Settings.Store.HashMethodColumn; this.passwdColTB.Text = Settings.Store.PasswordColumn; this.userPrimaryKeyColTB.Text = Settings.Store.UserTablePrimaryKeyColumn; int encodingInt = Settings.Store.HashEncoding; Settings.HashEncoding encoding = (Settings.HashEncoding)encodingInt; if (encoding == Settings.HashEncoding.HEX) this.encHexRB.Checked = true; else this.encBase64RB.Checked = true; // Group table schema settings this.groupTableNameTB.Text = Settings.Store.GroupTableName; this.groupNameColTB.Text = Settings.Store.GroupNameColumn; this.groupTablePrimaryKeyColTB.Text = Settings.Store.GroupTablePrimaryKeyColumn; // User-Group table settings this.userGroupTableNameTB.Text = Settings.Store.UserGroupTableName; this.userGroupUserFKColTB.Text = Settings.Store.UserForeignKeyColumn; this.userGroupGroupFKColTB.Text = Settings.Store.GroupForeignKeyColumn; /////////////// Authorization tab ///////////////// this.cbAuthzMySqlGroupMemberOrNot.SelectedIndex = 0; this.cbAuthzGroupRuleAllowOrDeny.SelectedIndex = 0; this.ckDenyWhenMySqlAuthFails.Checked = Settings.Store.AuthzRequireMySqlAuth; List<GroupAuthzRule> lst = GroupRuleLoader.GetAuthzRules(); // The last one should be the default rule if (lst.Count > 0 && lst[lst.Count - 1].RuleCondition == GroupRule.Condition.ALWAYS) { GroupAuthzRule rule = lst[lst.Count - 1]; if (rule.AllowOnMatch) this.rbDefaultAllow.Checked = true; else this.rbDefaultDeny.Checked = true; lst.RemoveAt(lst.Count - 1); } else { // The list is empty or the last rule is not a default rule. throw new Exception("Default rule not found in rule list."); } // The rest of the rules foreach (GroupAuthzRule rule in lst) this.listBoxAuthzRules.Items.Add(rule); ///////////////// Gateway tab /////////////// List<GroupGatewayRule> gwLst = GroupRuleLoader.GetGatewayRules(); foreach (GroupGatewayRule rule in gwLst) this.gtwRulesListBox.Items.Add(rule); this.gtwRuleConditionCB.SelectedIndex = 0; this.m_preventLogonWhenServerUnreachableCb.Checked = Settings.Store.PreventLogonOnServerError; }