Solo para agregar algo:
uso los componentes FIBPlus y este tiene uno
TpFIBSecurityService paleta
FIBPlusServices el cual se encarga de adminstrar usuarios.
las rutinas para crear, eliminar o modificar son estas:
Crear usuario:
Código Delphi
[-]
pFIBSecurityService1.Params.Values['user_name'] := 'sysdba';
pFIBSecurityService1.Params.Values['password'] := 'masterkey';
pFIBSecurityService1.Active := True;
try
pFIBSecurityService1.UserName := edUserName.Text;
pFIBSecurityService1.Password := edPassword.Text;
pFIBSecurityService1.FirstName := edFirstName.Text;
pFIBSecurityService1.LastName := edLastName.Text;
pFIBSecurityService1.GroupID := StrToInt(edGroupID.text);
pFIBSecurityService1.AddUser;
finally
pFIBSecurityService1.Active := False;
end;
Modificar usuario:
Código Delphi
[-]
pFIBSecurityService1.Params.Values['user_name'] := 'sysdba';
pFIBSecurityService1.Params.Values['password'] := 'masterkey';
pFIBSecurityService1.Active := True;
try
pFIBSecurityService1.UserName := edUserName.Text;
pFIBSecurityService1.Password := edPassword.Text;
pFIBSecurityService1.FirstName := edFirstName.Text;
pFIBSecurityService1.LastName := edLastName.Text;
pFIBSecurityService1.GroupID := StrToInt(edGroupID.text);
pFIBSecurityService1.ModifyUser;
finally
pFIBSecurityService1.Active := False;
end;
Borrar usuario:
Código Delphi
[-]
pFIBSecurityService1.Params.Values['user_name'] := 'sysdba';
pFIBSecurityService1.Params.Values['password'] := 'masterkey';
pFIBSecurityService1.Active := True;
try
pFIBSecurityService1.UserName := edUserName.Text;
pFIBSecurityService1.DeleteUser;
finally
pFIBSecurityService1.Active := False;
end;
Supongo y otros componentes libres como zeos tienen implementada esta funcion.
Como referencia te dejo el link
Codigo Fuente