Précédent   Forum des professionnels en informatique > 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 Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/12/2011, 14h52   #1
Candidat au titre de Membre du Club
 
Inscription : juillet 2009
Messages : 69
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 69
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
Membre chevronné
 
Philippe
Inscription : avril 2002
Messages : 452
Détails du profil
Informations personnelles :
Nom : Philippe
Localisation : France

Informations forums :
Inscription : avril 2002
Messages : 452
Points : 683
Points : 683
Envoyer un message via ICQ à 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
Candidat au titre de Membre du Club
 
Inscription : juillet 2009
Messages : 69
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 69
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
Candidat au titre de Membre du Club
 
Inscription : juillet 2009
Messages : 69
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 69
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
Expert Confirmé

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

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

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
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
Candidat au titre de Membre du Club
 
Inscription : juillet 2009
Messages : 69
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 69
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
Modérateur
 
Avatar de SergioMaster
 
Serge Girard
Développeur informatique
Inscription : janvier 2007
Messages : 3 624
Détails du profil
Informations personnelles :
Nom : Serge Girard
Âge : 55
Localisation : France

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

Informations forums :
Inscription : janvier 2007
Messages : 3 624
Points : 4 529
Points : 4 529
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
SergioMaster est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 15h10   #8
Candidat au titre de Membre du Club
 
Inscription : juillet 2009
Messages : 69
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 69
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
Expert Confirmé

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

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

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
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
Candidat au titre de Membre du Club
 
Inscription : juillet 2009
Messages : 69
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 69
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
Expert Confirmé

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

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

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
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
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
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
Expert Confirmé

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

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

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
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
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
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
Candidat au titre de Membre du Club
 
Inscription : juillet 2009
Messages : 69
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 69
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 Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h52.


 
 
 
 
Partenaires

Hébergement Web