-
PT
-
ES
-
AO
-
CV
-
MZ
-
ST
-
GW
-
Professional
-
Executive
-
Public Sector
-
Omnia
-
Evolution
O processo de autenticação no SQL Server ocorre em duas etapas:
- Autenticação login - o SQL Server verifica se o utilizador tem permissão para aceder ao servidor de base de dados;
- Validação das permissões - o SQL Server verifica se o utilizador possui permissões para aceder a um objeto específico da base de dados.
O SQL Server fornece dois métodos de segurança para validar inícios de sessão na base de dados do SQL Server:
- Segurança do SQL Server - utiliza os nomes do utilizador e as palavras-passe do SQL Server;
- Segurança integrada do Windows - utiliza os nomes de utilizador de contas do Windows. Neste caso, o Windows autentica um utilizador no início da sessão e o SQL Server aceita a autenticação do Windows; Nota: A autenticação num ambiente com vários utilizadores ou de rede é o processo de validação das informações de início de sessão do utilizador. Compara-se um nome e uma palavra-passe com uma lista autorizada e, se existir uma correspondência, é concedido o acesso de acordo com o nível de permissão especificado.
Deste modo, o Administrador do Sistema deverá definir qual o modo de autenticação: Misto (Windows ou SQL Server) ou Autenticação Windows.
A criação de contas de login não garante o acesso a uma base de dados específica, sendo necessário possuir contas de User para cada base de dados que pretende aceder.
Server Roles
Para garantir um conjunto de privilégios administrativos predefinidos, o SQL Server dispõe de alguns perfis (roles) ao nível do servidor e da base de dados. Estas funcionam como um grupo que possui permissões específicas e não podem ser alteradas ou excluídas.
As Server Roles são grupos de permissões aplicáveis a qualquer utilizador, definindo permissões transversais ao servidor, tais como:
| Server Role | Descrição |
| Administradores de sistema (sysadmin) | Executam qualquer atividade |
| Administradores de servidor (serveradmin) | Configuram as definições do servidor |
| Administradores de instalação (setupadmin) | Instalam replicações |
| Administradores de segurança (securityadmin) | Gerem e auditam contas de login |
| Administradores de processos (processadmin) | Gerem os processos do SQL Server |
| Gestor de base de dados (dbcreator) | Criam e alteram base de dados |
| Administradores de discos (diskadmin) | Gerem os ficheiros das bases de dados em disco. |
| Administradores de operações em massa (bulkadmin) | Executam comandos BULK INSERT |
Database Roles
As Database Roles são grupos de permissões semelhantes às Server Roles, com exceção da sua aplicabilidade, isto é, as Database Roles aplicam-se a uma base de dados em particular e não ao servidor.
O SQL Server possui algumas Database Roles por omissão:
| Database Role | Descrição |
| db_owner | Tem acesso a todas as operações sobre a base de dados |
| db_accessadmin | Podem adicionar ou remover utilizadores da base de dados |
| db_securityadmin | Gerem todas as permissões, propriedades de objetos, roles e os respetivos membros |
| db_ddladmin | Podem usar todas as DDL (Data Definition Language) mas não emitir permissões sobre elas |
| db_backupoperator | Podem usar os comandos DBCC, CHECKPOINT e BACKUP |
| db_datareader | Podem aceder a todos os dados da base de dados, mas não alterar |
| db_datawriter | Podem modificar todos os dados da base de dados |
| db_denydatareader | Não podem aceder a qualquer informação da base de dados |
| db_denydatawriter | Não podem mudar qualquer informação da base de dados |