Escolar Documentos
Profissional Documentos
Cultura Documentos
Administrao de Banco de Dados 1 Semestre 2011 Pedro Antonio Galvo Junior E-mail: pedrogalvaojunior@gmail.com Fone: 9531-7555 pedro.galvao@aes.edu.br
OFERECENDO SEGURANA
Polticas de senhas no login de SQL Server Hierarquia dos escopos Separao de usurios do schema Limite de visualizao dos metadados Execuo pelo contexto
Servios e features desligadas por padro Permite somente conexo local Usa o SAC para habilitar/desabilitar as features
MECANISMOS DE SEGURANA
Autenticao Usurio e senha Certificados
Autorizao
Permisses Criptografia Chaves Simtricas Chaves Assimtricas
COMPONENTES DE SEGURANA
Principals Windows
Groups Domain account Local account
Permissions Grant/Revoke/Deny
Create Alter Drop Control Connect Select Execute Update Delete Insert
SQL Server
SQL account Server role
Database Scope
Database
User Database role Application role Group
Schema Scope
Estabelecer login
Acesso ao database
POLTICA DE SENHAS
Requer Windows Server 2003. Autenticao Windows: Login de usurios Windows Respeita a poltica de senhas do Windows
Autenticao SQL Server: Logins SQL Server Respeita a poltica de senhas da mquina local. Poltica de Domnio se estiver em um ambiente de Domnio
CRIANDO LOGINS
CRIANDO LOGINS
CREATE LOGIN login_name { WITH < option_list1 > | FROM < sources > } < sources >::= WINDOWS [ WITH windows_options [,...] ] Configurao | CERTIFICATE certname da Politica de | ASYMMETRIC KEY asym_key_name < option_list1 >::= Senhas PASSWORD = ' password ' [ HASHED ] [ MUST_CHANGE ] [ , option_list2 [ ,... ] ] < option_list2 >::= SID = sid | DEFAULT_DATABASE = database | DEFAULT_LANGUAGE = language | CHECK_EXPIRATION = { ON | OFF} | CHECK_POLICY = { ON | OFF} [ CREDENTIAL = credential_name ] < windows_options >::= DEFAULT_DATABASE = database | DEFAULT_LANGUAGE = language
OPES DE LOGIN
Opo
HASHED
Descrio Especifica que a senha j est criptografada Avisa o usurio que precisa mudar a senha. Precisa de CHECK_EXPIRATION e CHECK_POLICY habilitado Expirao de senhas. Se estiver ON, as polticas so Aplicadas e requer que CHECK_POLICY esteja ON Faz a checagem das polticas de senha
MUST_CHANGE
CHECK_EXPIRATION
CHECK_POLICY
GERENCIANDO LOGINS
Removendo um Login DROP LOGIN <Login_name>
CREDENCIAIS
Alternativa aos logins. Permitem conexo a recursos fora do SQL Server.
SCHEMAS DE SEGURANA
DEFAULT SCHEMA
Um schema default pode ser atribuido quando o usurio do banco de dados criado.
CREATE USER user_name [ FOR {LOGIN login_name | CERTIFICATE cert_name | ASYMMETRIC KEY asym_key_name } ] [ WITH DEFAULT_SCHEMA = schema_name ]
GERENCIANDO SCHEMAS
CREATE SCHEMA Cria um schema Atribui um ownership para o schema Cria objetos de database como membros do schema ALTER SCHEMA Altera o ownership do schema Move objetos de database entre schemas
OBJECT NAMESPACE
Sales
Servidor.BancoDados.Schema.Objeto
Customer dbo
APPLICATION COMPATIBILITY
Propriedade de Celia Sales
App
Customer
Sales
App
Customer
USURIOS
USURIOS
Acesso ao Banco de dados; Pode ser mapeado para um login individual ou para um grupo Windows; e Pode ser criado pelo SSMS ou por T-SQL.
CREATE USER user_name [{{ FOR | FROM } { LOGIN login_name | CERTIFICATE cert_name | ASYMMETRIC KEY asym_key_name } | WITHOUT LOGIN ] [ WITH DEFAULT_SCHEMA = schema_name ]
GERENCIANDO USURIOS
Apagando um usurio: DROP USER <user_name>
Descrio Atribui permisses de proprietrio e garante todas as permisses ao principal no objeto Atribui permisses de alterar, criar ou excluir a qualquer securable, menos trocar o proprietrio Atribui permisso de alterao de qualquer securable do tipo especificado. Permisso de trocar o contexto de execuo para o contexto de execuo de outro usurio
ALTER
ALTER ANY
IMPERSONATE
INTRODUO
Configura a execuo pelo contexto de mdulos;
Bill
CREATE PROCEDURE GetCusts WITH EXECUTE AS OWNER AS SELECT * FROM sales.customer Stored Procedure (Owner: Jane)
Jane
sales.customer (Owner:John)
PERMISSO GRANULAR
Securables organizados em uma hierarquia:
Herana de permisses.
ESCOPOS DE PERMISSES
Servidor: O banco de dados Master dever ter permisses Grant; e Permisses especfias para cada securable.
Database: Pode atribuir permisses especficas para roles customizadas; Permitir principals de executar tarefas no banco; e Permisses Grant devero ser atribuidas ao banco que contm o securable que quer aplicar a permisso.
Schema: Usado para agrupar objetos de database; e Atribuir permisses para o schema afeta os membros do Schema.
ESCOPO SERVER
Accounts
Accounts.AddAcct GRANT EXECUTE TO Jim
HR
HR.ViewEmps
ESCOPO SCHEMA
sales.customers
Sales
sales.accounts
sales.figures
OBJETOS INDIVIDUAIS
sales.customers
sales.accounts
Sales.accounts
sales.figures