在 Windows Azure 虚拟机中使用 Microsoft SQL Server 安全功能
编辑人员注释:本文章由 SQL Server 团队高级项目经理 Sung Hsueh 撰写。
SQL Server 的最新用法之一是利用 Microsoft 的 Windows Azure 基础结构服务,创建托管 SQL Server 的 Windows Azure 虚拟机。您可能阅读过 Il-Sung 以前关于可以将此环境用于具有合规性要求的应用的博客文章 (http://blogs.msdn.com/b/windowsazure/archive/2012/12/12/regulatory-compliance-considerations-for-sql-server-running-in-windows-azure-virtual-machine.aspx)。在
Windows Azure 虚拟机中推出 SQL Server 2008 R2 企业版和 SQL Server 2012 企业版之后,您现在可以选择将我们的企业级功能(如 SQL Server 审核与透明数据加密)用于按分钟计费且已预先配置好、可随时部署的 Windows Azure 虚拟机!当然,如果您喜欢,您仍然可以选择通过移动式许可证 (http://www.microsoft.com/licensing/software-assurance/license-mobility.aspx)
来利用这些功能,以便继续使用现有的软件保障或企业协议许可证, 而不是按分钟计费。
在 Windows Azure 虚拟机中将 TDE 与 SQL Server 结合使用
下面我们快速演练一下透明数据加密 (http://msdn.microsoft.com/en-us/library/bb934049.aspx),来了解如何配置它。首先,请通过
Windows Azure 管理门户创建一个已安装 SQL Server 的 Windows Azure 虚拟机:
现在开始创建数据库!
如果要对某个数据库添加加密,接下来的几个步骤将与在本地运行 SQL Server 的步骤相同:
1. 使用可以在Master数据库中创建对象的用户的凭据登录到计算机
2. 在Master 数据库中运行以下 DDL (“USE MASTER”):
CREATE MASTERKEY ENCRYPTION BY PASSWORD = ‘<您的密码>’;
Go
CREATECERTIFICATE TDEServerCert WITH SUBJECT = ‘My TDE certificate’;
Go
3. 切换到要进行加密的数据库
4. 运行以下 DDL:
CREATE DATABASE ENCRYPTION KEY WITHALGORITHM = AES_256 ENCRYPTION BY SERVER CERTIFICATE TDEServerCert;
Go
ALTER DATABASE [您的数据库名称] SET ENCRYPTION ON;
Go
大功告成!加密将在后台运行(您可以通过查询 sys.dm_database_encryption_keys 进行检查)。这与您的内部部署 SQL Server 实例完全相同,毫无差异。同样,您还可以像在本地部署中一样,继续使用 SQL Server 审核 (http://msdn.microsoft.com/zh-cn/library/cc280386.aspx)。
其他安全注意事项
以下是需要牢记的一些其他事项,请务必遵循最佳安全做法 (http://msdn.microsoft.com/library/windowsazure/dn133147.aspx)。需要考虑的事项包括:
· 通过禁用不必要的服务减少外围应用
· 利用基于策略的管理功能检测安全状况(如使用弱算法)
· 尽可能使用最低权限,尽可能避免使用内置帐户或组(如 sa 或 sysadmin),考虑使用 SQL Server 审核来跟踪管理操作
· 如果您计划使用加密功能,请考虑创建密钥老化/旋转策略,从服务主密钥开始
· 考虑使用 SSL 加密,尤其是当通过 Windows Azure 中的公共端点连接到 SQL Server 时
· 考虑将用于默认实例的 SQL Server 端口 1433 更改为其他端口,尤其是当通过 Windows Azure 中的公共端点连接到 SQL Server 时(最好避免完全通过公共 Internet 对 SQL Server 实例进行外部连接)
结束语…
通过在 Windows Azure 虚拟机中运行 SQL Server 企业版,可以让您延续现有应用中的最佳安全做法和专业知识,利用 Microsoft 的 Windows Azure 在云中运行应用程序,且通过按分钟计费选项仅需支付您所使用的部分(包括企业版!)。赶快来试用一下,并把您的体验告诉我们!
本文翻译自:
在 Windows Azure 虚拟机中使用 Microsoft SQL Server 安全功能的更多相关文章
- 运行预构建 Linux 映像的 Windows Azure 虚拟机中的交换空间 – 第 1 部分
本文章由 Azure CAT 团队的 Piyush Ranjan (MSFT) 撰写. 随着基础结构服务(虚拟机和虚拟网络)近期在 Windows Azure 上正式发布,越来越多的企业工作负荷正在向 ...
- Microsoft® SQL Server® 2012 功能包
Microsoft® SQL Server® 2012 功能包 http://www.microsoft.com/zh-cn/download/details.aspx?id=29065 Micros ...
- 在 Windows Azure 虚拟机中如何备份和还原 Windows 系统磁盘
备份和还原对于操作真实的系统来说至关重要.对于 Windows Azure 虚拟机环境中的 Windows Server,可以根据自身的需求选择多种不同的工具或将这些工具结合使用来实现备份.下面将对这 ...
- 在Docker中使用Microsoft SQL Server数据库
下图中对SQL Server容器创建及数据库创建等操作进行了记录,方便自己日后查看.(文中的 * 仅表示隐藏自己的个人信息,手动马赛克,哈哈-) Docker下载可看上一篇博文mac系统,docker ...
- 宣布正式发布 Windows Azure Notification Hub,新增 SQL Server AlwaysOn 可用性组侦听器支持
今天,我们非常高兴地宣布,针对使用 Windows Azure 的移动和企业开发人员推出一些新功能.这些新功能可以减少构建移动应用程序的开发时间和成本,并能帮助企业开发人员实现高可用性和全球业务连续性 ...
- Microsoft SQL Server 混合云博客系列
Microsoft 云操作系统愿景的核心支柱之一就是借助我们的混合云基础结构改造数据中心.在 Windows Azure 基础结构服务正式发布后的几个月里,我们一直在发布博客,介绍 Windows A ...
- 使用Docker运行Microsoft SQL Server 2017
最近每天都在空闲时间努力编写Apworks框架的案例代码WeText.在文本发布和处理微服务中,我打算使用微软的SQL Server for Linux来做演示,于是也就在自己的docker-comp ...
- Microsoft SQL Server 2016 RC3 安装
首先下载SQL Server 2016 RC3 安装iso 下载链接 ed2k://|file|cn_sql_server_2016_rc_3_x64_dvd_8566578.iso|24648232 ...
- (译)Windows Azure的7月更新:SQL数据库,流量管理,自动缩放,虚拟机
Windows Azure的7月更新:SQL数据库,流量管理,自动缩放,虚拟机 今早我们释出一些很棒的Windows Azure更新.这些新的提升包括:SQL数据库:支持SQL自动导出和一个新的高级层 ...
随机推荐
- C语言字符和字符串随记
==========================第11章 字符和字符串函数==========================震惊:字符串常量属于静态存储类,常量引号中的内容作为指向该字符串存储位 ...
- Solaris-[ODBC-ORACLE WP Driver]遇到的几个问题
确保之前已装好ORACLE和ODBC,ODBC连接数据库时会出现几个问题 一.登陆oracle并启动 [root@bunsol:/export]$su - oracle Oracle Corporat ...
- 国标电表DLT645转MODBUS TCP协议转换器MRD-5021,工业设备,浪涌三级保护MRD
DL/T645转ModbusTcp协议转换器 MRD-5021具有1 路RS485及1路以太网接口,最多支持同时采集5个DL/T645-1997或者5个2007协议国标电表设备,支持DL/T645协议 ...
- GDB单步调试程序
linux下gdb单步调试 用 GDB 调试程序 GDB 概述———— GDB 是 GNU开源组织发布的一个强大的 UNIX下的程序调试工具.或许,各位比较喜欢那种图形界面方式的,像 VC. BCB等 ...
- android开发关于和使用本机内存、内置存储卡和外置存储卡 (转)
转自:http://www.2cto.com/kf/201304/204729.html 关于android存储器简介: android开发常常需要涉及数据缓存,这就 ...
- 使用CocoaPods找不到头文件解决方法
Project->Info->Configurations
- cocos2d-x3.0 SpriteFrameCache
bool HelloWorld::init() { ////////////////////////////// // 1. super init first if ( !Layer::init() ...
- 蓝桥杯D1
整数因式分解的问题.了解了一下筛法计算素数的算法.之前都是直接跑的sqrt(n)... 上方的genPrime()即筛法.大致意思是开一个标识数组,通过循环,下标为合数的位置置为false. #inc ...
- My SQL和LINQ 实现ROW_NUMBER() OVER以及Fatal error encountered during command execution
Oracle 和SQL server都有ROW_NUMBER() OVER这个功能函数,主要用于分组排序,而MySQL 却没有 SELECT * FROM (SELECT ROW_NUMBER() O ...
- EC读书笔记系列之13:条款25 考虑写出一个不抛异常的swap函数
记住: ★当std::swap对你的类型效率不高时,提供一个swap成员函数,并确定其不抛出异常 ★若你提供一个member swap,也该提供一个non-member swap来调用前者.对于cla ...