private static bool checkPrivilegeToAccessForm(string form) { AuthenService authenService = new AuthenService(); UserPrivilegeDataTable upTable = null; if (authenService.IsAuthenticated()) { AuthenticatedEntity authenData = (AuthenticatedEntity)StaticDataFacade.Get(StaticDataKeys.AuthenticatedData); upTable = authenData.UserPrivilegeTable; } if (!authenService.CanAccess(form, upTable)) { if (!authenService.IsAuthenticated()) { ShowDialog(AppForms.FormLogin); } else { MessageBox.Show("Bạn không thể truy cập vào phần này.", "Thiếu quyền truy cập", MessageBoxButtons.OK, MessageBoxIcon.Stop); } return(false); } return(true); }
public bool CanAccess(String formKey, UserPrivilegeDataTable table) { if (!FormPrivilegeConstant.FormKeyToPrivilegeId.ContainsKey(formKey)) { return(true); } int privilegeId = FormPrivilegeConstant.FormKeyToPrivilegeId[formKey]; return(CanAccess(privilegeId, table)); }
private static List <int> getUserPrivilegeIds(object userIdObj) { int userId = (int)userIdObj; AuthenService authenService = new AuthenService(); UserPrivilegeTableAdapter userPrivilegeTableAdapter = (UserPrivilegeTableAdapter)StaticDataFacade.Get(StaticDataKeys.AdapterUserPrivilege); UserPrivilegeDataTable userPrivilegeDataTable = authenService.LoadUserPrivileges(userPrivilegeTableAdapter, userId); List <int> privilegeIds = new List <int>(); foreach (UserPrivilegeRow row in userPrivilegeDataTable) { privilegeIds.Add(row.PrivilegeId); } return(privilegeIds); }
public bool CanAccess(int privilegeId, UserPrivilegeDataTable table) { bool canAccess = false; if (table != null) { UserPrivilegeRow[] rows = table.Select(String.Format("PrivilegeId={0}", privilegeId)) as UserPrivilegeRow[]; if (!ArrayUtil.IsEmpty(rows)) { canAccess = rows[0].Value; } } return(canAccess); }
private void btnLogin_Click(object sender, EventArgs e) { AuthenService authenService = new AuthenService(); string username = txtUsername.Text; string password = PasswordUtil.GetMd5Hash(txtPassword.Text); UserDataTable userDataTable = authenService.GetUsersForLogin(this.userTableAdapter, username, password); if (userDataTable.Count == 0) { MessageBox.Show("Tên đăng nhập hoặc Mật khẩu không đúng. Xin vui lòng thử lại.", "Lỗi đăng nhập", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { UserPrivilegeDataTable upTable = authenService.LoadUserPrivileges(this.userPrivilegeTableAdapter, userDataTable[0].UserId); authenService.SetAuthenticatedUser(userDataTable[0], upTable); this.Close(); showCurrentForm(); } }
public void SetAuthenticatedUser(UserRow user, UserPrivilegeDataTable table) { StaticDataFacade.Remove(StaticDataKeys.AuthenticatedData); StaticDataFacade.Add(StaticDataKeys.AuthenticatedData, new AuthenticatedEntity(user, table)); }
public AuthenticatedEntity(UserRow user, UserPrivilegeDataTable table) { this.User = user; this.UserPrivilegeTable = table; }