Encryption & Key Management For SQL Server: The Definitive Guide
Encryption & Key Management For SQL Server: The Definitive Guide
KEY MANAGEMENT
FOR SQL SERVER
THE DEFINITIVE GUIDE
“
In 2008 the Payment Card Industry Data Security Standard (PCI-
DSS) was gaining serious traction and Microsoft released SQL Server
2008 with built-in support for encryption. This was no coincidence.
In addition to the PCI standard which mandated encryption of credit
card numbers, numerous states in the US had also adopted data
breach notification laws with strong recommendations for encryption.
The compliance environment was changing dramatically and the
SQL Server group at Microsoft provided a path to meet those new
compliance regulations. This was a prescient and crucially important
enhancement for Microsoft customers - the security threats have
increased over time and compliance regulations have become more
stringent.
”
right with SQL Server.
Page 2
CONTENTS
Introduction 4
Business Continuity 16
Platform Support 26
Vendor Considerations 29
Page 3
INTRODUCTION
ARCHITECTURE
Many Microsoft applications and services implement
a “Provider” interface. This is the term that Microsoft
uses to describe a standardardized, pluggable
architecture for third party software companies to
integrate and extend the capabilities of Microsoft
solutions. With Provider architectures Microsoft
enables a method for third parties to register their
software to the Microsoft application, and the
Microsoft application will then call that software
as needed. The third party software must obey
rules about the data interface and behavior of
their applications. If done correctly the Provider
interface provides powerful extensions to Microsoft
applications. Every version of SQL Server since 2008 has fully
implemented the EKM Provider architecture. This
Starting with SQL Server 2008 the database has provided a stable and predictable interface for
implements a Provider interface for encryption and Microsoft customers and key management vendors.
key management. This is named the “Extensible
Key Management” Provider interface, or the “EKM EKM Architecture - column and database encryption
Provider”. EKM Provider software performs encryption The EKM Provider architecture supports two different
and key management tasks as an extension to the methods of database encryption:
SQL Server database. The EKM Provider architecture • Cell Level Encryption
opened the door for third party key management • Transparent Database Encryption
vendors to extend encryption to include proper
encryption key management. Cell level encryption is also known as column level
encryption. As its name implies it encrypts data in a
From a high level point of view the EKM architecture column in a table. When a new row is inserted into
looks like this: a table, or when a column in a row is updated, the
SQL Server database calls the EKM Provider software
to perform encryption. When a column is retrieved
Page 4
INTRODUCTION (CONT)
from the database through a SQL SELECT or other encryption control. The activation of the EKM Provider
statement the EKM Provider software is called to software causes the database to be immediately
perform decryption. The EKM Provider software is encrypted and all further data operations on the
responsible for both encryption and key management database will invoke the EKM Provider software.
activity. Implementing cell level encryption requires
minor changes to the SQL column definition. MICROSOFT EKM PROVIDER FOR
LOCALLY STORED ENCRYPTION
Transparent Database Encryption,
or TDE, provides encryption
KEYS
Recognizing that some SQL Server customers wanted
for the entire database and
to encrypt data but did not have the resources or
associated log files. All tables
time to implement a key management solution,
and views in the database are
Microsoft provided a built-in EKM Provider that
fully encrypted. Data is encrypted
performs encryption but which stores encryption keys
and decrypted as information
locally in the SQL Server context. Understanding
is inserted, updated, and retrieved by users and
that this was not a security best practice, Microsoft
applications. As its name implies, transparent data
recommends that customers use a proper encryption
encryption requires no changes to applications, SQL
key management solution that separates encryption
definitions, or queries. The database works seamlessly
keys from the SQL Server database. That was good
after encryption is enabled.
advice - locally stored encryption keys can be
recovered by cyber criminals and the use of external
Transparent Data Encryption is the easiest of the two
key management systems provides better security
encryption methods to implement. Later, I will discuss
and compliance.
when it makes sense to use TDE and when Cell Level
Encryption is a better choice.
EKM PROVIDER SOFTWARE
EKM Provider software is usually provided by your
ACTIVATING THE EKM PROVIDER encryption key management vendor. This means
After installing the EKM Provider software from a third
that the features and functions of the EKM Provider
party, the SQL Server database administrator uses the
software can vary a great deal from one vendor
SQL Server management console to activate the EKM
to another. Be sure that you fully understand the
Provider and place the database or columns under
architecture and capabilities of the EKM Provider
before you deploy SQL Server encryption.
Page 5
INTRODUCTION (CONT)
Page 6
TRANSPARENT DATA ENCRYPTION
Most Microsoft customers who implement encryption and disadvantages to this approach - you expend
in SQL Server use Transparent Data Encryption (TDE) computing resources to encrypt data that may not be
as it is the easiest to implement. No code changes are sensitive, but you also avoid mistakes in identifying
required and enabling encryption requires just a few sensitive data. By encrypting everything at rest you
commands from the SQL Server console. Let’s look at are also protected from expansion of regulatory rules
some of the characteristics of TDE implementation. about sensitive data protection.
Page 7
TRANSPARENT DATA ENCRYPTION (CONT)
logs will only start after TDE is activated AND after you Server databases should use
stop and restart the database log. If you neglect to caution when implementing TDE.
restart logging sensitive data may be exposed in the Be sure that you fully understand the impact of TDE
SQL Server log files. on your application use of large tables. It is always
recommended that you perform a proof-of-concept
project on very large databases to fully assess the
TABLE AND INDEX SCANNING
performance impact of encryption.
Certain SQL operations on indexes require that the
SQL Server database have visibility on the entire
Page 8
CELL LEVEL ENCRYPTION
Cell Level Encryption, or CLE, is Microsoft terminology impacts on your SQL Server database. Because the
for Column Level Encryption. With CLE the manner EKM Provider is only called when the column must
and timing of SQL Server’s call to the EKM Provider be encrypted or decrypted, you can reduce the
software is quite different than for Transparent encryption overhead with careful implementation of
Data Encryption. It is important to understand these your database application code. If a SQL query does
differences in order to know when to use CLE or TDE. not reference an encrypted column, the EKM Provider
Let’s look at some aspects of the CLE implementation. will not be invoked to perform decryption. As an
example, if you place the column Credit_Card under
CLE encryption control, this query will not invoke the
ENCRYPTED COLUMNS EKM Provider for decryption because the credit card
number is not returned in the query result:
Page 9
CELL LEVEL ENCRYPTION (CONT)
ENCRYPTION & KEY RETRIEVAL When deploying CLE it is important that the EKM
The EKM Provider software is called for each column Provider software optimize both encryption and key
value to perform encryption and decryption. This management. The number of calls to the EKM Provider
means a larger number of calls to the EKM Provider software can be quite high. Good EKM Providers will
compared to Transparent Data Encryption. Because securely cache the symmetric key in the SQL Server
the number of calls to the EKM Provider may be context rather than retrieve a key on each call. The
quite large it is important that the encryption and key retrieval of an encryption key from a key server takes
management functions of the EKM Provider are highly precious time and multiple calls to retrieve a key
optimized for performance (see the next section). can have severe performance impacts. Secure key
caching is important for CLE performance. The use of
The EKM Provider software from your key the Microsoft Windows Data Protection Application
management vendor is responsible for performing Program Interface (DPAPI) is commonly used to protect
encryption of the data. From a compliance point of cached keys.
view it is important to understand the encryption
algorithm used to protect data. Be sure that the PERFORMANCE
EKM Provider software uses a standard like the CONSIDERATIONS
Advanced Encryption Standard (AES) or other industry When properly implemented Cell Level Encryption
recognized standard for encryption. It is common to can reduce the performance impact of encryption on
use 128-bit or 256-bit AES for protecting data at rest. your SQL Server database. For very large tables with
Avoid EKM Providers which implement non-standard a small number of columns under encryption control,
encryption algorithms. the performance savings can be substantial. This is
especially true if the column is used less frequently in
your applications.
ENCRYPTION KEY CACHING
VENDOR NOTE:
Note that each vendor of EKM Provider
software implements encryption and
key management differently. Some EKM
Providers only implement Transparent
Data Encryption (TDE). If you suspect
you will need Cell Level Encryption be
sure that your key management support
includes this capability.
Page 10
ENCRYPTION KEY MANAGEMENT
The hardest part of an encryption strategy is the Data Encryption, and must handle the retrieval of a
proper management of encryption keys. Failing symmetric key for Cell Level Encryption. Key retrieval
to protect encryption keys puts protected data should be performed in a manner that protects the
at risk, and fails to meet security best practices encryption key from loss on the network, protects
and compliance regulations. For Microsoft SQL the key while in memory, and should properly log
Server customers who have already implemented the key retrieval event in a system log repository.
Transparent Data Encryption (TDE) or Cell Level Encryption key retrieval is normally protected through
Encryption (CLE) the biggest cause of an audit failure the use of a secure TLS network connection between
is the lack of good encryption key management. the EKM Provider software on SQL Server and the
key manager hardware or virtual machine. There
This is the fourth in a series on the topic of Microsoft are many other critical aspects of EKM Provider key
SQL Server encryption. Let’s look at some of the management implementations, and these will be
characteristics of good encryption key management discussed in a future series.
for SQL Server.
KEY MANAGEMENT INDUSTRY
EXTENSIBLE KEY MANAGEMENT STANDARDS
Encryption key management systems are
(EKM) PROVIDERS
cryptographic modules that perform a variety of
As we’ve discussed previously it is the responsibility
functions. As a cryptographic module they fall under
of key management vendors to provide the Extensible
the standards of the National Institute of Standards
Key Management (EKM) Provider software that is
installed and registered to the SQL Server database and Technology (NIST) and key managers should
provably meet NIST standards. The relevant NIST
enabling either TDE or CLE encryption. The software
standard for encryption key management is the
from the key management vendor is installed on the
Federal Information Processing Standard 140-2 (FIPS
SQL Server instance and provides both encryption
140-2), “Security Requirements for Cryptographic
and key management services. The SQL Server
Modules”. Key management solutions which
database administrator does not need to be involved
implement FIPS 140-2 standards will insure the
in the actual retrieval of an encryption key - that is the
generation of strong encryption keys, the protection
job of the EKM Provider software.
of those keys from corruption or substitution, and the
implementation of encryption that provably meets
EKM Provider software must handle the encryption
NIST cryptographic standards.
and decryption of the database key for Transparent
Page 11
ENCRYPTION KEY MANAGEMENT (CONT)
In addition to provide standards for encryption key under the protection of the key manager. The EKM
management NIST also provides a method for vendors Provider software of your vendor then becomes
to validate that their solutions meet the standard. responsible for unlocking the database key (TDE) or
Encryption key management solutions are tested by retrieving the symmetric key for Cell Level Encryption
chartered security testing laboratories and solutions (CLE).
are then approved directly by NIST. NIST publishes
the solutions that have passed FIPS 140-2 testing and
Microsoft SQL Server customers should look for FIPS
OASIS KEY MANAGEMENT
140-2 validation of any key management solution INTEROPERABILITY PROTOCOL
used to protect the database. Provider software on (KMIP)
SQL Server and the key manager hardware or virtual Many SQL Server customers ask about the KMIP
machine. There are many other critical aspects of EKM standard for integrating with key managers. While
Provider key management implementations, and these KMIP is important for many reasons, it does not apply
will be discussed in a future series. to the Microsoft EKM Provider interface. The EKM
Provider interface leaves it to the key management
MIGRATING LOCALLY STORED vendor to perform the needed cryptographic functions
on the key server. These functions do not map to
KEYS TO KEY MANAGEMENT
KMIP operations and attributes. While it is advisable
Many Microsoft SQL Server users start their encryption
to deploy key management solutions that meet KMIP
projects by using the option to locally store the
standards, it is not required for SQL Server encryption.
database encryption key on the local SQL Server
instance. While this is not a security best practice, it is
a common way to start an encryption project.
Page 12
EKM PROVIDER IMPLEMENTATION
Extensible key management (EKM) provider CONFIGURATION OF AN EKM
software can involve several components that
PROVIDER
include installation of the EKM Provider software,
Once the EKM Provider software is installed you must
configuration of encryption and key management
configure usage options. These options may include:
options, installation of credentials for the key server,
• The hostname or IP address of a key server
and of course the EKM Provider software itself. The
• The hostname or IP address of one or more
EKM Provider software is provided by your encryption
failover key servers
key management vendor. In some cases this software
• The name of the SQL Server instance being
may be an extra charge feature from your vendor, and
protected
in other cases there may be no charge for the EKM
• The Windows account under which the EKM
Provider. In any case, the EKM Provider software is
Provider software will operate
specific to the encryption key management solution
• The location of credentials for the key server
you are using.
• The fingerprint of the HSM certificate used to
protect the TDE key, or a password
INSTALLATION OF AN EKM • The state of application logging options
PROVIDER • License codes for the EKM Provider
The EKM Provider software that is responsible • And possibly other configuration options
for direct integration of SQL Server with your key
manager and is installed on the actual server where The configuration of the EKM Provider may be initiated
SQL Server is running. While different vendors by the installation process, or may be available from
approach the installation process in different ways, a Windows menu or command line facility. Properly
you can expect that a standard Windows MSI configuring the EKM Provider software is a necessary
installation application will be used to install the first step for activating SQL Server encryption through
software and perform initial configuration of the EKM the SQL Server management console.
Provider options. In order to support flexible system
administration of your SQL Server environment, the
installation of the EKM Provide software usually does
not immediately start the encryption process, but this
varies from one EKM Provider to another.
Page 13
EKM PROVIDER IMPLEMENTATION (CONT)
INSTALLING & PROTECTING KEY using AES encryption for TDE the performance is
generally quite good. While Triple DES (3DES) is an
SERVER CREDENTIALS
option with SQL Server TDE I would recommend
The protection of the credentials used to access
avoiding it. AES performs better and is expected to
the encryption key server is crucial to your security
have a longer life as an industry standard.
strategy. The method used to protect those
credentials is left to the EKM Provider and varies from
When you implement SQL Server Cell Level
one vendor to the next. You should carefully review
Encryption (CLE) the encryption is performed by the
this strategy to insure that credentials and certificates
EKM Provider software, and not by SQL Server. It is
are properly protected in the SQL Server context.
therefore important to understand how the vendor
Cyber attacks often attempt to compromise the
of the EKM Provider software has implemented
credentials for a key server in order to compromise
encryption and which encryption library is used.
the protected data. The compromise of key server
Options for encryption include:
credentials should be considered a compromise of
• Use of native Windows .NET encryption
protected sensitive data.
libraries
• Use of vendor encryption libraries that meet
In many cases the credentials for an encryption key
industry standards such as AES and 3DES
server are based on PKI certificates. These can be
• Use of vendor non-standard encryption
stored in the Windows Certificate Store to achieve the
libraries (not recommended)
added security and access logging provided by the
• Use of home-grown encryption libraries (not
Windows operating system. Take care to avoid storing
recommended and not compliant)
certificates, passwords or other credentials in user
directories or in areas that are commonly accessed by
While the native Microsoft .NET encryption libraries
Windows administrative accounts.
have good performance, you should attempt to
understand the performance of any non-Microsoft
ENCRYPTION SOFTWARE encryption libraries. Additionally, the use of non-
LIBRARIES standard encryption algorithms should be avoided
When you implement SQL Server Transparent Data in order to avoid non-compliance with regulatory
Encryption (TDE) the encryption of the database is frameworks.
performed by SQL Server itself. The EKM Provider
protects the symmetric encryption key used by TDE,
but encryption (usually AES) is performed by SQL
Server using Microsoft encryption libraries. When
Page 14
EKM PROVIDER IMPLEMENTATION (CONT)
CONFIGURING EKM PROVIDER failure of a network segment or a key server does not
mean the immediate interruption of the SQL Server
KEY SERVER FAILOVER
application. For example, SQL Server TDE encryption
interacts with the key server when SQL Server is first
started. If the SQL Server instance remains active a
temporary failure of a network connection will not
interrupt the normal operation of SQL Server. Likewise,
if the EKM Provider implements secure key caching
there may not be an interruption related to Cell Level
Encryption.
Page 15
BUSINESS CONTINUITY
When a SQL Server customer deploys Transparent • Independent Network Interfaces (NICs)
Data Encryption (TDE) or Cell Level Encryption (CLE) • Audible alarms
and protects encryption keys on an encryption key
management solution, it is important that the key To the greatest extent possible a key management
manager implement reliable business continuity hardware system should be able to protect you from
support. Key managers are a part of the critical common hardware failure issues.
infrastructure for your applications and should be
resilient in the face of common business continuity
challenges such as data center damage or destruction
KEY SUBSTITUTION OR
(fire, hurricanes, flood, earthquake, etc.), network CORRUPTION
failures, and hardware failures. Let’s review some Key management systems store encryption keys in
aspects of key management resilience. different types of data stores on non-volatile storage
which is subject to key corruption through attack
or hardware failure, or subject to key substitution
KEY MANAGEMENT HARDWARE through attack. Key management systems should use
RESILIENCE common integrity techniques such as hash-based
Key management systems come in many form message authentication code (HMAC) or similar
factors including network attached hardware security technologies to detect this type of failure. Encryption
modules (HSMs), virtual machines for VMware and keys should not be returned to a user or application
Hyper-V, cloud instances for Microsoft Azure, Amazon in the event integrity checks fail, and all integrity
Web Services (AWS), IBM SoftLayer, Google Compute check failures should be reported in audit and system
Engine, and other cloud platforms, and as multi- logs. Additionally the integrity of the key database
tenant key management solutions such as AWS Key and application should be checked when the key
Management Service (KMS) and Azure Key Vault. manager initially starts processing. Early detection and
quarantine of bad encryption keys helps prevent data
When a key manager is deployed as a hardware corruption and gives the security administrator the
solution it should implement a number of hardware ability to restore proper operation of the key manager.
resiliency features including:
Page 16
BUSINESS CONTINUITY (CONT)
Page 17
BUSINESS CONTINUITY (CONT)
information to a monitoring solution, and the key encryption keys, server configuration, and access
management system should enable monitoring by policies.
external monitoring applications. In the event a key
server becomes unavailable it is important to identify Key management systems differ from traditional
the outage quickly. business applications in one important aspect - data
encryption keys should be backed up separately
from key encryption keys. You should be able to
KEY MANAGEMENT SYSTEM
backup data encryption keys automatically or on
LOGGING AND AUDIT demand, but you should take care to separately
Another important aspect of key management
backup and restore key encryption keys. This is a core
business continuity is proper system logging of the
requirement for key management systems.
key management server. Key management systems
are high value targets of cyber criminals and active
monitoring of key management system logs can eBook:
detect an attack early in the cycle. Encryption & Key Management
for Microsoft SQL Server
Additionally, key management systems should audit all
management and use of encryption keys and policies.
A good key management solution will audit all actions
on encryption keys from creation to deletion, all
changes to key access policies, and all access to keys
by users and applications. These audit logs should
be transmitted to a log collection or SIEM monitoring
solution in real time.
Page 18
KEY MANAGEMENT BEST PRACTICES
Protecting encryption keys from loss is the most substantially raises the bar for attackers, and largely
important part of an encryption strategy and there is eliminates the threat of loss from replaced hard drives,
good documentation on security best practices for stolen virtual machine or cloud images, and lost
encryption key management. Security best practices backup images.
for key management also appear in many compliance
regulations such as the PCI-DSS and others.
SEPARATION OF DUTIES
Page 19
KEY MANAGEMENT BEST PRACTICES (CONT)
management duties to specific security administrators security administrators to authenticate minimizes the
who do not have database administration duties, threat of insider damage or theft of critical encryption
and not assign key management duties to DBAs. In key secrets.
modern key management systems this is managed by
the assignment of user-friendly names to encryption
keys. The user-friendly names for encryption keys,
SPLIT KNOWLEDGE
sometimes call key aliases, are exchanged between
the security administrator and the SQL Server DBA.
This avoids sharing the actual encryption keys.
DUAL CONTROL
Page 20
KEY MANAGEMENT BEST PRACTICES (CONT)
MULTI-FACTOR
AUTHENTICATION DATA ENCRYPTION KEY
Like any critical component of our information ROTATION
management system, encryption key management Periodically changing the data encryption key (DEK)
systems should implement multi-factor authentication, of your protected data is also a security best practice
sometimes called two factor authentication, to reduce and required by some compliance regulations like PCI-
the threat of the theft of administrative credentials. DSS. This is sometimes referred to as “key rotation”
Cyber criminals use a number of techniques to or “key rollover”. Your key management system may
capture important administrative credentials including help in this area by allowing the specification of the
phishing, social engineering, memory scraping, and crypto-period of the key and automatically changing
other types of attacks. Multi-factor authentication is the key for you. Of course, the retention of the older
an important security control and best practice for key is needed to insure that encrypted data can
encryption key management systems. be decrypted. Changing encryption keys and re-
encrypting sensitive data is a security best practice.
Page 21
KEY MANAGEMENT BEST PRACTICES (CONT)
AUTHENTICATION
Key management systems are designed to generate AUDIT & LOGGING
strong encryption keys and protect them from loss. Lastly, all security devices including key management
Of course, it must also enable the use of encryption systems should collect and transmit audit and system
keys to protect sensitive data. The key management logs to a log collection server or SIEM monitoring
system should implement strong authentication solution. Active monitoring of critical application and
controls for access to the key server, and further security systems is an important security control and
should implement strong authentication for the use of best practice. Key management systems should fully
specific encryption keys. This is normally implemented implement support for active monitoring.
using PKI infrastructure and mutual authentication
between clients and servers. This exceeds the typical In summary, security best practices for key
authentication that you might encounter using a web management systems used for SQL Server data
browser with a secure session. A key management protection should reflect well-understood and
system should insure that a secure session is documented best practices for security devices. The
negotiated by a known and trusted client. To ensure core source of these best practices is the National
this most key management systems incorporate a Institute for Standards and Technology’s Special
private certificate authority and do not rely on public Publication 800-57, “Recommendation for Key
certificate authorities to insure the highest level of Management.” Your key management solution for SQL
trust in the authentication. Server should implement these best practices.
Page 22
KEY MANAGEMENT STANDARDS
For many customers in highly regulates industries the Advanced Encryption Standard (AES). AES is
creating an encryption strategy means adopting now also an adopted standard within ISO and other
industry standards and the standards requirements international standards organizations. NIST published
of compliance regulations. In this part of the series the standard as Federal Information Processing
on Microsoft SQL Server encryption we will look in Standard 197, or FIPS-197.
more detail at the relevant standards for encryption,
encryption key management, and key management AES is now the predominant choice for encrypting
interfaces. data at rest, and is a part of common Internet
protocols that combine asymmetric key operations
It is important to note that there are different industry with symmetric key operations. AES is a symmetric
standards across the international landscape. We block cipher using 128-bit blocks and supporting
will primarily at the standards published by the multiple key sizes of 128, 192 and 256-bits. Most new
National Institute of Standards and Technology implementations of AES encryption use the 256-bit
(NIST) but it is important to understand that other key size for the stronger security it provides.
standards bodies work in this area including the
International Organization for Standardization (ISO) Microsoft SQL Server customers should choose the
and the American National Standards Institute (ANSI). AES encryption algorithm when encrypting SQL Server
There are some differences between the published databases with Transparent Data Encryption (TDE)
standards, but there is a great deal of interconnection or Cell Level Encryption (CLE). While other standard
and overlap. We will focus here on standards that are methods such as Triple DES are available, using AES
common across different standards bodies as many is recommended for better ongoing compliance.
organizations must meet a variety of international
standards.
STANDARDS FOR ENCRYPTION
KEY MANAGERS
STANDARDS FOR ENCRYPTION NIST classifies encryption
In 2001 the National institute key management systems
for Standards and Technology a “Cryptographic Modules”
worked with an international and applies the Federal
group of cryptographers and Information Processing Standard 140-2 (FIPS 140-2,
security experts to evaluate encryption algorithms “Security Requirements for Cryptographic Modules”) to
and to eventually adopt the Rijndael algorithm as them. In addition to promulgating this standard, NIST
Page 23
KEY MANAGEMENT STANDARDS (CONT)
also provides a certification and validation program The KMIP standard defines the interface to a key
via the National Voluntary Laboratory Accreditation management solution for creating encryption keys,
Program (NVLAP). This means that encryption key assigning various attributes and status values to
management systems can be formally certified that keys, performing encryption key retrieval, executing
they meet the FIPS 140-2 standard. All professional encryption services, and a variety of other operations
key management systems have been validated that are common to encryption key management
through the NVLAP program and Microsoft SQL Server systems. The KMIP standard does not specify
customers should look for this level of compliance. operational functions of a KMIP key server such as
network configuration, firewall rules, system logging
While encryption key management systems can and other server functions.
be validated to the FIPS 140-2 standard it does not
automatically follow that a software vendor with a The Microsoft SQL Server Extensible Key Management
SQL Server TDE solution also uses a validated key (EKM) interface specification pre-dates the OASIS
server. Always be sure to check with the NIST web KMIP standard and does not implement that standard.
site to insure a key management vendor’s FIPS 140-2 The interface to the key management system is left to
compliance. the particular key management vendor to implement.
However, KMIP remains important to the SQL Server
customer as other database and application services
STANDARDS FOR SECURE KEY may need to use key management services.
MANAGEMENT INTERFACES
While the NIST FIPS 140-2
validation of a key server STANDARDS FOR SECURE KEY
indicates compliance MANAGEMENT CONNECTIONS
with an important Client-side applications that need to connect to a key
industry cryptographic standard, it does not specify server have traditionally used one of two methods:
how client applications actually communicate and
interoperate with a key server. The Key Management • Vendor-supplied software libraries
Interoperability Protocol (KMIP) provides this interface • A secure Transport Layer Security (TLS)
standard. The KMIP protocol is promulgated through connection
the OASIS standards group in the KMIP Technical
Committee. Prior to the promotion of the OASIS KMIP standard it
was common for encryption key management vendors
to implement software libraries that performed the
Page 24
KEY MANAGEMENT STANDARDS (CONT)
Page 25
PLATFORM SUPPORT
Microsoft SQL Server customers often un applications ON-PREMISE VMWARE
in complex environments that span the on-premise
INFRASTRUCTURE
data center, hosting platforms, VMware data centers,
For good reasons most SQL Server customers have
cloud SQL Server database as a service, and full
moved to virtualize the data center using VMware
Infrastructure-as-a-Service cloud platforms. Hybrid
technologies. The administrative and cost benefits
combinations of these platforms are more the rule
of virtualizing Windows and Linux workloads are
than the exception and this adds complexity to the
compelling and most of us are taking advantage of
IT strategy. When we look at SQL Server encryption
VMware technologies. For SQL Server customers
it is important to understand where database server
deploying encryption in the VMware infrastructure can
support is located, and where encryption key
present some challenges.
management servers are located.
Page 26
PLATFORM SUPPORT (CONT)
Page 27
PLATFORM SUPPORT (CONT)
your compliance, governance and risk management want to ensure that you key management vendor can
strategies. easily integrate across these disparate platforms.
Page 28
VENDOR CONSIDERATIONS
Generally, the considerations for sourcing encryption upgrading the key manager to new versions, and
and key management solutions for SQL Server will be problem determination. All of these aspects should be
similar to any relationship you develop with a vendor. covered in vendor documentation.
The limited number of vendors in this space can limit
the choices you have, but there are good solutions to TRAINING
choose from. While key management solutions have become much
simpler over time, you should still expect to receive
some operational and technical training from your
LICENSING
Vendors take a variety of approaches to licensing their encryption and key management vendor. Gone are
EKM Provider software and their key management the days when this meant a lot of on-site educational
solution. The main difference is in licensing constraints expense. Modern encryption and key management
on the SQL Server side. You may start your first solutions may require only a few hours of coaching
SQL Server encryption project with a rather limited and training to deploy and maintain. Be sure your
scope. But as you continue to encrypt more sensitive encryption and key management vendor has a
data you may need to scale up the number of SQL program to deliver training in a timely fashion.
Server client-side license. Some encryption vendors
license software based on the number of SQL Server CUSTOMER SUPPORT
instances that you place under protection. Others Many businesses have devalued the customer
provide unlimited numbers of client –side licenses support experience and this can present a problem
after you acquire the key manager. Be sure you for SQL Server users. When you have a problem with
understand the licensing terms of each solution you encryption or key management, it is likely to affect
evaluate, and be sure to understand your long term your application service levels. Before acquiring your
needs. SQL Server encryption solution be sure to schedule
time with the customer support group. Do they have a
formal problem tracking system? Do you have access
DOCUMENTATION to all problem tickets you raise? Does the customer
Documentation on your SQL Server implementation
support group respond in a timely fashion? Is there
will be crucial for long term success. In addition to
a 24/7 response number? All of the normal customer
documentation on the installation and configuration,
support questions you might ask are relevant to a SQL
be sure that your vendor provides documentation on
Server encryption solution. We all know what really
key rotation, applying patches to the key manager,
bad customer support looks like, be sure there is a
good team standing behind the solution you deploy.
Page 29
VENDOR CONSIDERATIONS (CONT)
SERVICES
The modern Enterprise is often geographically
distributed and this can make deployment and MORE INFORMATION
training difficult. While SQL Server encryption and key
management solutions can be simple to deploy and
configure, you may want to be sure that you vendor WEBINAR:
can send staff on site for this type of support. ENCRYPTION &
KEY MANAGEMENT WITH
MICROSOFT SQL SERVER
“Vendors take a variety
of approaches to licensing
their EKM Provider
software and their key
management solution.
The main difference is in
licensing constraints on the
SQL Server side.”
VIEW WEBINAR
Page 30
ALLIANCE KEY MANAGER
Page 31
ABOUT TOWNSEND SECURITY
360.359.4400
Page 32