En el post anterior, comentamos las “bondades” del nuevo objeto credencial en SQL Server 2005. Uno de los escenarios en los que probablemente más se utilicen es junto con las cuentas de Proxy de SQL Server Agent. Para evitar conceder excesivos privilegios a los usuarios propietarios de nuestros trabajos, SQL Server 2005 nos da la posibilidad de definir diferentes cuentas de Proxy, bajo la que se ejecutarán los pasos de nuestros trabajos.

De este modo podemos implementar fácilmente el principio de menor privilegio, otorgando a estas cuentas solo los permisos necesarios. Estas cuentas de proxy deben de estar enlazadas siempre con una Credencial:

Usuario SO–>Credencial–>Cuenta Proxy

De este modo, podemos tener un trabajo cuyo propietario es un inicio de sesión de SQL Server, que tenga un paso de CmdExec, que por ejemplo, crea un fichero. Eso es posible en SQL Server 2005, siguiendo el esquema anteriormente indicado, proporcionando los permisos necesarios al usuario de SO.

La principal fuente de problemas en este escenario, es que normalmente nos olvidamos de darle al propietario del trabajo los privilegios necesarios para poder utilizar la Cuenta de Proxy. Para ello debemos de utilizar el procedimiento almacenado sp_grant_login_to_proxy

0 Shares:
Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

You May Also Like
Leer más

Expresiones, parámetros y funciones en Azure Data Factory

Hay ocasiones, cuando estamos construyendo pipelines con Azure Data Factory, que queremos repetir patrones para extraer y procesar la información cambiando de manera dinámica, en tiempo de ejecución, valores, orígenes/destinos de los datasets, incluso los mismos linked services. Esto es posible mediante el uso de parámetros, expresiones y funciones. Vamos a ver cómo implementarlo con un ejemplo práctico en el que se nos plantea el siguiente supuesto. Se nos ha pedido que extraigamos todos los días los datos del día anterior de distintas tablas del DW a ficheros en un blob storage que además se nombre como la tabla de origen. Si no pudiéramos utilizar contenido dinámico tendríamos que crear dos datasets (uno de origen y otro de destino) y añadir una actividad de copia por cada tabla a exportar.