Buenos Dias Lectores, este sera la primer entrada relacionada con el tema central de este blog que se concentra en como su titulo lo indica; seguridad, les escribe D4G4 y espero les agrade lo que viene.
Al igual que en otras bases de datos los servidores vinculados hacen parte de las posibilidades de configuración de nuestros motores MS SQL SERVER, ¿que es un servidor vinculado?
Quien lo puede decir mejor que microsoft "Un servidor vinculado permite obtener acceso a consultas heterogéneas distribuidas en orígenes de datos OLE DB. Después de crear un servidor vinculado, las consultas distribuidas se pueden ejecutar en este servidor. Las consultas pueden unir tablas de varios orígenes de datos. Si el servidor vinculado se define como instancia de SQL Server, se pueden ejecutar procedimientos almacenados remotos."
La opciones de seguridad que me permiten un servidor vinculado son:
- Inicio de sesion local
- Representar
- Usuario remoto
Y otras cuatro que no van con el tema de esta publicacion, regularmente los DBA (en donde hay DBA) de las empresas utilizan como opcion de seguridad; Usuario remoto y alli colocan un usuario y un pass de login en el servidor remoto
Como vemos en este tutorial:
Que esta sucediendo cuando el usuario selecciona la opción de esta forma?
Que bien todo funciona de maravillas, puedo hacer lo que quiera en las tablas del servidor remoto. Pero en realidad esto es lo que quería?, la accion que esta realizando el DBA es que TODOS si TODOS los usuarios con acceso a la instancia de la maquina local estan heredando TODOS los permisos DML y DDL del usuario admin, ademas si activa la opcion ejecutar RPC, permite ejecutar todos los procedimientos almacenados del servidor remoto y si Admin es administrador del servidor remoto estamos incluyendo los procedimientos de sistema, es decir todos los usuarios con acceso a la instancia local heredan los privilegios del usuario admin en el servidor remoto. Entonces: ¿para que coños coloca el usuario sa en el listado superior?
Este grave error suele suceder en sistemas de baja importancia que hacen Linked Server a sistemas núcleo de negocio poniendo en riesgo los datos de las compañías.
Solución:
Si es necesario enlazar el servidor en la opción "For a login not defined in the list above, connections will"
Escojan la opción "NOT BE MADE" y definan en la lista superior los accesos a los usuarios locales con los privilegios limitados de los usuarios remotos.
Espero les haya gustado la primer entrega de este blog dedicado a seguridad, toda la informacion aqui expuesta es para fines educativos.
Un abrazo,
skyg4mb.