Privilegios de bases de datos SQL Server
Establezca los privilegios de bases de datos para determinar la autorización que debe tener para crear o acceder a las tablas de los almacenes de datos para las bases de datos de SQL Server.
Los permisos en SQL Server se asignan a roles que se pueden asignar a usuarios, de forma similar a los grupos de usuarios de Windows. Hay dos tipos de roles:
- Los Roles de servidor proporcionan permisos relacionados con el servidor de bases de datos, como copia de seguridad, conclusión, creación de bases de datos nuevas, gestión de inicios de sesión y enlace a otros servidores.
- Los Roles de base de datos proporcionan permisos de base de datos más tradicionales, como acceso a tablas y los que se muestran en la lista más abajo.
- db_ddladmin
- db_datawriter
- db_datareader
- SqlJDBCXAUser
- No se puede asignar el rol de administrador del sistema (SYSADMIN) al usuario.
- El usuario se debe correlacionar con la base de datos maestra con el rol SqlJDBCXAUser.
Para obtener más información, consulte la página WebSphere Application Server en la referencia relacionada.
Cuando cree esquemas de base de datos utilizando la instalación típica o los scripts de base de datos generados mediante el programa de utilidad de línea de mandatos BPMConfig, el ID de usuario debe tener la autoridad para crear tablas. Una vez creadas las tablas, deberá tener autorización para seleccionar, insertar, actualizar y suprimir información en las tablas.
Los tres roles de base de datos fijos antes indicados cubren el 80% de los requisitos; el resto de permisos son:
- •CREATE INDEXTYPE: No INDEXTYPE, pero db_ddladmin puede crear índices y especificar el tipo
- •CREATE TABLESPACE: No TABLESPACE, pero conceptos similares son WORKLOAD GROUP, RESOURCE POOL yd PARTITION SCHEME
- •ALTER LOCK TABLE: Esta funcionalidad está disponible por medio de Sugerencias de bloqueo, utilizando los mandatos de lectura y grabación (p.e., SELECT * FROM nombre tabla WHERE TABLOCKX)
- •CREATE SEQUENCE: Este mandato está en la documentación de SQL Server 2012, pero no en 2008 R2
| Privilegios mínimos requeridos para crear objetos en la base de datos | Privilegios mínimos requeridos para acceder a objetos en la base de datos |
|---|---|
| Idealmente el ID de usuario requiere privilegios DB OWNER en los almacenes de datos utilizados para IBM Business Process Manager. | Configure SQL Server para la autenticación de SQL Server y Windows para que la autenticación esté
basada en un ID de inicio de sesión y una contraseña de servidor SQL.
El ID de usuario debe
ser el propietario de las tablas, o miembro de un grupo que tiene autorización suficiente para emitir sentencias TRUNCATE TABLE. Consulte la tabla siguiente para ver privilegios detallados. |
La siguiente tabla describe más privilegios de bases de datos SQL Server para componentes de IBM Business Process Manager. Los privilegios de instalación son los privilegios requeridos para instalar y configurar el producto. Los privilegios de tiempo de ejecución son los privilegios requeridos para ejecutar el producto.
| Componente | Privilegios de instalación y actualización | Privilegios de tiempo de ejecución |
|---|---|---|
| BD común | CREATE TABLE, ALTER TABLE, INSERT, CREATE USER, ALTER USER | SELECT, UPDATE, DELETE, INSERT, CREATE
VIEW, CREATE PROCEDURE El usuario de tiempo de ejecución debe tener los privilegios USAGE ON SEQUENCE en todas las secuencias del script createSchema_*.sql para las base de datos común. |
| Business Space | CREATE TABLE, ALTER TABLE, INSERT, CREATE USER, ALTER USER | SELECT, UPDATE, DELETE, INSERT, CREATE VIEW, CREATE PROCEDURE |
| Business Process Choreographer | CREATE TABLE, ALTER TABLE, CREATE VIEW, CREATE USER, CREATE PROCEDURE | SELECT, UPDATE, DELETE, INSERT |
| Motores de mensajería | CREATE TABLE | SELECT, UPDATE, DELETE, INSERT, DROP ANY TABLE Nota: Los motores de mensajería
utilizan la sentencia TRUNCATE TABLE SQL, que puede requerir el privilegio
DROP ANY TABLE. Consulte el apartado Privilegios de base de datos.
|
| Process Server | CREATE TABLE, SELECT, INSERT, UPDATE, DELETE TABLE, DROP TABLE, CREATE INDEX, CREATE VIEW, DROP VIEW, CREATE PROCEDURE, CREATE USER, ALTER USER | SELECT, UPDATE, DELETE, INSERT, CREATE VIEW, CREATE PROCEDURE, DROP TABLE, DROP VIEW |
| Performance Data Warehouse | CREATE TABLE, SELECT, INSERT, UPDATE, DELETE TABLE, DROP TABLE, CREATE INDEX, CREATE VIEW, DROP VIEW, CREATE PROCEDURE, CREATE USER, ALTER USER | SELECT, UPDATE, DELETE, INSERT, CREATE VIEW, CREATE PROCEDURE, DROP TABLE, DROP VIEW |
| Almacén de documentos de IBM BPM |
Al configurar la base de datos para el almacén de documentos de IBM BPM, se utiliza una prestación de base de datos que se denomina EmbeddedECM. Los privilegios enumerados para el almacén de contenido de IBM BPM son necesarios para la base de datos en el archivo de propiedades que contiene la prestación EmbeddedECM. |
- Las bases de datos BPMDB y PDWDB deben haberse creado de manera que no distingan entre mayúsculas y minúsculas. Utilice el mandato COLLATE SQL_Latin1_General_CP1_CI_AS, donde CI es el valor del atributo COLLATE que se aplica a bases de datos que no distinguen entre mayúsculas y minúsculas.
- La base de datos CommonDB se debe haber creado de manera que distinga entre mayúsculas y minúsculas. Utilice el mandato COLLATE SQL_Latin1_General_CP1_CS_AS, donde CS es el valor del atributo COLLATE que se aplica a bases de datos que distinguen entre mayúsculas y minúsculas.
