santiago14
12-12-2018, 01:51:05
Buenas, estoy intentando crear una BBDD de seguridad particular (non-default security database). Sigo las indicaciones de la Documentación pero no he podido lograrlo.
La única particularidad mía respecto al ejemplo que se cita es: En mi configuración tengo DataBaseAccess = None.
Pongo lo que dice la documentación:
Firebird now supports an unlimited number of security databases. Any database may act as a security database and can be a security database for itself.
Use databases.conf to configure a non-default security database. This example configures /mnt/storage/private.security.fdb as the security database for the first and second databases:
first = /mnt/storage/first.fdb
{
SecurityDatabase = /mnt/storage/private.security.fdb
}
second = /mnt/storage/second.fdb
{
SecurityDatabase = /mnt/storage/private.security.fdb
}
Here we use third database as its own security database:
third = /mnt/storage/third.fdb
{
SecurityDatabase = third
}
Note
The value of the SecurityDatabase parameter can be a database alias or the actual database path.
Creating an Alternative Security Database
To start using a separate, non-default security database, the first step is to create it, unless it already exists. An embedded isql connection is used:
> isql -user sysdba
SQL> create database '/mnt/storage/private.security.fdb';
Now connect to any database which will be served by the security database you are currently preparing, in order to create its SYSDBA user:
SQL> connect first;
SQL> create user sysdba password 'sysdba-in-private-security-password';
SQL> commit;
SQL> exit;
Esta es mi configuración en mi Databases.conf
VendedoresPruebaSecurity = D:\SistemasXE5\SamiSoft\Software\BBDD\PruebaSecurity.fdb
{
MiSecurity = D:\SistemasXE5\SamiSoft\Software\BBDD\MiSecurityFB30.fdb
}
Esto me responde:
SQL> -user sysdba
CON> create database D:\SistemasXE5\SamiSoft\Software\BBDD\MiSecurityFB30.fdb;
Use CONNECT or CREATE DATABASE to specify a database
SQL> create database 'D:\SistemasXE5\SamiSoft\Software\BBDD\MiSecurityFB30.fdb';
Statement failed, SQLSTATE = 28000
Use of database at location D:\SISTEMASXE5\SAMISOFT\SOFTWARE\BBDD\MISECURITYFB30.FDB is not allowed by server configuration
Cuando lo hago con un alias:
SQL> create database 'MiSecurityFB30.fdb';
Statement failed, SQLSTATE = 28000
Use of database at location C:\FIREBIRD30\MISECURITYFB30.FDB is not allowed by server configuration
SQL> create database MiSecurityFB30.fdb;
Statement failed, SQLSTATE = 42000
SQL error code = -104
-Token unknown
-MiSecurityFB30
....
¿Alguien ha tenido suerte con esto?
Bueno, espero haber sido claro.
Santiago
La única particularidad mía respecto al ejemplo que se cita es: En mi configuración tengo DataBaseAccess = None.
Pongo lo que dice la documentación:
Firebird now supports an unlimited number of security databases. Any database may act as a security database and can be a security database for itself.
Use databases.conf to configure a non-default security database. This example configures /mnt/storage/private.security.fdb as the security database for the first and second databases:
first = /mnt/storage/first.fdb
{
SecurityDatabase = /mnt/storage/private.security.fdb
}
second = /mnt/storage/second.fdb
{
SecurityDatabase = /mnt/storage/private.security.fdb
}
Here we use third database as its own security database:
third = /mnt/storage/third.fdb
{
SecurityDatabase = third
}
Note
The value of the SecurityDatabase parameter can be a database alias or the actual database path.
Creating an Alternative Security Database
To start using a separate, non-default security database, the first step is to create it, unless it already exists. An embedded isql connection is used:
> isql -user sysdba
SQL> create database '/mnt/storage/private.security.fdb';
Now connect to any database which will be served by the security database you are currently preparing, in order to create its SYSDBA user:
SQL> connect first;
SQL> create user sysdba password 'sysdba-in-private-security-password';
SQL> commit;
SQL> exit;
Esta es mi configuración en mi Databases.conf
VendedoresPruebaSecurity = D:\SistemasXE5\SamiSoft\Software\BBDD\PruebaSecurity.fdb
{
MiSecurity = D:\SistemasXE5\SamiSoft\Software\BBDD\MiSecurityFB30.fdb
}
Esto me responde:
SQL> -user sysdba
CON> create database D:\SistemasXE5\SamiSoft\Software\BBDD\MiSecurityFB30.fdb;
Use CONNECT or CREATE DATABASE to specify a database
SQL> create database 'D:\SistemasXE5\SamiSoft\Software\BBDD\MiSecurityFB30.fdb';
Statement failed, SQLSTATE = 28000
Use of database at location D:\SISTEMASXE5\SAMISOFT\SOFTWARE\BBDD\MISECURITYFB30.FDB is not allowed by server configuration
Cuando lo hago con un alias:
SQL> create database 'MiSecurityFB30.fdb';
Statement failed, SQLSTATE = 28000
Use of database at location C:\FIREBIRD30\MISECURITYFB30.FDB is not allowed by server configuration
SQL> create database MiSecurityFB30.fdb;
Statement failed, SQLSTATE = 42000
SQL error code = -104
-Token unknown
-MiSecurityFB30
....
¿Alguien ha tenido suerte con esto?
Bueno, espero haber sido claro.
Santiago