Einführung / Konfiguration des FirstSpirit-Servers / Datenbankanbindung / Rechte für Datenbank-Benutzerkonten

Notwendige Rechte für Datenbank-Benutzerkonten

Abhängig von der verwendeten Datenbank sind bestimmte Rechte notwendig, die in den folgenden Abschnitten beschrieben werden.

Oracle-Datenbanken

Für DBA-Layer:

CREATE USER <dbuser> IDENTIFIED BY "<password>";
GRANT DBA TO <dbuser>;

Für Standard-Layer:

CREATE USER <dbuser> IDENTIFIED BY "<password>";
GRANT CONNECT TO <dbuser>;
GRANT RESOURCE TO <dbuser>;

MySQL-Datenbanken

Für DBA-Layer:

# mysqladmin --default-character-set=utf8 create <dbname>
# mysql
mysql> CREATE USER <dbuser> IDENTIFIED BY "<password>";
mysql> GRANT ALL PRIVILEGES ON *.* TO <dbuser>;
mysql> GRANT GRANT OPTION ON *.* TO <dbuser>;

Für Standard-Layer:

# mysqladmin --default-character-set=utf8 create <dbname>
# mysql
mysql> CREATE USER <dbuser> IDENTIFIED BY "<password>";
mysql> GRANT ALL PRIVILEGES ON <dbname>.* TO <dbuser>;

Die Angabe der Zeichenkodierung UTF-8 ist erst ab MySQL Version 5 sinnvoll.

Die InnoDB Storage-Engine muss auf dem MySQL-Server aktiviert sein!

Empfehlenswerte MySQL-Server-Parameter für Produktionssysteme:

[mysqld]
set-variable=max_allowed_packet=4M
key_buffer_size=20M
sort_buffer_size=1M
query_cache_size=14M
innodb_buffer_pool_size=128M

PostgreSQL

Für DBA-Layer:

createdb -E UTF8 myDBname "my DB description text"
createuser -D -A -P -E myDBuser
psql -d myDBname -c "grant create on database myDBname to myDBuser;"

Für Standard-Layer:

createdb -E UTF8 myDBname "my DB description text"
createuser –D –A -P -E myDBuser

Alle Abfragen bei createuser können mit "Nein" beantwortet werden, da weder bei DBA-Layer noch Standard-Layer erweiterte Benutzerrechte, außer denen über grant create für DBA-Layer zugewiesenen, notwendig sind.

In der Datei /etc/postgres/pg_hba.conf muss anschließend noch die Passwort-Authentifizierung (Typ MD5) für den angegebenen Benutzer auf die verwendete Datenbank eingetragen werden. Um diese Änderung dem Datenbank-Server bekannt zu machen, ist folgender Aufruf notwendig:

pg_ctl reload

IBM DB2

Erstellen der Datenbank (DBA-Layer und Standard-Layer):

db2 create database myDB using codeset utf-8 territory us pagesize 32 k

db2 update db cfg for myDB using applheapsz 1024

db2 connect to myDB

db2 create schema myUser

Die letzte Zeile ist nur notwendig, wenn das Standard-Schema „myUser“ der Datenbank „myDB“ noch nicht vorhanden ist.

„myUser“ ist der JDBC-Benutzername, der bei DB2 dem Instanznamen entspricht, also beispielsweise "db2inst1". Bei Bedarf kann aber auch ein anderer Schema-Name verwendet werden.

Folgende Berechtigungen sind notwendig für das DB2-Benutzerkonto:

  • Für DBA-Layer: DBADM
  • Für Standard-Layer: CONNECT, CREATETAB, BINDADD, IMPLICITSCHEMA

MS-SQL-Server

Wurde in der Layerdefinition kein SCHEMA definiert, benötigt der DB-Benutzer in der unter „jdbc.URL“ gesetzten Datenbank nicht nur die „public“ und „db_owner“ Rechte, sondern zusätzlich noch die Serverrolle „System Administrators“ (im „SQL Server Enterprise Manager“ unter „Sicherheit/Benutzernamen“ im Register „Serverrollen“). Mit diesen Rechten kann der DB-Benutzer neue Tabellenbesitzer (gleich SCHEMA) anlegen (z. B. beim Import von Projekten).

(siehe Konfigurationsbeispiel; spezifische Parameter).

© 2005 - 2024 Crownpeak Technology GmbH | Alle Rechte vorbehalten. | FirstSpirit 2024.4 | Datenschutz