Usuario
Privilegios de Usuario en Base de datos MYSQL

Pregunta
-
ESTIMADOS
Tengo este código de manejo de usuarios y me falta una parte que la definicion del control de privilegios usando directamente el control de los privilegios de la base de datos mysql...lo que me falta es esto : Public Sub ControlarUsuarioYPass()
codigo
Imports MySql.Data.MySqlClient
Imports System.Data
Public Class frmUsuarios
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim conn As New MySqlConnection
Dim myCommand As New MySqlCommand
Dim cadena As String = "GRANT"
ControlarUsuarioYPass()
conn.ConnectionString = "Address=" & My.Settings.HostIP & "; user id=" & My.Settings.Usuario & "; password=" & My.Settings.Password & "; database=nac1"
If (TextBox2.Text.Length < 6) Then
MsgBox("El Nombre de Usuario tiene que tener al menos seis (6) caracteres")
Else
If (TextBox3.Text.Length < 6) Then
MsgBox("Por seguridad el largo minimo de la contraseña debe se de" & (Chr(13) & Chr(10)) & "no menos de seis (6) Caracteres")
Else
Try
If conn.State = ConnectionState.Closed Then conn.Open()
Try
myCommand.Connection = conn
'GRANT SELECT ON * . * TO 'Eliminar'@'%' (para todas las bases de Datos)
'GRANT SELECT ON `BaseDeDatos` . `Tabla` TO 'Usuario'@'%';
'**********************************************************************
'**********************************************************************
'CONTROLO LOS PERMISOS DE LOS CHECKBOX
If ComboBox1.SelectedItem = "Administrador" Then
cadena = cadena & " SELECT, INSERT, UPDATE, DELETE ON `nac1` . * TO '" & TextBox2.Text & "'@'%' IDENTIFIED BY '" & TextBox3.Text & "' WITH GRANT OPTION"
Else
If ComboBox1.SelectedItem = "Solo Lectura" Then
cadena = cadena & " SELECT"
Else
If ComboBox1.SelectedItem = "Lectura / Escritura" Then
cadena = cadena & " SELECT, INSERT, UPDATE, DELETE"
Else
MsgBox("Debe seleccionar algun Permiso")
Exit Sub
End If
End If
cadena = cadena & " ON `nac1` . * TO '" & TextBox2.Text & "'@'%' IDENTIFIED BY '" & TextBox3.Text & "'"
If ComboBox2.SelectedItem = "Alumnos" Then
cadena = cadena & "`alumnos` TO '" & TextBox2.Text & "'@'%' IDENTIFIED BY '" & TextBox3.Text & "'"
Else
If ComboBox2.SelectedItem = "Profesores" Then
cadena = cadena & "`profesores` TO '" & TextBox2.Text & "'@'%' IDENTIFIED BY '" & TextBox3.Text & "'"
Else
If ComboBox2.SelectedItem = "Alumnos y Profesores" Then
cadena = cadena & "`alumnos, profesores` TO '" & TextBox2.Text & "'@'%' IDENTIFIED BY '" & TextBox3.Text & "'"
Else
MsgBox("Debe seleccionar algun formulario")
End If
End If
End If
End If
'"GRANT SELECT, INSERT ON `nac1` . * TO '" & TextBox2.Text & "'@'%' IDENTIFIED BY '" & TextBox3.Text & "'"
myCommand.CommandText = cadena
myCommand.ExecuteNonQuery()
'VACIO LOS CAMPOS
TextBox2.Text = ""
TextBox3.Text = ""
ComboBox1.Text = ""
ComboBox2.Text = ""
MsgBox("Usuario Creado con Exito!!!", MsgBoxStyle.OkOnly + MsgBoxStyle.Exclamation, "Usuarios")
Catch ex As MySqlException
If (ex.ErrorCode = -2147467259) Then
MsgBox("Usted No Tiene Permisos para realizar esta Operacion")
Else
MsgBox("Hubo un Error al Intentar Agrgar un Usuario")
End If
End Try
If conn.State = ConnectionState.Open Then conn.Close()
Catch ex As Exception
MsgBox("Hubo un Error al conectarce con el Servidor")
End Try
End If
End If
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim conn As New MySqlConnection
Dim myCommand As New MySqlCommand
conn.ConnectionString = "Address=" & My.Settings.HostIP & "; user id=" & My.Settings.Usuario & "; password=" & My.Settings.Password & "; database=nac1"
Try
If conn.State = ConnectionState.Closed Then conn.Open()
Try
myCommand.Connection = conn
myCommand.CommandText = "DROP USER '" & TextBox1.Text & "'@'%'"
myCommand.ExecuteNonQuery()
TextBox1.Text = ""
MsgBox("Usuario Eliminado con Exito!!!", MsgBoxStyle.OkOnly + MsgBoxStyle.Exclamation, "Usuarios")
Catch ex As MySqlException
If (ex.ErrorCode = -2147467259) Then
MsgBox("Usted No Tiene Permisos para realizar esta Operacion")
Else
MsgBox("Hubo un Error al Intentar Eliminar un Usuario")
End If
End Try
If conn.State = ConnectionState.Open Then conn.Close()
Catch ex As Exception
MsgBox("Hubo un Error al conectarce con el Servidor")
End Try
End Sub
Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
If ComboBox1.SelectedItem = "Administrador" Then
ComboBox2.Enabled = False
Else
ComboBox2.Enabled = True
End If
End Sub
Public Sub ControlarUsuarioYPass()
End SubEnd Class
Me falta el control de privilegios.... en ControlarUsuarioYPass(), me ayudarían a encontrar el código que falta?? por favor....ya me quedé anulado, por eso les escribo...saludos y gracias....
- Tipo cambiado ARIELIBANEZ domingo, 30 de diciembre de 2012 2:05 no es debate