public void ExecPrivilegeOnTable(ObservableCollection <DTO_PrivilegeOnTable> privilegesOnTable, String username) { RevokeAllPrivilegesTable(username); for (int i = 0; i < privilegesOnTable.Count; i++) { DTO_PrivilegeOnTable tmp = privilegesOnTable[i]; String privileges = ""; if (tmp.IsSelect) { privileges = "SELECT"; DAO_Privilege.Instance.GrantPrivilegesOnTable(username, privileges, tmp.TableName, tmp.IsSelectGrantable); } if (tmp.IsUpdate) { privileges = "UPDATE"; DAO_Privilege.Instance.GrantPrivilegesOnTable(username, privileges, tmp.TableName, tmp.IsUpdateGrantable); } if (tmp.IsInsert) { privileges = "INSERT"; DAO_Privilege.Instance.GrantPrivilegesOnTable(username, privileges, tmp.TableName, tmp.IsInsertGrantable); } if (tmp.IsDelete) { privileges = "DELETE"; DAO_Privilege.Instance.GrantPrivilegesOnTable(username, privileges, tmp.TableName, tmp.IsDeleteGrantable); } } }
public PrivsColumnWindow(GrantPrivilegePage page, DTO_PrivilegeOnTable privsTable, String username) { InitializeComponent(); this.privilegeOnTable = privsTable; this.page = page; this.username = username; try { list = BUS_Privilege.Instance.GetPrivilegesAllColumns(username, privilegeOnTable.TableName); } catch (Exception ex) { MessageBox.Show(ex.Message); return; } if (list.Count == 0) { page.OpenSubWindow = false; return; } page.OpenSubWindow = true; PrivSColumnDataGrid.ItemsSource = list; }
public ObservableCollection <DTO_PrivilegeOnTable> GetPrivilegesAllTables(String username) { ObservableCollection <DTO_PrivilegeOnTable> result = GetPrivilegesOnTable(username); DataTable data = DAO_Table.Instance.GetAllTables(); bool flag = false; foreach (DataRow row in data.Rows) { DTO_PrivilegeOnTable tmpObject = new DTO_PrivilegeOnTable(); tmpObject.TableName = row["OBJECT_NAME"].ToString(); flag = false; for (int i = 0; i < result.Count; i++) { if (result[i].TableName.Equals(tmpObject.TableName)) { flag = true; break; } } if (!flag) { result.Add(tmpObject); } } return(result); }
private void PrivilegeColumnButton_Click(object sender, RoutedEventArgs e) { DTO_PrivilegeOnTable selectedRow = PrivilegeOnTable_DataGrid.SelectedItem as DTO_PrivilegeOnTable; if (selectedRow == null) { return; } PrivsColumnWindow privsColumnWindow = new PrivsColumnWindow(this, selectedRow, UsernameTextBox.Text); if (OpenSubWindow) { privsColumnWindow.Show(); } else { MessageBox.Show("No privleges on columns detected!"); privsColumnWindow.Close(); } privilegeOnColumns = new List <ObservableCollection <DTO_PrivilegeOnColumn> >();; }
public ObservableCollection <DTO_PrivilegeOnTable> GetPrivilegesOnTable(String username) { //Get all data from DAO Layer ObservableCollection <DTO_PrivilegeOnTable> result = new ObservableCollection <DTO_PrivilegeOnTable>(); DataTable data = DAO_Privilege.Instance.GetPrivilegeOnTable(username); foreach (DataRow row in data.Rows) { bool flag = false; DTO_PrivilegeOnTable tmpObject = new DTO_PrivilegeOnTable(); tmpObject.TableName = row["TABLE_NAME"].ToString(); tmpObject.Grantor = row["GRANTOR"].ToString(); if (result.Count > 0 && result[result.Count - 1].TableName.Equals(tmpObject.TableName)) { tmpObject = result[result.Count - 1]; flag = true; } String privilege = row["PRIVILEGE"].ToString(); String grantable = row["GRANTABLE"].ToString(); //All default values were false if (privilege.Equals("SELECT")) { tmpObject.IsSelect = true; if (grantable.Equals("YES")) { tmpObject.IsSelectGrantable = true; } } else if (privilege.Equals("INSERT")) { tmpObject.IsInsert = true; if (grantable.Equals("YES")) { tmpObject.IsInsertGrantable = true; } } else if (privilege.Equals("UPDATE")) { tmpObject.IsUpdate = true; if (grantable.Equals("YES")) { tmpObject.IsUpdateGrantable = true; } } else { tmpObject.IsDelete = true; if (grantable.Equals("YES")) { tmpObject.IsDeleteGrantable = true; } } if (!flag) { result.Add(tmpObject); } } return(result); }