0% found this document useful (0 votes)
10 views7 pages

Chapter12 Examples

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views7 pages

Chapter12 Examples

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 7

Example 12.

1
USE master;
CREATE MASTER KEY
ENCRYPTION BY PASSWORD = 'p1s4w9d16!';
GO
CREATE CERTIFICATE cert01
WITH SUBJECT = 'Certificate for dbo';

Example 12.2
SELECT p.name, c.name, certificate_id
FROM sys.database_principals p, sys.certificates c
WHERE p.principal_id = p.principal_id;

Example 12.3
USE sample;
GO
-- Associate the certificate to the sample database
USE sample;
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = AES_128
ENCRYPTION BY SERVER CERTIFICATE cert01;

Example 12.4
USE master;
ALTER DATABASE sample SET ENCRYPTION ON;

Example 12.5
USE master;
SELECT * FROM sys.dm_database_encryption_keys
WHERE encryption_state = 3;

Example 12.6
USE sample;
CREATE TABLE employee_encr(
emp_no INT NOT NULL,
emp_lname nvarchar (11) COLLATE Latin1_General_BIN2
ENCRYPTED WITH (ENCRYPTION_TYPE = DETERMINISTIC,
ALGORITHM = 'AEAD_AES_256_CBC_HMAC_SHA_256',
COLUMN_ENCRYPTION_KEY = MyCEK) NOT NULL,
salary MONEY
ENCRYPTED WITH (ENCRYPTION_TYPE = RANDOMIZED,
ALGORITHM = 'AEAD_AES_256_CBC_HMAC_SHA_256',
COLUMN_ENCRYPTION_KEY = MyCEK) NOT NULL);

Example 12.7
USE sample;
SELECT t.name AS table_name, c.name AS column_name,
c.encryption_type_desc AS encr, k.name
FROM sys.columns c JOIN sys.column_encryption_keys k
ON (c.column_encryption_key_id= k.column_encryption_key_id)
JOIN sys.tables t ON (c.object_id = t.object_id);

Example 12.8
USE sample;
CREATE LOGIN mary WITH PASSWORD = 'you1know4it9!';

Example 12.9
USE sample;
CREATE LOGIN [NTB11901\pete] FROM WINDOWS;

Example 12.10
USE sample;
GO
CREATE SCHEMA my_schema AUTHORIZATION peter;
GO
CREATE TABLE product
(product_no CHAR(10) NOT NULL UNIQUE,
product_name CHAR(20) NULL,
price MONEY NULL);
GO
CREATE VIEW product_info
AS SELECT product_no, product_name
FROM product;
GO
GRANT SELECT TO mary;
DENY UPDATE TO mary;

Example 12.11
USE AdventureWorks;
ALTER SCHEMA HumanResources TRANSFER Person.ContactType;

Example 12.12
USE sample;
CREATE USER peter FOR LOGIN [NTB11901\pete];
CREATE USER mary FOR LOGIN mary WITH DEFAULT_SCHEMA = my_schema;

Example 12.13
USE sample;
CREATE APPLICATION ROLE weekly_reports
WITH PASSWORD ='x1y2z3w4!',
DEFAULT_SCHEMA =my_schema;

Example 12.14
USE master;
GO
CREATE SERVER ROLE programadmin;
ALTER SERVER ROLE programadmin ADD MEMBER mary;

Example 12.15
USE sample;
CREATE ROLE marketing AUTHORIZATION peter;
GO
ALTER ROLE marketing ADD MEMBER peter;
ALTER ROLE marketing ADD MEMBER mary;

Example 12.16
USE sample;
GRANT CREATE TABLE, CREATE PROCEDURE
TO peter, mary;

Example 12.17
USE sample;
GRANT CREATE FUNCTION TO mary;

Example 12.18
USE sample;
GRANT SELECT ON employee
TO peter, mary;

Example 12.19
USE sample;
GRANT UPDATE ON works_on (emp_no, enter_date) TO peter;

Example 12.20
USE sample;
GRANT VIEW DEFINITION ON OBJECT::employee TO peter;
GRANT VIEW DEFINITION ON SCHEMA::dbo TO peter;

Example 12.21
USE sample;
GRANT CONTROL ON DATABASE::sample TO peter;

Example 12.22
USE sample;
GRANT SELECT ON works_on TO mary
WITH GRANT OPTION;
Example 12.23
USE sample;
DENY CREATE TABLE, CREATE PROCEDURE
TO peter;

Example 12.24
USE sample;
GRANT SELECT ON project
TO PUBLIC;
DENY SELECT ON project
TO peter, mary;

Example 12.25
USE sample;
REVOKE SELECT ON project
FROM PUBLIC;

Example 12.26
USE my_sample;
CREATE USER my_login WITH PASSWORD = 'x1y2z3w4?';

Example 12.27
USE sample;
EXECUTE sys.sp_cdc_enable_db;

Example 12.28
USE sample;
EXECUTE sys.sp_cdc_enable_table
@source_schema = N'dbo', @source_name = N'works_on',
@role_name = N'cdc_admin';

Example 12.29
USE sample;
INSERT INTO works_on VALUES (10102, 'p2', 'Analyst', NULL);
INSERT INTO works_on VALUES (9031, 'p2', 'Analyst', NULL);
INSERT INTO works_on VALUES (29346, 'p3', 'Clerk', NULL);

Example 12.30
USE sample;
SELECT *
FROM cdc.fn_cdc_get_all_changes_dbo_works_on
(sys.fn_cdc_get_min_lsn('dbo_works_on'), sys.fn_cdc_get_max_lsn(), 'all');

Example 12.31
USE sample;
DECLARE @from_lsn binary(10), @to_lsn binary(10);
SELECT @from_lsn =
sys.fn_cdc_map_time_to_lsn('smallest greater than', GETDATE() - 1);
SELECT @to_lsn =
sys.fn_cdc_map_time_to_lsn('largest less than or equal', GETDATE());
SELECT * FROM
cdc.fn_cdc_get_all_changes_dbo_works_on (@from_lsn, @to_lsn, 'all');

Example 12.32
USE sample;
GO
CREATE VIEW v_without_budget
AS SELECT project_no, project_name
FROM project;

Example 12.33
USE sample;
GO
ALTER TABLE employee
ADD user_name CHAR(60) DEFAULT SYSTEM_USER;
GO
CREATE VIEW v_my_rows
AS SELECT emp_no, emp_fname, emp_lname, dept_no
FROM employee
WHERE user_name = SYSTEM_USER;

Example 12.34
USE sample;
GO
CREATE VIEW v_analyst
AS SELECT employee.emp_no, emp_fname, emp_lname
FROM employee, works_on
WHERE employee.emp_no = works_on.emp_no
AND job = 'Analyst';

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy