Compartir vía


Seguridad para el motor de base de datos de SQL Server y Azure SQL Database

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Esta página proporciona los vínculos para ayudarle a buscar la información que necesita sobre seguridad y protección en el motor de base de datos de SQL Server y Azure SQL Database.

Leyenda

Captura de pantalla de la leyenda que explica los iconos de disponibilidad de las características.

Autenticación: ¿Quién es usted?

Característica Link
¿Quién autentica?

Autenticación de Windows:
Autenticación de SQL Server
Microsoft Entra ID ((anteriormente llamado Azure Active Directory)
¿Quién autentica? (Windows o SQL Server)
Elección de un modo de autenticación
Conexión a Azure SQL con la autenticación de Microsoft Entra
¿Dónde se autentica?

En master la base de datos: inicios de sesión y usuarios de base de datos
En la base de datos de usuario: usuarios de BD independiente
Autenticación en la master base de datos (inicios de sesión y usuarios de bases de datos)
Creación de un inicio de sesión
Administración de bases de datos e inicios de sesión en Azure SQL Database
Creación de un usuario de base de datos
Autenticación en una base de datos de usuario
Hacer que la base de datos sea portátil mediante bases de datos independientes
Uso de otras identidades

Credenciales
Ejecución como otro inicio de sesión
Ejecución como otro usuario de base de datos
Credenciales (motor de base de datos)
EXECUTE AS
EXECUTE AS

Autorización: ¿Qué puede hacer?

Característica Link
Conceder, revocar y denegar permisos

Clases protegibles
Permisos de servidor pormenorizados
Permisos de base de datos pormenorizados
Jerarquía de permisos (motor de base de datos)
Permisos (motor de base de datos)
Elementos protegibles
Introducción a los permisos del motor de base de datos
Seguridad por roles

Roles de nivel de servidor
Roles de nivel de base de datos
Roles de nivel de servidor
Roles de nivel de base de datos
Restricción del acceso de datos a elementos de datos seleccionados

Restricción del acceso a datos mediante vistas o procedimientos
Seguridad de nivel de fila
Enmascaramiento dinámico de datos
Objetos firmados
Restringir el acceso a datos mediante vistas y procedimientos almacenados (motor de base de datos)
Seguridad a nivel de fila
Seguridad a nivel de fila
Enmascaramiento de datos dinámicos
Enmascaramiento dinámico de datos (Base de datos SQL de Azure)
AGREGAR FIRMA

Cifrado: Almacenamiento de datos secretos

Característica Link
Cifrado de archivos:

Cifrado de BitLocker (nivel de unidad)
Cifrado de NTFS (nivel de carpeta)
Cifrado de datos transparente (nivel de archivo)
Cifrado de copia de seguridad (nivel de archivo)
BitLocker (nivel de unidad)
Cifrado de NTFS (nivel de carpeta)
Cifrado de datos transparente (TDE)
Cifrado de copia de seguridad
Orígenes de cifrado

Módulo de administración extensible de claves
Claves almacenadas en Azure Key Vault
Siempre Encriptado
Administración extensible de claves (EKM)
Administración extensible de claves con Azure Key Vault (SQL Server)
Always Encrypted
Cifrado de columnas, datos y claves

Cifrado mediante certificados
Cifrado mediante clave simétrica
Cifrado mediante clave asimétrica
Cifrado mediante frase de contraseña
ENCRYPTBYCERT
ENCRYPTBYASYMKEY
ENCRYPTBYKEY
ENCRYPTBYPASSPHRASE
Cifrado de una columna de datos

Seguridad de conexión: Restringir y proteger

Característica Link
Protección por firewall

Configuración de Firewall de Windows
Configuración de firewall del servicio de Azure
Configuración de firewall de base de datos
Configuración de Firewall de Windows para el acceso al motor de base de datos
sp_set_database_firewall_rule (Azure SQL Database)
sp_set_firewall_rule (Azure SQL Database)
Cifrado de datos en tránsito

Conexiones TLS/SSL forzadas
Conexiones SSL opcionales
Configuración del Motor de base de datos de SQL Server para cifrar conexiones
Configuración del motor de base de datos de SQL Server para cifrar conexiones, seguridad de red
KB3135244: soporte de TLS 1.2 para Microsoft SQL Server

Auditoría: Acceso a la grabación

Característica Link
Auditoría automatizada

Auditoría de SQL Server (nivel de servidor y de base de datos)
Auditoría de SQL Database (nivel de base de datos)
Detectar amenazas

SQL Server Audit (motor de base de datos)
Auditoría de base de datos SQL
Introducción a Advanced Threat Protection de SQL Database
Evaluación de vulnerabilidad de SQL Database
Auditoría personalizada

Desencadenadores
Implementación de auditoría personalizada: creación de DDL Triggers y DML Triggers
Cumplimiento

Cumplimiento
SQL Server:
Criterios comunes
SQL Database:
Centro de confianza de Microsoft Azure: cumplimiento por característica

Inyección de código SQL

La inyección de código SQL es un ataque en el cual se inserta código malintencionado en las cadenas que, posteriormente, se pasan al motor de base de datos para su análisis y ejecución. Todos los procedimientos que generan instrucciones SQL deben revisarse en busca de vulnerabilidades de inyección de código, ya que SQL Server ejecutará todas las consultas recibidas que sean válidas desde el punto de vista sintáctico. Todos los sistemas de base de datos tienen algún riesgo de inyección de código SQL y muchas de las vulnerabilidades se presentan en la aplicación que consulta el motor de base de datos. Para impedir ataques de inyección de código SQL, puede usar procedimientos almacenados y comandos con parámetros, con lo que se evita el código SQL dinámico y se restringen los permisos en todos los usuarios. Para más información, consulte Inyección de código SQL.

Vínculos adicionales para los programadores de aplicaciones:

Get-Help