Lo primero que debe entenderse sobre la seguridad de SQL Server es que hay dos ámbitos de seguridad involucrados: el servidor y la base de datos. El reino del servidor abarca múltiples reinos de bases de datos. Todo el trabajo se realiza en el contexto de alguna base de datos, pero para hacer el trabajo, primero se necesita tener acceso al servidor y luego tener acceso a la base de datos.
El acceso al servidor se otorga a través de inicios de sesión. Hay dos categorías principales de inicios de sesión: inicios de sesión autenticados de SQL Server e inicios de sesión autenticados de Windows. Por lo general, me referiré a estos utilizando los nombres más cortos de inicios de sesión de SQL y de Windows. Los inicios de sesión autenticados de Windows pueden ser inicios de sesión asignados a usuarios de Windows o inicios de sesión asignados a grupos de Windows. Entonces, para poder conectarse al servidor, uno debe tener acceso a través de uno de estos tipos o inicios de sesión: los inicios de sesión proporcionan acceso al dominio del servidor.
Pero los inicios de sesión no son suficientes, porque el trabajo generalmente se realiza en una base de datos y las bases de datos son reinos separados. El acceso a las bases de datos se otorga a través de los usuarios.
Los usuarios se asignan a inicios de sesión y la asignación se expresa mediante la propiedad SID de inicios de sesión y usuarios. Un inicio de sesión se asigna a un usuario en una base de datos si sus valores SID son idénticos. Dependiendo del tipo de inicio de sesión, podemos tener una categorización de usuarios que imite la categorización anterior para los inicios de sesión; entonces, tenemos usuarios de SQL y usuarios de Windows y la última categoría consiste en usuarios asignados a inicios de sesión de usuario de Windows y usuarios asignados a inicios de sesión de grupo de Windows.
Retrocedamos para obtener una descripción general rápida: un inicio de sesión proporciona acceso
al servidor y para obtener más acceso a una base de datos,
debe existir un usuario asignado al inicio de sesión en la base de datos.