Administracion de SQLServer SSAS SSIS SSRS
Administracion de SQLServer SSAS SSIS SSRS
Administracion de SQLServer SSAS SSIS SSRS
Página 2
SSIS / SSAS / SSRS
Las necesidades actuales de información hacen que cada día se utilicen más productos para
cubrir esas necesidades. Dentro del mundo Microsoft han aparecido desde hace años
distintos servicios para cubrir áreas que el motor relacional no llegaba. Estos servicios son:
El motivo que me ha impulsado a la realización de este libro es que sobre todo la gente que
venimos del área relacional nos cuesta entrar a administrar este tipo de servicios porque no
estamos acostumbrados y tenemos cierta reticiencia ya que no tenemos un gran
conocimiento del producto. De hecho lo que nos encontramos en empresas a las que vamos
es que o no se mantienen o lo hacen los desarrolladores. Como en otros libros anteriores y
por no querer defraudar las expectativas de nadie este es un libro de administración básica
donde se tratarán los puntos más esenciales a gestionar de estos servicios.
En este libro ilustraremos los ejemplos con la version de SQL Server 2016 Developer.
SSAS
Como citamos anteriormente con Analisys Services se puede trabajar de dos maneras, modo
multidimensional y modo tabular. El modelo multidimensional es el más utilizado y permite
realizar modelos complejos y minería de datos. El modelo tabular permite hacer modelos de
datos más simples y por hacer una aproximación para una mejor comprensión del lector
tiene una estructura que se parece más a un modelo relacional y además está todo en
memoria.
A pesar de esto ambos tienen muchas analogías en cuestiones de administración, esto es,
parametrización, seguridad y backups por lo que no nos resultará costoso trabajar con un
modelo u otro.
1
Si quieres conocer más acerca de Business Intellligence te recomiendo el libro de mi compañero y amigo
Salvador Ramos “Vea el cubo medio lleno”.
Para estos ejemplos hemos utilizado las bbdds de Adventure Works 2014 del modelo
multidimensional y tabular.
Configuración
Las siguientes propiedades básicas marcadas con un rectángulo de color son las mismas en el
modo multidimensional y tabular.
Seguridad
La seguridad de una instancia de SSAS se basa normalmente en autenticación de windows.
Puesto que las instancias de SSAS contienen información sobre la que tomar decisiones de
negocio la seguridad es un elemento primordial.
Para proteger una instancia más lo tenemos que hacer a varios niveles.
Firewall
Este debería estar activado en todo momento, si bien es cierto que muy a menudo nos lo
encontramos en las empresas desactivado. Una vez que está activado lo que hay que hacer
es añadir excepciones para que se puedan recibir peticiones de entrada por los puertos.
El puerto por defecto para instancias con nombre por defecto es el 2383
El puerto para instancias con nombre es el 2382
Transmisión de Datos
Por defecto las comunicaciones entre el servidor y los clientes se encuentran encriptadas.
Cuenta de Servicio
El siguiente eslabón de la cadena de seguridad es la cuenta de servicio, los criterios que
deben tenerse en cuenta para configurarla adecuadamente son:
Si se va a instalar SSAS en cluster la cuenta debe ser una cuenta del dominio
La cuenta de servicio debe tener los mínimos privilegios posibles, esto quiere decir
que una vez que se crea no hay que darle ningún permiso adicional
En las directivas locales de seguridad hay que añadirlo a la directiva “Log on as a
services”
Si la cuenta de servicio es para una instancia tabular hay que añadir la cuenta de
servicio a las siguiente tres directivas:
o “Incresase a process working set”. Este privilegio se encuentra por defecto
disposible para todos los usuarios del grupo “Usuarios”. Si se le quita el
privilegio es posible que el servicio no se inicie y de un error
o “Adjust memory quotas for a process”. Este privilegio se usa para solicitar
mas memoria cuando un proceso dispone de recursos insuficientes
o “Lock pages in memory”. Este privilegio solo es necesario si la paginación está
desactivada, esto es, el servicio usa el archivo de paginación de windows. Si la
propiedad “Memory \VertiPaqPagingPolicy” = 0 es obligatorio activar esta
directiva
Si el modo es ROLAP la cuenta necesitará permisos de lectura, opcionales de
escritura. En el modo multidimensional existen a su vez tres sabores:
o Backups
o Log
o WriteBack Tables (Escritura en el cubo desde programa cliente)
Archivos
Esto solo aplica si los cubos son del modo multidimensional tipo MOLAP. Por defecto SSAS
no encripta los ficheros por lo que se deberían encriptar desde el sistema operativo. Hay
que tener en cuenta que esto puede tener impacto en el rendimiento, especialmente en el
consumo de CPU ya que cuando escriba tendrá que comprimir y esto se produce
especialmente cuando se procesa el cubo.
Servidor
Si nos situamos en una instancia de SSAS, pulsamos el botón derecho del ratón,
selecccionamos “Properties” y “Security” nos encontraremos en un área de trabajo donde
podremos ver los administradores de la instancia que existen. En esta pantalla también
podremos añadir nuevos y quitar existentes.
Los administradores pueden realizar cualquier tarea sobre los objetos de la instancia o los
datos.
BBDD / Cubos Multidimensionales
Aunque son las bases de datos las que contienen los cubos son los cubos los que otorgan el
siguiente nivel de seguridad.
En las bases de datos se pueden hacer tres operaciones a las que hay que otorgar permisos:
Roles
Los permisos se quitan/otorgan a roles. Los permisos efectivos de un rol vienen dados por la
suma de todos los permisos asignados al rol, ejemplo:
Para hacer esto vamos a gestionar roles y permisos creanado un rol al que vamos a llamar
“Leer”.
1. Vamos a una base de datos a la carpeta “Roles”. Pulsamos el botón derecho del
ratón y elegimos la opción “New Role”
2. En la pantalla que nos aparece, en la pestaña “General” escribimos el nombre del rol
en la caja de texto “Role name”.
A nivel general se pueden asignar al rol permisos sobre la base de datos, estos son:
Solo con esto el usuario “usrSSAS” no tiene permiso para realizar ninguna acción.
3. Si abrimos el SSMS (“SQL Server Management Studio”) con este usuario y nos
ponemos en la base de datos veremos que ni siquiera le aparece
Acceso a Instancia
“None”
“Drillthrough”
“Drillthrough and Local Cube”. Además de la opción anterior el usuario puede
crear cubos locales
La última opción de esta pantalla es “Process”. Como su nombre indica esta opción
permite procesar el cubo para actualizarlo
3. En este caso y puesto que vamos a leer datos vamos a conectarnos desde excel dado
que es una operación muy habitual. Abrimos un excel con el usuario usrSSAS, vamos
a la pestaña “Data” y pulsamos el botón from “Other Sources” y elegimos el origen
de datos “From Analysis Services”
6. A pesar de existir un cubo que se llama “Adventure Works”, este cubo tiene distintas
perspectivas. Las perpectivas son como vistas del cubo que intentan “agrupar de una
forma lógica” datos de un cubo. Ejemplo, imaginemos un cubo que tiene información
ventas, compras, contabilidad, stock etc, se podrían hacer perspectivas de estos
conceptos. Importante las perspectivas no son un elelmento de seguridad como si
que lo son las vistas en un entorno relacional. Seleccionamos el cubo “Adventure
Works” y pulsamos “Finish”
7. Nos pedirá la ubicación de la hoja y celda donde poner la tabla “Pivot Table”
8. Tras crear la tabla vamos a añadir una medida “Internet Sales Amount” (importe
vendido por internet) y una dimensión, la ubicación geografica del cliente. Lo que
vemos en este informe es las ventas por región geográfica
9. Si profundizamos en la jerarquía podemos llegar incluso hasta a nivel de cliente
10. Ahora vamos a ver lo que es el Drillthrough. Si hacemos doble click en la celda con
valor $77.27 nos muestra el siguiente mensaje
11. Ahora lo que vamos a hacer es dar permisos de drillthrough (entrar en detalle) a
nivel de país, estado /provincia, ciudad , código postal hasta llegar al cliente final.
Para ello volvemos al rol “leer”, opción “Cubes” y seleccionamos “Drillthrough”.
12. Ahora repetimos la operación y hacemos doble click en la celda con valor $77.27.
Nos aparece una nueva hoja donde nos muestra el detalle de este importe que es la
suma de 49.99 + 24.99 + 2.29. Importante, Excel nos muestra el detalle tan solo de
los 1000
primeros registros, si un importe es el acumulado de mas de 1000 registros no
veremos todos
13. Ahora vamos a explicar que es el concepto Drill Down/Drill Up. En el preambulo del
tema indicabamos que era un concepto similar a una carpeta en la que pinchamos y
vemos sus elementos
14. Partimos del informe inicial donde vemos los países y sus ventas. Pulsamos el botón
derecho del ratón y seleccionamos la opción “Drill Down”
15. Al realizar esta operación nos muestra los totales por el siguiente nivel de la
jerarquía para el país Australia, esto es nos muestra el desglose por los estados de
los que está compuesto:
Si volvemos a hacer Drill Down sobre el estado “New South Wales” nos mostrará el
desglose por sus provincias y si hicieramos Drill Up nos mostraría el desglose a nivel
de país
16. Supongamos que tenemos una red de comerciales y cada comercial solo puede ver
las ventas de su ciudad. Vamos a limitar los permisos sobre nuestro usuario simple
para que solo pueda ver los datos de su ciudad que supongamos va a ser “Coffs
Harbour”
17. Para hacer esto vamos a usar la opción “Dimension Data” del rol que permite aplicar
permisos sobre los datos. En este caso vamos a la dimensión DW.Customer, atributo
City y deseleccionamos todos sus miembros (ciudades) y seleccionamos la ciudad
que queremos mostrar “Coffs Harbour”
18. Tras hacer esto volvemos a la excel en la que usamos un usuario simple, refrescamos
los datos y el resultado será el siguiente:
Permisos para Procesar
1. Para procesar lo que primero tenemos que hacer es configurar el acceso a los datos
de la bbdd relacional de donde leerá los datos el cubo. Podría haber varios origenes
de datos y habría que realizar en ellos las tareas que a continuación vamos mostrar.
Para ello vamos a acceder a la bbdd multidimensional (en nuestro caso “DW”) y
después a la carpeta “Data Sources”. Tras elegir la fuente de datos
(“AdventureWorksDW2014”) pulsamos el botón derecho del ratón y elegimos la
opción “Properties”. Esta acción nos muestra la siguiente pantalla:
2. En esta pantalla tenemos dos propiedades importantes, la primera es “Connection
String”. Esta propiedad almacena la conexión a la bbdd relacional. Lo mas sencillo es
pulsar el botón con tres puntos “…”y configurarla con el interfaz gráfico. Lo que hay
que hacer es elegir servidor de sql server, modo de autenticación y base de datos.
Tras esto pulsamos “Test Connection” para comprobar que funciona. Tras esto
pulsar el botón “Ok”
7. Para procesar podemos hacerlo a nivel de dimensión cubo o bbdd. Vamos a procesar
el nivel más bajo que es dimensión. Para ello vamos al rol y elegimos la opción
“Dimensions”. Vamos a seleccionar la dimensión “Account” y marcamos el check
“Process” y pulsamos el botón “OK”
Si queremos añadir un nuevo rol basta con pulsar el botón derecho del ratón y pulsar sobre
la opción “New role”, tras esto nos aparecerá una pantalla como la siguiente y podremos
configurarlo.
Las propiedades que se pueden establecer a los roles del modelo tabular son las siguientes:
“Full control”, control total para realizar cualquier operación sobre la base de datos,
los filtros sobre los datos no le afectan
“Process Database”, permiso para procesar la base de datos, como en los cubos
implica borrar/modificar/añadir datos nuevos pero no hay permisos para cambiar el
modelo ni consultar datos
“Read”, permite a los usuarios realizar consultas sobre el modelo basados en “Row
Filters”. Los “Row Filters” como su nombre indica son filtros sobre los datos que se
establecen sobre las tablas. Los usuario del rol solo podrán ver los datos que se ciñen
a los filtros
Por último tenemos la opcion “Row Filters”. Como su nombre indica podemos establecer
filtros sobre los datos de las tablas, pero en este caso hay que indicarselo con el lenguage
que usa el modelo tabular que es el DAX. En este ejemplo vamos a filtrar en la tabla
“Customers” (Clientes) por el campo “Gender” (Sexo) donde el género sea “Female” (F).
De esta manera cuando utilizamos el campo “Gender” nos mostrará solo la información que
se ajuste al filtro. El siguiente ejemplo es la demostración.
Backups / Restores
Backups
En esta operación no existen diferencias entre el modelo multidimensional y tabular por lo
que haremos un ejemplo solo con el modo multidimensional.
1. Nos ponemos sobre la base de datos que queremos hacer el backup, pulsamos el
botón derecho del ratón y seleccionamos la opción “Back up”
2. En esta pantalla las opciones más importantes son:
“Backup file”, en esta caja de texto informaremos la ubicación del archivo de
backup
“Allow file overwrite”, en el caso de que el fichero exista se sobreescribirá
“Apply compression”, esta opción permite comprimir la copia de seguridad
“Encrypt backup file”, si marcamos esta opción tendremos que informar la
password en las cajas de texto “Password” y “Confirm Password”
Restores
La manera de restaurar backups en el modo multidimensional y tabular es similar. Además
contamos con la ventaja de que no hay copias diferenciales o logs de transacciones que
restaurar como en el modelo transaccional.
5. Al pulsar el botón “Browse” nos aparece un formulario donde tenemos que navegar
para indicar la ubicación del fichero de backup
6. Tras selecccionar el fichero y pulsar “Ok” volvemos a la pantalla principal
7. En la caja de texto “Restore Database” escribimos el nombre de la base de datos
8. En la caja de texto “Storage Location” escribimos el nombre de la ruta donde
queremos dejar la bbdd o bien pinchamos sobre “Browse” y elegimos una ubicación.
En nuestro caso hemos elegido la carpeta de datos que nos aparece por defecto
9. La opción “Allow database overwrite” permitirá sobreescribir la base de datos si existe
10. La opción “Include security information” nos permite si está seleccionada incorporar
información de seguridad. Tenemos dos opciones:
“Copy All” copiará los roles y los usuarios asociados con los roles
“Skip Membership” copiará los roles pero no lo las cuentas de usuario asociadas
11. La caja de texto “Password” sirve para proporcionar la password del backup si el
backup está encriptado
12. Por último pulsamos el botón “Ok” y se restaurará
Modo Tabular
1. Conectarse a la instancia tabular en mi caso SSAS\TABULAR
Msdb
o Centralizados en una única ubicación lo cual facilita la administración
o Protegidos Backups SQL Server
o Se les puede otorgar permisos SQL Server para su acceso
o Si los paquetes tienen ficheros de configuración XML el backup no los incluye
File System (carpetas en sistema de archivos)
o Sino la carpeta no está configurada en “MsDtsSrvr.ini.xml” los paquetes de
esta no se verán en SSIS
o El problema que presenta esta opción es que alguien con permisos en la
carpeta los puede borrar
o Solo control de ejecución con permisos de Windows
o La copia seguridad de estos archivos debe hacerse con un programa de
backup de archivos
Se puede importar\exportar con DTutil tanto los almacenados en msdb como en sistema de
archivos.
Solo se puede conectar con el servicio de SSIS con SSMS. Desde la versión 2012 existen los
catálogos, el servicio tan solo se mantiene por compatibilidad con versiones anteriores.
Modo Tradicional (Msdb / File System)
Configuración
El servicio se configura en el fichero “MsDtsSrvr.ini.xml”, la ubicación del fichero es:
La etiqueta “StorePath” almacena la ruta donde se guardarán los paquetes “dtsx” del sistema
operativo. En nuestro caso es la ruta:
D
Ante cualquier cambio en el fichero de configuración del servicio hay que reiniciar el servicio
para que coja los cambios.
Component Services
Si nosotros nos intentamos conectar directamente con un usuario común a SSIS nos muestra
este error:
Connecting to the Integration Services service on the computer "SSAS" failed with the
following error: "Access is denied."
By default, only administrators have access to the Integration Services service. On Windows
Vista and later, the process must be running with administrative privileges in order to
connect to the Integration Services service. See the help topic for information on how to
configure access to the service.
Para poder conectar a una instancia de SSIS hay que conectarse al servicio de componentes
de ese servidor (“Component Services”).
1. Vamos a “My Computer”, pulsamos el botón derecho del ratón y elegimos la opción
propiedades “Properties”
5. Ahora mismo estamos viendo el paquete que hay en el sistema de archivos pero no
los que están en la msdb. De hecho si pinchamos en la carpeta “MSDB” nos da el
siguiente error:
6. Lo que vamos a hacer para solucionar esto lo veremos en el siguiente punto ya que
hay que dar permisos en la msdb.
Permisos Msdb
Existen tres roles de base de datos en la msdb para la gestión de SSIS, son:
El siguiente paso es dar al usuario “sqlssrs” el rol “db_ssisoperator”. Esto lo tiene que hacer
alguien que tenga permisos suficientes.
1. Para ello vamos a la base de datos “msdb”, carpeta “Security”, carpeta “Users” y
pinchamos sobre “New User”
2. En las cajas de texto “Login name” y “User name” incorporamos el usuario “sqlssrs”
SQLAgentUserRole
SQLAgentReaderRole
SQLAgentOperatorRole
Referencia: https://msdn.microsoft.com/es‐es/library/ms188283.aspx
En cuanto a la msdb puesto que es una base de datos vamos ha hacer un ejemplo simple.
Aunque la msdb sea una base de datos de sistema con un sistema adecuado de backups
puede cubrirnos ante desastres no solo de Integration Services sino de replicación, log
shipping, etc….
1. Lo primero que vamos ha hacer es una “foto” de la msdb. En esta imagen se puede
ver que a las 7:55 hay un paquete llamado “msdb_prueba” en la base de datos msdb
5. En la pantalla que nos sale vemos los backups de la base de datos msdb y la fecha de
ellos. Puesto que solo tenemos uno no hay problema. En el lado izquierdo pulsamos
sobre “Options”
6. Lo que tenemos que indicarle en esta nueva pantalla es:
“Overwrite the existing database (WITH REPLACE)”, esto lo que significa es que si
existe hay que reemplazar la base de datos sobreescribiendo
“Recovery state: RESTORE WITH RECOVERY”, esto lo que hace es que tras restaurar
deja la base de datos en un estado operativo donde se puede leer y escribir
“Close existing connections to destination database”, esta opción cerrará cualquier
conexión de la base de datos para poder restaurar cuanto antes
7. Tras restaurar la base de datos podemos ver si refrescamos el servicio de SSIS que el
paquete perdido vuelve a aparecer
Catálogos
Como comentamos anteriormente los catálogos son la nueva forma de gestionar los
paquetes de Integration Services.
Ventajas:
Configuración
1. Tras haber creado el catálogo lo seleccionamos, pulsamos el botón derecho del ratón
y elegimos la opción “Properties”
2. Las opciones que se nos presentan para configurar son las siguientes:
Limpiar log periódicamente “Clean Logs Periodically”. Valores verdadero/falso
Periodo retención (días) “Retention Period (days)”. Nº de máximo de días que se
pueden tener almacenadas las operaciones, el valor por defecto es 365
Nivel por predeterminado de nivel de logging (“Server‐wide Default Logging Level”).
Por defecto los catálogos almacenan información de rendimiento de las operaciones
que lanzan los paquetes. Dependiendo de la cantidad de datos que se almacena
existen varios niveles, siendo el valor por defecto “Basic”
Seguridad
La seguridad se aplica descendentemente, es decir un permiso asignado en un elemento
superior de la jerarquía aplica a ese elemento padre y a sus hijos excepto si establecemos
otro distinto en un hijo.
La seguridad es delegable, es decir, se puede delegar el permiso para que gestionen otras
personas. Esto se suele realizar a nivel de proyecto. Si tenemos un proyecto de facturación y
otro de gestión de almacen podemos delegar a determinadas personas del equipo de
desarrollo o cualquier otra de la organización la posibilidad de administrar estos proyectos.
Puesto que en este libro tratamos sobre administración no vamos a pararnos en como se
despliega un proyecto porque esa parte pertecene al área de desarrollo.
2
Para mas información acerca de procesos ETL, leer libro “Vea el cubo medio lleno” de Salvador Ramos.
Entornos. Definen entornos en los que se podrán ejecutar los paquetes de un
proyecto si estos se asocian previamente, es decir, primero hay que definir los
entornos (desarrollo, preproduccion etc) y después indicar en cada proyecto que
entornos puede utilizar
o Parámetros. Los entornos tienen parámetros, lo yo es que el nombre y el
tipo sea igual a los parámetros que utilizan los proyectos para poder
vincularse. Al final el objetivo es que para un proyecto se vinculen tanto
entornos como parámetros de tal manera que si vamos a ejecutar el
paquete A en el entorno de desarrollo y tenemos un parametro que es la
cadena de conexión al entorno de desarrollo el valor utilizado sea el
definido en el parámetro del entorno. Esto nos da muchas facilidades,
imaginemos que tenemos un proyecto con 20 paquetes con un parametro
llamado cadena de conexión. Si lo vinculamos a un parametro de un
entorno cambiando ese valor aplicamos el cambio a todos los paquetes
de esa manera tenemos una fácil administración. Si no tuvieramos esto
tendríamos que cambiarlo en los 20 paquetes. Este tipo de cambios
ademas no es tan infrecuente, imaginemos que nos indican que nos
cambian el servidor de desarrollo debido a un cambio de versión, con solo
tocarlo en el parámetro del entorno se aplicaría a todos los paquetes
Tenemos:
Lectura (“Read”)
Modificación (“Modify”)
Gestionar permisos (“Manage Permissions”)
Crear objetos (“Create Objects”)
Modificar objetos (“Modify Objects”)
Ejecutar objetos (“Execute Objects”)
Leer objetos (“Read Objects”)
Gestionar permisos de objetos (“Manage Objects Permissions”)
Backups / Restores
Puesto que los catálogos tan solo son bases de datos especializadas de SQL Server su
tratamiento respecto a los backups y restores son iguales que para cualquier otra base de
datos. En el punto anterior donde se explica el modo tradicional que trabaja con la bbdd se
expone un ejemplo de backup/restore. Para un catálogo la operación sería igual pero
eligiendo la bbdd “SSISDB”.
Importante, puesto que la base de datos de catálogo está encriptada la primera cosa que
debemos hacer es hacer un backup de la clave y guardarla en un lugar seguro fuera del
servidor. Esta clave nos hará falta si lo que queremos es cambiar la base de datos de
instancia. Para hacer el backup de la clave tan solo hay que ejecutar esta sentencia.
Importante se debe tener permiso de lectura/escritura en la carpeta donde se vaya a
guardar el fichero con la clave.
BACKUP MASTER KEY TO FILE = 'x:\temp\BackupKeySSISDB'
ENCRYPTION BY PASSWORD = 'Luis98765Q';
SSRS
Reporting Services es un servicio que se basa en un conjunto de herramientas que permite el
desarrollo, configuración, administración y visualización de informes.
Las dos principales herramientas son “Reporting Services Configuration Manager” y el portal
web de informes “Web Portal”.
Administrar programaciones
Administrar origenes de datos
Administrar informes
Administrar la jerarquía de carpetas
Administrar suscripciones
Administrar la seguridad del portal
Configuración
1. Abrimos el programa “Reporting Services Configuration Manager”
2. Nos aparece esta pantalla para poder parar o arrancar el servicio
13. Tras haber terminado en la pantalla “Database” en la parte inferior se informará que
la instalación ha terminado correctamente
14. Ahora que hemos acabado de configurar la base de datos vamos a configurar el
portal web. Tan solo hay que informar el nombre del directorio virtual “Virtual
Directory”. Tras esto pulsamos el botón “Apply”. Importante abrir en el firewall el
puerto 80
18. Este archivo está en el servidor, eso quiere decir que debemos copiarlo
preferiblemente a otro servidor para que en caso de emergencia podamos usarlo ya
que si por casualidad se rompe el disco que lo contiene este backup no habrá servido
para nada.
19. Puesto que ya hemos realizado las tareas principales de configuración ahora vamos a
probar que funciona el report server, esto lo haremos copiando la url de la opción
“Web Services URL” y pegandolas en un navegador web
20. Esta operación no se puede hacer antes porque hay que crear la base de datos
previamente. El resultado es el siguiente:
Seguridad
Roles Predefinidos Portal Web
En el portal web existen varios roles predefinidos para gestionar los permisos, son los
siguientes:
5. Veremos la opción seguridad, pulsamos sobre añadir grupo o usuario “Add group or
user”
6. Ahora debemos indicar un nombre de grupo o usuario en la caja de texto “Group or
user” y elegir algún rol. En nuestro caso hemos decidido que tendrá rol “Browser”
(ver carpetas, informes ejecutar informes) y “My Reports” (gestionar sus informes).
El primer usuario será sqlssrs y el segundo sqlssis lo añadiremos más adelante
12. Lo que vamos a hacer ahora es probar que ambos usuarios comunes pueden acceder:
13. Como con el usuario sqlssis no le hemos dado ningún permiso no puede acceder a
nada
Lo que vamos a hacer ahora es que vamos a probar esta regla con varias pruebas
9. Ahora vamos a vincular el informe y al origen de datos. Para ello pulsamos “MANAGE”
10. En la pantalla que se nos presenta elegimos la opción “Data sources”. Elegimos la
opción “A shared data source”. Pulsamos el botón con “…”
13. Una vez hecho esto pulsamos sobre el informe y lo ejecutamos pulsando el botón
“View Report” con el usuario “sqlssrs”
14. Como se puede verse el usuario “sqlssrs” ha ejecutado el informe sin problemas
15. A continuación un usuario administrador dará de alta al usuario “sqlssis”. Para hacer
esto ver instrucciones del punto “Acceso al Portal Web” . El rol elegido será “My
Reports”
16. Tras esto la seguridad queda de la siguiente manera:
17. Ahora accedemos al portal con el usuario “sqlssis” y vemos que ha desaparecido el
mensaje de error que le impedía acceder por falta de permisos
18. Con el usuario “sqlssis” ejecutamos el informe. Vemos que aparece el siguiente error:
19. Este error es muy común cuando se utilizan credenciales de windows y se delega la
seguridad en los permisos que tenga cada usuario. En este caso el usuario no tenía
permisos sobre la base de datos “msdb”. Lo que vamos a hacer es crear el login en el
servidor relacional
20. A continuación y en la misma pantalla damos permisos de lectura en la base de datos
“msdb” con el rol “db_datareader”
21. Si volvemos a ejecutar el informe con el usuario “sqlssis” vemos que funciona
perfectamente
22. Imaginemos que somos los administradores y ahora nos dicen que tenemos que
impedir que el usuario “sqlssis” ejecute el informe pero mantengamos permisos
sobre la carpeta porque van a subir otros informes que en los que si que va a tener
permiso. Para esto como administradores vamos al informe y pulsamos sobre
“MANAGE”
23. Reporting Services nos muestra un mensaje diciendonos que vamos a cambiar la
seguridad de un elemento y que por tanto la configuración de seguridad de este
elemento será distinta de la de los elementos padres. Como estamos de acuerdo
pulsamos “Ok”
25. Tras esta operación si refrescamos la pantalla del usuario “sqlssis” en la carpeta
administrador podremos observar que este usuario ya no ve el informe
Backups / Restores
Al trabajar con varias herramientas recomendamos la siguente estrategia general de
Backup de la base de datos ReportServer. Puesto que tiene por defecto modo de
recuperación full también se recomienda hacer backups del log de transacciones y si
es muy grande también backups diferenciales
ReportServerTempdb. Esta base de datos tiene por defecto modo de recuperación
modo simple por lo que recomendamos backup full y si fuera muy grande también
backups diferenciales
Claves de Cifrado. Ver ejemplo de Configuración
Web:
Informes:
Si alguna vez tuvieramos algún problema con las bases de datos de Reporting Services, el
portal dejaría de funcionar. En este ejemplo lo que hacemos es borrar un informe y
restaurar la base de datos completa. No es que sea la mejor solución ya dijimos que si
tenemos un programa de control de código fuente bastaría con volver a subirlo. Pero si nos
imaginamos que se nos rompe el disco que contiene los ficheros de estas bases de datos si
que habría que aplicar esta solución.