Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Sécurité
Sécurité Le forum qui s'occupe de votre préoccupation de sécuriser l'accès à votre application Access, ainsi qu'à la sécurité des données.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/06/2006, 09h14   #1
Invité de passage
 
Inscription : juin 2006
Messages : 2
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 2
Points : 1
Points : 1
Par défaut Changer les droits sur un objet via une requete

J'ai une base Access2000 que je récupère par copie de fichier (pas de soucis).
Je me connecte à la base en tant qu'administrateur (pas de soucis).
Lorsque je veux aller lire la table xxx, j'ai l'erreur suivante (c'ets un message d'erreur dans Windev, mais le même problème apparait en ouverture directe de la base dans Access) :

Description = Impossible de lire les enregistrements; pas d'autorisation de lecture sur 'xxx'.
Source = Microsoft JET Database Engine
Help Context = 5003033
SQL State = 3112
Error Number = -2147217911
Native Error Number = -532023155

Bien entendu, si je vais manuellement ajouter les droits en lecture sur la table, tout fonctionne correstement après.

Comment faire pour modifier les droits sur les tables via une requete SQL ?

Cordialement,

gg
gg72160 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/06/2006, 21h14   #2
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 940
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 940
Points : 6 279
Points : 6 279
Bonsoir,

Je ne suis pas un pro dans le domaine la sécurité Access mais je vais tenter de répondre.
Tu trouvera des infos à cette adresse : http://msdn.microsoft.com/library/de...l/acadvsql.asp

Exemple vite fait :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Dim oConn As ADODB.Connection
Dim oCmd As ADODB.Command
Dim strSQL As String

Set oConn = New ADODB.Connection
Set oCmd = New ADODB.Command

oConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=" & _
                         CurrentProject.FullName & ";" & _
                         "Jet OLEDB:System database=E:\PROGRA~1\MICROS~1\Office\SYSTEM.MDW;"

oConn.Open

Set oCmd.ActiveConnection = oConn
strSQL = "GRANT SELECT ON TABLE Table1 TO Admin"
oCmd.CommandText = strSQL
oCmd.Execute

Set oCmd = Nothing
oConn.Close
Set oConn = Nothing
E:\PROGRA~1\MICROS~1\Office\SYSTEM.MDW : fichier sécurité Access sur mon PC
CurrentProject.FullName = chemin complet vers ma base access

Bon courage.
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h19.


 
 
 
 
Partenaires

Hébergement Web