Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Permettre aux utilisateurs de ne voir que certains enregistrements

3 réponses
Avatar
Olivier
Bonjour,

Est-il possible de limiter la visibilit=E9 des utilisateurs=20
=E0 certains enregistrements d'une table, afin qu'ils ne=20
voient que ce qui les concernent. Est-il possible par=20
exemple en fonction de la valeur de leur mot de passe (je=20
pr=E9cise que je suis administrateur de la base) de ne leur=20
permettre d'acc=E9der qu'=E0 certains enregistrements ?

merci,

Olivier

3 réponses

Avatar
hm15
Bonjour Olivier,

il sera nécessaire, à mon avis, de passer par des requêtes sur lesquelles tu
donneras des droits différents selon les utilisateurs (ou groupes
d'utilisateurs).
Bien entendu, tes formulaires seront basés sur ces requêtes.

Ce n'est pas tout à fait la valeur du mot de passe qui est pris en compte
mais l'identifiant de l'utilisateur.

Cordialement,

Annette
---------------------------------------------------------------------------
www.horizon-micro.com


"Olivier" a écrit dans le message de
news: 04fe01c3d3e1$3296ecc0$
Bonjour,

Est-il possible de limiter la visibilité des utilisateurs
à certains enregistrements d'une table, afin qu'ils ne
voient que ce qui les concernent. Est-il possible par
exemple en fonction de la valeur de leur mot de passe (je
précise que je suis administrateur de la base) de ne leur
permettre d'accéder qu'à certains enregistrements ?

merci,

Olivier
Avatar
Benoit Compoint [MS]
Bonjour Olivier,

Vous trouverez ci-dessous des précisions sur la solution que vous a déjà
donnée Annette.

Vous pouvez réaliser la protection des données que vous souhaitez en créant
une requête "avec les autorisations du propriétaire".
Par exemple, supposons que vous souhaitiez sécuriser ainsi la table nommée
"MaTable" qui comporte le champ "Utilisateur".

Vous pouvez créer un nouvel objet requête nommé par exemple "MaRequête" dans
votre base de données en utilisant la chaîne SQL suivante :

SELECT MaTable.*
FROM MaTable
WHERE MaTable.Utilisateur=CurrentUser()
WITH OWNERACCESS OPTION;

Vous veillerez ensuite à baser sur cette nouvelle requête tous les
formulaires, états et requêtes qui étaient initialement directement basés
sur la table "MaTable".

Les utilisateurs finaux n'auront aucune autorisation sur la table "MaTable",
et ils n'auront pas l'autorisation d'administrer la requête "MaRequête" ni
de modifier sa structure.

Evidemment vous ferez en sorte que le propriétaire de la table "MaTable" et
de la requête "MaRequête" soit un membre du groupe
des administrateurs, mais que ce ne soit pas l'administrateur prédéfini
"Administrateur" (qui est appelé "Admin" dans la version anglaise d'Access).
En effet si le compte "Administrateur" peut accéder aux enregistrements,
n'importe quel utilisateur d'Access pourra accéder à tous les
enregistrements en recréant un fichier System.mdw qui contiendra un compte
"Administrateur" qui ne sera pas associé à un mot de passe.

Benoît Compoint


"hm15" wrote in message
news:
Bonjour Olivier,

il sera nécessaire, à mon avis, de passer par des requêtes sur lesquelles
tu

donneras des droits différents selon les utilisateurs (ou groupes
d'utilisateurs).
Bien entendu, tes formulaires seront basés sur ces requêtes.

Ce n'est pas tout à fait la valeur du mot de passe qui est pris en compte
mais l'identifiant de l'utilisateur.

Cordialement,

Annette
--------------------------------------------------------------------------
-

www.horizon-micro.com


"Olivier" a écrit dans le message de
news: 04fe01c3d3e1$3296ecc0$
Bonjour,

Est-il possible de limiter la visibilité des utilisateurs
à certains enregistrements d'une table, afin qu'ils ne
voient que ce qui les concernent. Est-il possible par
exemple en fonction de la valeur de leur mot de passe (je
précise que je suis administrateur de la base) de ne leur
permettre d'accéder qu'à certains enregistrements ?

merci,

Olivier




Avatar
Merci à tous les deux pour ces conseils

Olivier

-----Message d'origine-----
Bonjour Olivier,

Vous trouverez ci-dessous des précisions sur la solution
que vous a déjà

donnée Annette.

Vous pouvez réaliser la protection des données que vous
souhaitez en créant

une requête "avec les autorisations du propriétaire".
Par exemple, supposons que vous souhaitiez sécuriser
ainsi la table nommée

"MaTable" qui comporte le champ "Utilisateur".

Vous pouvez créer un nouvel objet requête nommé par
exemple "MaRequête" dans

votre base de données en utilisant la chaîne SQL
suivante :


SELECT MaTable.*
FROM MaTable
WHERE MaTable.Utilisateur=CurrentUser()
WITH OWNERACCESS OPTION;

Vous veillerez ensuite à baser sur cette nouvelle
requête tous les

formulaires, états et requêtes qui étaient initialement
directement basés

sur la table "MaTable".

Les utilisateurs finaux n'auront aucune autorisation sur
la table "MaTable",

et ils n'auront pas l'autorisation d'administrer la
requête "MaRequête" ni

de modifier sa structure.

Evidemment vous ferez en sorte que le propriétaire de la
table "MaTable" et

de la requête "MaRequête" soit un membre du groupe
des administrateurs, mais que ce ne soit pas
l'administrateur prédéfini

"Administrateur" (qui est appelé "Admin" dans la version
anglaise d'Access).

En effet si le compte "Administrateur" peut accéder aux
enregistrements,

n'importe quel utilisateur d'Access pourra accéder à
tous les

enregistrements en recréant un fichier System.mdw qui
contiendra un compte

"Administrateur" qui ne sera pas associé à un mot de
passe.


Benoît Compoint


"hm15" wrote in message
news:
Bonjour Olivier,

il sera nécessaire, à mon avis, de passer par des
requêtes sur lesquelles


tu
donneras des droits différents selon les utilisateurs
(ou groupes


d'utilisateurs).
Bien entendu, tes formulaires seront basés sur ces
requêtes.



Ce n'est pas tout à fait la valeur du mot de passe qui
est pris en compte


mais l'identifiant de l'utilisateur.

Cordialement,

Annette
-------------------------------------------------------
-------------------


-
www.horizon-micro.com


"Olivier" a écrit
dans le message de


news: 04fe01c3d3e1$3296ecc0$
Bonjour,

Est-il possible de limiter la visibilité des
utilisateurs


à certains enregistrements d'une table, afin qu'ils ne
voient que ce qui les concernent. Est-il possible par
exemple en fonction de la valeur de leur mot de passe
(je


précise que je suis administrateur de la base) de ne
leur


permettre d'accéder qu'à certains enregistrements ?

merci,

Olivier





.