Précédent   Forum du club des développeurs et IT Pro > Bases de données > Firebird > Administration
Administration Forum d'entraide sur les outils d'administration natifs pour Firebird: gbak, gfix, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 06/12/2011, 14h52   #1
nutopia
Candidat au titre de Membre du Club
 
Inscription : juillet 2009
Messages : 71
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 71
Points : 12
Points : 12
Par défaut Droits utilisateurs Firebird

Bonjour,

sur Firebird 1.5, j'aimerais donner les droits de lecture/modification à un utilisateur sur une base de données et de même, donner ces droits à un autre utilisateur sur une autre base de données.

j'ai créé mon nouvel utilisateur dans Flamerobin mais je ne sais pas comment lui donner des droits, ni en enlever à l'ancien utilisateur (qui pour l'instant accède à toutes les bases).

Merci beaucoup pour votre aide!
nutopia est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2011, 09h44   #2
Ph. B.
Expert Confirmé
 
Avatar de Ph. B.
 
Homme Philippe
Inscription : avril 2002
Messages : 1 032
Détails du profil
Informations personnelles :
Nom : Homme Philippe
Âge : 46
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : avril 2002
Messages : 1 032
Points : 2 665
Points : 2 665
Envoyer un message via ICQ à Ph. B. Envoyer un message via Skype™ à Ph. B.
Bonjour,

Peut-être faudrait-il commencer par le commencement : et

Ce qui donne :
Administration Firebird
Et pour être précis : Les droits utilisateurs

--
Philippe.
Ph. B. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2011, 15h17   #3
nutopia
Candidat au titre de Membre du Club
 
Inscription : juillet 2009
Messages : 71
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 71
Points : 12
Points : 12
merci pour ta réponse!
nutopia est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2011, 10h38   #4
nutopia
Candidat au titre de Membre du Club
 
Inscription : juillet 2009
Messages : 71
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 71
Points : 12
Points : 12
bonjour,

je ne parviens toujours pas à m'en sortir.

grant et revoke s'utilisent apparemment sur des tables

dans mon cas, je veux donner des droits aux utilisateurs sur des bases de données.

merci pour votre aide
nutopia est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2011, 12h45   #5
makowski
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 259
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 50
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 259
Points : 3 580
Points : 3 580
Citation:
grant et revoke s'utilisent apparemment sur des tables
oui entre autre, en fait plus généralement sur les objets de la base de données
pas sur la base dans son ensemble

va voir les triggers sur connexion
http://www.firebirdsql.org/file/docu...ger-dbtriggers

un exemple
Code :
1
2
3
4
5
6
7
8
SET TERM ^ ;
CREATE EXCEPTION EX_CONNECT 'Forbidden !' ^
CREATE OR ALTER TRIGGER TRG_CONN ON CONNECT
 AS
 BEGIN
  IF (USER != 'GOOD_USER')
  THEN EXCEPTION EX_CONNECT USER || ' not allowed !';
END ^
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2011, 14h02   #6
nutopia
Candidat au titre de Membre du Club
 
Inscription : juillet 2009
Messages : 71
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 71
Points : 12
Points : 12
merci pour ton aide!


J'ai essayé ton exemple mais je me suis pris ce message d'erreur en retour:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
Starting transaction...
Preparing query: 
CREATE EXCEPTION EX_CONNECT 'Forbidden !' 
Prepare time: 0.017s
Plan NOT available.
 
 
Executing...
Done.
15 fetches, 4 marks, 2 reads, 0 writes.
1 inserts, 0 updates, 0 deletes, 1 INDEX, 0 seq.
Delta memory: 17272 bytes.
RDB$EXCEPTIONS: 1 inserts. 
Total execution time: 0.070s
Preparing query: 
CREATE OR ALTER TRIGGER TRG_CONN ON CONNECT
 AS
 BEGIN
  IF (USER != 'op1')
  THEN EXCEPTION EX_CONNECT USER || ' Accès interdit!';
END 
Error: *** IBPP::SQLException ***
Context: Statement::Prepare( 
CREATE OR ALTER TRIGGER TRG_CONN ON CONNECT
 AS
 BEGIN
  IF (USER != 'OPCAIM')
  THEN EXCEPTION EX_CONNECT USER || ' Accès interdit!';
END  )
Message: isc_dsql_prepare failed
 
SQL Message : -104
Invalid token
 
Engine Code    : 335544569
Engine Message :
Dynamic SQL Error
SQL error code = -104
Token unknown - line 2, char 34
ON
 
 
Total execution time: 0.048s
Sais-tu d'où vient le problème?
Merci beaucoup.
nutopia est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 07h24   #7
SergioMaster
Modérateur
 
Avatar de SergioMaster
 
Homme Serge Girard
Développeur informatique
Inscription : janvier 2007
Messages : 4 215
Détails du profil
Informations personnelles :
Nom : Homme Serge Girard
Âge : 56
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Industrie

Informations forums :
Inscription : janvier 2007
Messages : 4 215
Points : 7 282
Points : 7 282
le SET TERM ^; n'aurait t-il pas été oublié ?
__________________
La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein
J'entends et j'oublie. Je vois et je me souviens. Je fais et je comprends . Confucius
Si votre seul outil est un marteau, vous aurez tendance a ne voir que des clous
SergioMaster est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 15h10   #8
nutopia
Candidat au titre de Membre du Club
 
Inscription : juillet 2009
Messages : 71
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 71
Points : 12
Points : 12
j'ai repassé la requête complète et j'obtiens le même message d'erreurs.
nutopia est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 15h31   #9
makowski
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 259
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 50
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 259
Points : 3 580
Points : 3 580
1/ il faut Firebird 2.1 minimum
2/ vérifie ce que tu as écris
3/ utilise isql
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 15h33   #10
nutopia
Candidat au titre de Membre du Club
 
Inscription : juillet 2009
Messages : 71
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 71
Points : 12
Points : 12
ben comme je le disais, j'ai une 1.5 et je n'ai pas la possibilité de mettre une version plus récente
nutopia est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 18h15   #11
makowski
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 259
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 50
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 259
Points : 3 580
Points : 3 580
donc seuls les grants sur les objets peuvent régler ton problème
les utilisateurs pourront se connecter, mais ne verront que ce que tu veux bien qu'ils voient
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 18h31   #12
Barbibulle
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 726
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 43

Informations forums :
Inscription : octobre 2002
Messages : 1 726
Points : 2 375
Points : 2 375
Pour vous faciliter la gestion des droits d'accès à votre base, utilisez les ROLES.

Créé un ROLE UTILISATEUR par exemple.

Et donc donnez les droits d'accès aux différents objets de votre base à ce ROLE (les tables, PS, VUES etc).

Ensuite pour donner accès à une personne (ou lui retirer ses droits) il suffit de donner (ou retirer) les droits du role UTILISATEUR à cette personne.

PS : Pour se connecter il faut préciser qu'on utilise le ROLE UTILISATEUR.


Enfin regardez la FAQ : http://firebird.developpez.com/faq/?page=GRANTROLE
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/12/2011, 18h12   #13
makowski
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 259
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 50
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 259
Points : 3 580
Points : 3 580
pas certains que les roles simplifient les choses
cela ne change rien au fait qu'il faille attribuer les droits à tous les objets
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2011, 10h09   #14
Barbibulle
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 726
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 43

Informations forums :
Inscription : octobre 2002
Messages : 1 726
Points : 2 375
Points : 2 375
Oui, il faut le faire avec le role comme on le ferait pour un utilisateur.

Par contre c'est par la suite que l'on gagne du temps et de la souplesse.

Lorsqu'on va vouloir ajouter un utilisateur, supprimer ses droits sur cette base etc..

Au lieu d'ajouter les droits (ou d'enlever les droits) à chaque objet pour cet utilisateur au risque d'en oublier si on n'a pas fait un programme pour le faire, il suffit d'un seul grant ou revoke si l'on utilise les roles.

De plus si l'on a besoin de droits différents en fonction des profils d'utilisateurs, il sera bien plus compréhensible (pour le développeur notamment) de manipuler des roles (Vendeurs, Managers, Comptables, Clients etc..) que des noms d'utilisateur.
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2011, 11h12   #15
nutopia
Candidat au titre de Membre du Club
 
Inscription : juillet 2009
Messages : 71
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 71
Points : 12
Points : 12
Merci pour vos réponses.

Je vais voir ce que je peux faire.
nutopia est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 06h43.


 
 
 
 
Partenaires

Hébergement Web