diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/README.md b/samples/features/security/always-encrypted-with-secure-enclaves/README.md
index 1ec7e003..328cc7b0 100644
--- a/samples/features/security/always-encrypted-with-secure-enclaves/README.md
+++ b/samples/features/security/always-encrypted-with-secure-enclaves/README.md
@@ -4,7 +4,5 @@
This set of samples/demos showcases [Always Encrypted with secure enclaves](https://docs.microsoft.com/azure/azure-sql/database/always-encrypted-with-secure-enclaves-landing).
-- [Demos of Always Encrypted with Intel SGX enclaves in Azure SQL Database](./azure-sql-database-sgx/README.md)
-- [Demos of Always Encrypted with VBS enclaves in Azure SQL Database](./azure-sql-database-vbs/README.md)
-- [Demos of Always Encrypted with secure enclaves in SQL Server using Host Guardian Service for attestation](./sql-server-with-hgs/README.md)
-- [Demos of Always Encrypted with secure enclaves in SQL Server without attestation](./sql-server-without-attestation/README.md)
+- [Demos of Always Encrypted with secure enclaves in Azure SQL Database](./azure-sql-database/README.md)
+- [Demos of Always Encrypted with secure enclaves in SQL Server 2019 using Host Guardian Service for attestation](./sql-server-with-hgs/README.md)
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-connect-to-server-always-encrypted-disabled.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-connect-to-server-always-encrypted-disabled.png
deleted file mode 100644
index 957f6c84..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-connect-to-server-always-encrypted-disabled.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-connect-to-server-always-encrypted-enabled.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-connect-to-server-always-encrypted-enabled.png
deleted file mode 100644
index 1b85e86c..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-connect-to-server-always-encrypted-enabled.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/README.md b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/README.md
deleted file mode 100644
index 2efd2685..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/README.md
+++ /dev/null
@@ -1,321 +0,0 @@
-
-
-# Always Encrypted with VBS enclaves in Azure SQL Database - Demos
-
-The demos in this folder showcase [Always Encrypted with secure enclaves](https://docs.microsoft.com/azure/azure-sql/database/always-encrypted-with-secure-enclaves-landing) in Azure SQL Database. The demos use the Contoso HR web application.
-
-### Contents
-
-[About this sample](#about-this-sample)
-[Before you begin](#before-you-begin)
-[Setup](#setup)
-[Demo 1](#demo-1) - a tour of the demo environment
-[Demo 2](#demo-2) - a short demo of key benefits of secure enclaves
-[Demo 3](#demo-3) - a longer demo showcasing in-place encryption and rich queries
-[Cleanup](#cleanup)
-
-## About this sample
-
-- **Applies to:** Azure SQL Database
-- **Key features:** Always Encrypted with VBS enclaves
-- **Workload:** Human resources (HR) application
-- **Programming Language:** C#, Transact-SQL
-- **Authors:** Jakub Szymaszek, Pieter Vanhove
-- **Update history:**
-
-## Before you begin
-
-Before you begin, you need an Azure subscription. If you don't already have an Azure subscription, you can get one for free [here](https://azure.microsoft.com/free/).
-
-You also need to make sure the following software is installed on your machine:
-
-1. PowerShell modules:
-
- 1. Az version 9.3 or later. For details on how to install the Az PowerShell module, see [Install the Azure Az PowerShell module](https://docs.microsoft.com/powershell/azure/install-az-ps). To determine the version of the Az module installed on your machine, run the following command from a PowerShell session.
-
- ```powershell
- Get-InstalledModule -Name Az
- ```
-
- 2. SqlServer version 22.0.49-preview or later. For details on how to install the SqlServer PowerShell module, see [Installing or updating the SqlServer module](https://docs.microsoft.com/sql/powershell/download-sql-server-ps-module#installing-or-updating-the-sqlserver-module). To determine the version the SqlServer module installed on your machine, run the following command from a PowerShell session.
-
- ```powershell
- Get-InstalledModule -Name SqlServer
- ```
-
-1. [Bicep](https://docs.microsoft.com/azure/azure-resource-manager/templates/bicep-overview) version 0.13.1 or later. You need to install Bicep and ensure it can be invoked from PowerShell. The recommended way to achieve that is to [install Bicep manually with PowerShell](https://docs.microsoft.com/azure/azure-resource-manager/templates/bicep-install?tabs=azure-powershell#manual-with-powershell).
-1. [SQL Server Management Studio](https://msdn.microsoft.com/en-us/library/mt238290.aspx) - version 19 or later is recommended.
-
-## Setup
-
-By following the below setup steps, you will create a new resource group and deploy the following resources to your Azure subscription:
-- A logical database server.
-- The **ContosoHR** database with VBS enclaves enabled.
-- A key vault in [Azure Key Vault](https://docs.microsoft.com/azure/key-vault/) and a key to be used as a column master key for Always Encrypted.
-- The Contoso HR web application in Azure Web Apps.
-
-Setup steps:
-
-1. Clone/download and unpack the repository.
-1. Open a PowerShell session.
-1. In the PowerShell session, change the directory to the setup folder within this demo's directory. For example, if you've unpacked the downloaded repository on a Windows machine in **C:\\**, issue the following command:
-
- ```powershell
- cd "C:\sql-server-samples\samples\features\security\always-encrypted-with-secure-enclaves\azure-sql-database\setup"
- ```
-
-1. Run the **setup.ps1** PowerShell script.
-1. When prompted, enter the following information:
- 1. Your Azure subscription id. To determine your subscription id, see [Find your Azure subscription](https://docs.microsoft.com/azure/media-services/latest/setup-azure-subscription-how-to?tabs=portal).
- 1. The project name. The resource group containing all your demo resources will have that name. The project name will also be used as a prefix for the names of all demo resources. Please use only lowercase letters and numbers for the project name and make sure it is unique.
- 1. The location where you want to create the resources.
- 1. The username and the password of the Azure SQL database server administrator. The setup script will create the server with these admin credentials and it will later use them to connect to the server using SQL authentication for some of the setup steps.
-1. When prompted, sign in to Azure. Once you sign in, the script will deploy the demo environment using the provided Bicep template, which may take a few minutes. After the deployment completes, the script performs post-deployment setup steps to configure the database.
-1. When prompted, sign in to Azure again, to enable the SqlServer PowerShell module to connect to the database.
-1. Finally, the script outputs the important information about your demo environment.
- - Database server name (`server.database.windows.net`)
- - Database name (`ContosoHR`)
- - Application URL (`https://app.azurewebsites.net/`)
-
- Please copy and save the above information. You will need it for the demo steps.
-
-## Demo 1
-
-In this demo, you will take a tour of the demo environment, in which Always Encrypted with secure enclaves is already set up and sensitive data columns in the database are already encrypted.
-
-### Prepare for the demo
-
-Perform the below steps before each demo presentation.
-
-1. Close all running instances of SQL Server Management Studio (SSMS).
-1. Prepare a new instance of SSMS.
- 1. Start SSMS.
- 1. In the Connect to Server dialog:
- 1. In the main page of the dialog, enter your database server name. Set **Authentication** to **Azure Active Directory – Universal with MFA**. In the **User Name** field, enter your Azure AD username. You should enter the same username, you used to sign in to Azure, when you set up your demo environment.
-
- 
-
- 1. Click **Connect**.
- 1. When prompted, sign in to Azure.
-1. Prepare your web browser.
- 1. Open a new tab in the browser and point it to Azure Portal: **https://portal.azure.com**.
- 1. Sign in to Azure if prompted.
- 1. In the **Search** box in the Azure Portal, enter the name of your demo resource group and click **Enter**. In the search results, click on your resource group. You should see the content of your resource group, which should look like this:
-
- 
-
-### Demos steps
-
-1. Review the content of your demo resource group. It should contain the following resources:
-
- - `app`- an app service hosting the Contoso HR web application.
- - `plan` - an app service plan for the web application.
- - `server`- a logical server in Azure SQL Database.
- - `vault` - a key vault in Azure Key Vault, containing the column master key for Always Encrypted.
- - `ContosoHR` - a database.
-
-1. Right-click on the app service for the Contoso HR web application in your resource group and open its **Overview** blade in a new tab. Click on **Configuration** under **Application Settings**. In the **Connection strings** section, click **Advanced edit**. This will display the database connection string configured for the web application. There are two important things to call out in the database connection string:
-
- - **Column Encryption Setting = Enabled** turns the Always Encrypted on in the client driver, allowing it to transparently encrypt query parameters and decrypt query results.
- - **Attestation Protocol = None** specifies that there is no attestation used. VBS enclaves currently do not support attestation.
-
- 
-
-1. Close the browser tab for the app service. Right-click on the key vault in your resource group and open its **Overview** blade in a new tab.
- 1. Click on **Keys** under **Settings**. You should see the entry for the key, named **CMK** - this is your column master key for Always Encrypted.
-
- 
-
- 2. Click on **Access Policies**. You should see two access policy entries: one for your identity and one for the web app's identity. These policies grant you permissions necessary to perform key management operations and they grant the web app permissions required to decrypt column encryption keys, protecting the data.
-
-1. Switch to SSMS.
- 1. In Object Explorer, navigate to the **ContosoHR** database. Then go to **Security** > **Always Encrypted Keys**.
- 1. Open the **Column Master Keys** and **Column Encryption Keys** folders. You should see the metadata object, named **CMK1**, for the column master key and the metadata object, named **CEK1**, for the column encryption key.
- 1. Right click on **CMK1** and select **Properties**. Note that the metadata object references the key in the key vault. Also note **Enclave Computations** is set to **Allowed**, which permits the column encryption key, this columns master key protects, to be used in enclave computations.
-
- 
-
-## Demo 2
-
-This short demo highlights the main benefits of Always Encrypted with VBS enclaves. The starting point for the demo is the ContosoHR database with the **SSN** and **Salary** columns already encrypted.
-
-### Prepare for the demo
-Perform the below steps before you show the demo.
-
-1. Close all running instances of SQL Server Management Studio (SSMS).
-1. Prepare a new instance of SSMS.
- 1. Start SSMS.
- 1. In the **Connect to Server** dialog:
- 1. In the main page of the dialog, enter your database server name. Set **Authentication** to **Azure Active Directory – Universal with MFA**. In the **User Name** field, enter your Azure AD username. You should enter the same username, you used to sign in to Azure, when you set up your demo environment.
-
- 
-
- 1. Click the **Options >>** button, select the **Connection Properties** tab and enter the database name (**ContosoHR**).
-
- 
-
- 1. Select the **Always Encrypted** tab. Make sure the **Enable Always Encrypted** checkbox is **not** selected.
-
- 
-
- 1. Click **Connect**.
- 1. When prompted, sign in to Azure.
- 1. Configure query windows.
- 1. In Object Explorer, find and select the **ContosoHR** database.
-
- 
-
- 1. With the **ContosoHR** database selected, click Ctrl + O. In the **Open File** dialog, navigate to the **tsql-scripts** folder and select **ListAllEmployees.sql**. Do not execute the query yet.
- 1. With the **ContosoHR** database selected, click Ctrl + O. In the **Open File** dialog, navigate to the **tsql-scripts** folder and select **QueryEvents.sql**. Do not execute the query yet.
-1. Prepare your web browser.
- 1. Open your browser.
- 1. Point the browser to the demo application URL.
-
- 
-
-### Demos steps
-
-1. Show the Contoso HR web app in the the browser. This application displays employee records and it allows you to filter and sort employees by salary or by a portion of the social security number (SSN). Move the salary slider and enter a couple of digits in the search box to filter by salary and SSN. Click on the **Ssn** or **Salary** column header to filter by salary or SSN.
-
- 
-
-1. Switch to SSMS, select the **ListAllEmployees.sql** tab and click **F5** to execute the query, which shows the content of the **Employees** table, the web application uses as a data store. Although you are a DBA of the database, you cannot see the plaintext data in the **SSN** and **Salary** columns, as those two columns are protected with Always Encrypted.
-
- 
-
-1. Select the **QueryXevents.sql** tab and click **F5** to execute the query. This query retrieves extended events from the **Demo** extended event session, configured in the **ContosoHR** database. Each extended event captures a query the web application has sent to the database.
-
- 
-
-1. Click on the link in the second column of the first row of the result set to see the extended event with the latest query from the application. This will open the extended event in the new tab.
- 1. Review the query statement. Note that the query contains the **WHERE** clause with rich computations on encrypted columns: pattern matching using the **LIKE** predicate on the **SSN** column and the range comparison on the **Salary** column. The query also sorts records (the **ORDER BY** clause) by **SSN** or **Salary**. **Pro Tip:** to make it easier to view the query statement, you can put line brakes in it.
-
- 
-
- 1. Locate the value of query parameters: **@SSNSearchPattern**, **@MinSalary**, **@MaxSalary**. Note that the values of the parameters are encrypted – the client driver inside the web app transparently encrypts parameters corresponding to encrypted columns, before sending the query to the database. Not only does not the DBA have access to sensitive data in the database, but the DBA cannot see the plaintext values of query parameters used to process that data either.
-
-### Key Takeaways
-
-Always Encrypted with secure enclaves allows applications to perform rich queries on sensitive data without revealing the data to potentially malicious insiders, including DBAs in your organization.
-
-## Demo 3
-
-The starting point for this demo is the database with no columns encrypted - the data is initially not protected. The demo shows how to reach the following two objectives:
-
-1. Protect sensitive data in the database by encrypting it in-place.
-1. Ensure the Contoso HR web application can continue run rich queries on database columns after encrypting the columns.
-
-During the demo, you will use two instances of SQL Server Management Studio (SSMS):
-
-- DBA's instance - when using it, you will assume the role of a DBA.
-- Security Adminsitrator's instance - when using it, you will assume the role of a Security Administrator, who configures Always Encrypted in the database.
-
-### Prepare for the demo
-Perform the below steps before you show the demo.
-
-1. Close all running SSMS instances.
-1. Prepare DBA's instance of SSMS.
- 1. Start SSMS.
- 1. In the Connect to Server dialog:
- 1. In the main page of the dialog, enter your database server name. Set **Authentication** to **Azure Active Directory – Universal with MFA**. In the **User Name** field, enter your Azure AD username. You should enter the same username, you've used to sign in to Azure, when you set up your demo environment.
-
- 
-
- 1. Click the **Options >>** button, select the **Connection Properties** tab and enter the database name (**ContosoHR**).
-
- 
-
- 1. Select the **Always Encrypted** tab. Make sure the **Enable Always Encrypted** checkbox is **not** selected.
-
- 
-
- 1. Click **Connect**.
- 1. When prompted, sign in to Azure.
- 1. Configure query windows.
- 1. In Object Explorer, find and select the **ContosoHR** database.
-
- 
-
- 1. With the **ContosoHR** database selected, click Ctrl + O. In the **Open File** dialog, navigate to the **tsql-scripts** folder and select **ListAllEmployees.sql**. Do not execute the query yet.
- 1. With the **ContosoHR** database selected, click Ctrl + O. In the **Open File** dialog, navigate to the **tsql-scripts** folder and select **QueryXEvents.sql**. Do not execute the query yet.
-1. Prepare Security Administrator's instance of SSMS.
- 1. Start SSMS.
- 1. In the Connect to Server dialog:
- 1. In the main page of the dialog, enter your database server name. Set **Authentication** to **Azure Active Directory – Universal with MFA**. In the **User Name** field, enter your Azure AD username. You should enter the same username, you've used to sign in to Azure, when you set up your demo environment.
-
- 
-
- 1. Click the **Options >>** button, select the **Connection Properties** tab and enter the database name (**ContosoHR**).
-
- 
-
- 1. Select the **Always Encrypted** tab. Make sure the **Enable Always Encrypted** and the **Enable secure enclaves** checkbox are selected. Set the Enclave attestation Protocol to **None**.
-
- 
-
- 1. Click **Connect**.
- 1. When prompted, sign in to Azure.
- 1. Configure query windows.
- 1. In Object Explorer, find and select the **ContosoHR** database.
-
- 
-
- 1. With the **ContosoHR** database selected, click Ctrl + O. In the **Open File** dialog, navigate to the **tsql-scripts** folder and select **DecryptColumns.sql**. **Click **F5** to execute the query**, which will decrypt the **SSN** and **Salary** columns in the database.
- 1. With the **ContosoHR** database selected, click Ctrl + O. In the **Open File** dialog, navigate to the **tsql-scripts** folder and select **EncryptColumns.sql**. Do not execute the query yet.
-1. Prepare your web browser.
- 1. Open your browser.
- 1. Point the browser to the demo application URL.
-
- 
-
-### Demos steps
-
-1. Show the Contoso HR web app in the the browser. This application displays employee records and allows you to filter employees by salary or by a portion of the social security number (SSN). Move the salary slider and enter a couple of digits in the search box to filter by salary and SSN.
-
- 
-
-1. Switch to DBA's instance of SSMS, select the **ListAllEmployees.sql** tab and click **F5** to execute the query, which shows the content of the **Employees** table, the web application uses as a data store. As a DBA, you can view all sensitive information about employees, including the data stored in the **SSN** and **Salary** columns. A malicious DBA could easily exfiltrate the data by running a simple query like this one.
-
- 
-
-1. Select the **QueryXevents.sql** tab and click **F5** to execute the query. This query retrieves extended events from the **Demo** extended event session, configured in the **ContosoHR** database. Each extended event captures a query the web application has sent to the database.
-
- 
-
-1. Click on the link in the second column of the first row of the result set to see the extended event with the latest query from the application. This will open the extended event in the new tab.
- 1. Review the query statement. Note that the query contains the **WHERE** clause with rich computations on encrypted columns: pattern matching using the **LIKE** predicate on the **SSN** column and the range comparison on the **Salary** column. The query also sorts records (the **ORDER BY** clause) by **SSN** or **Salary**. **Pro Tip:** to make it easier to view the query statement, you can put line brakes in it.
-
- 
-
- 1. Locate the value of query parameters: **@SSNSearchPattern**, **@MinSalary**, **@MaxSalary**. Note that the values of the parameters are in plaintext, as the columns, the parameters correspond to, are not encrypted.
-
-1. Switch to Security Administrator's instance of SSMS, select the **EncryptColumns.sql** tab and click **F5** to execute the query, encrypts the data in the **SSN** and **Salary** columns in place, using the secure enclave.
-
-1. Switch back to DBA's instance of SSMS, select the **ListAllEmployees.sql** tab and click **F5** to execute the query again. Now the query should show the encrypted data in the **SSN** and **Salary** columns. As both columns are encrypted, the DBA cannot see the data in plaintext.
-
- 
-
-1. In the web browser, move the slider to reset the filter for salary and then re-enter a few digits of an SSN. Confirm the application still can filter employee records by salary and SSN.
-
-1. Switch to DBA's instance of SSMS, select the **QueryXevents.sql** tab and click **F5** to re-run the query.
-
-1. Click on the link in the second column of the first row of the result set to see the extended event with the latest query from the application. This will open the extended event in the new tab.
- 1. Review the query statement. Note that the query statement the query sends to the database has not changed - it still contains pattern matching using the **LIKE** predicate on the **SSN** column and the range comparison on the **Salary** column, as well as sorting (the **ORDER BY** clause) by **SSN** or **Salary**. **Pro Tip:** to make it easier to view the query statement, you can put line brakes in it.
-
- 
-
- 1. Locate the value of query parameters: **@SSNSearchPattern**, **@MinSalary**, **@MaxSalary**. Note that the values of the parameters are now encrypted – the client driver inside the web app transparently encrypts parameters corresponding to encrypted columns, before sending the query to the database. Not only does not the DBA have access to sensitive data in the database, but the DBA cannot see the plaintext values of query parameters used to process that data either.
-
-### Key Takeaways
-
-Secure enclaves make it possible to encrypt sensitive data columns in-place, eliminating a need to move the data outside of the database for cryptographic operations.
-
-The unique benefit of Always Encrypted with secure enclaves is that it allows you to protect your sensitive data from high-privilege users, including DBAs in your organization, and, after you encrypt your data to protect it, your applications can continue running rich queries on encrypted columns.
-## Cleanup
-
-To permanently remove all demo resources:
-
-1. Run the **cleanup.ps1** PowerShell script in the setup folder.
-1. When prompted, enter your demo resource group name and your subscripton id, and sign in to Azure.
-1. Confirm you want to delete resource group.
-1. Confirm you want to permanently delete the key vault.
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/portal-key-vault-key.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/portal-key-vault-key.png
deleted file mode 100644
index 92ff2abd..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/portal-key-vault-key.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/portal-web-app-connection-string.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/portal-web-app-connection-string.png
deleted file mode 100644
index 8e56b971..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/portal-web-app-connection-string.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/resource-group.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/resource-group.png
deleted file mode 100644
index 40f1a322..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/resource-group.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-cmk.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-cmk.png
deleted file mode 100644
index 1abeac5e..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-cmk.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-connect-to-server-always-encrypted-disabled.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-connect-to-server-always-encrypted-disabled.png
deleted file mode 100644
index 957f6c84..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-connect-to-server-always-encrypted-disabled.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-connect-to-server-always-encrypted-enabled.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-connect-to-server-always-encrypted-enabled.png
deleted file mode 100644
index e5ea6632..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-connect-to-server-always-encrypted-enabled.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-connect-to-server-connection-properties-page.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-connect-to-server-connection-properties-page.png
deleted file mode 100644
index 558d07c3..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-connect-to-server-connection-properties-page.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-connect-to-server-main-page.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-connect-to-server-main-page.png
deleted file mode 100644
index 839b4c67..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-connect-to-server-main-page.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-encrypted-results.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-encrypted-results.png
deleted file mode 100644
index a7da36b7..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-encrypted-results.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-explorer-select-database.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-explorer-select-database.png
deleted file mode 100644
index 004852ce..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-explorer-select-database.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-plaintext-results.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-plaintext-results.png
deleted file mode 100644
index 4aac6114..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-plaintext-results.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-xevent-plaintext.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-xevent-plaintext.png
deleted file mode 100644
index 66048ed5..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-xevent-plaintext.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-xevent.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-xevent.png
deleted file mode 100644
index 18c7b154..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-xevent.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-xevents-results.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-xevents-results.png
deleted file mode 100644
index e55f690c..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/ssms-xevents-results.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/web-app-filtering.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/web-app-filtering.png
deleted file mode 100644
index 179ac525..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/web-app-filtering.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/web-app.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/web-app.png
deleted file mode 100644
index 896d838b..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/img/web-app.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/setup/CreateXESession.sql b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/setup/CreateXESession.sql
deleted file mode 100644
index 9403bd53..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/setup/CreateXESession.sql
+++ /dev/null
@@ -1,30 +0,0 @@
-IF EXISTS (SELECT *
- FROM sys.database_event_sessions
- WHERE name = 'Demo')
-BEGIN
- DROP EVENT SESSION Demo
- ON Database;
-END
-go
-
-CREATE EVENT SESSION [Demo] ON DATABASE
-ADD EVENT sqlserver.rpc_completed(SET collect_data_stream=(1),collect_statement=(1)
- ACTION(sqlserver.sql_text)
- WHERE ([sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%SSN%')AND [package0].[not_equal_unicode_string]([statement],N'exec sp_reset_connection'))
- )
-ADD TARGET package0.ring_buffer
-WITH (MAX_MEMORY=4096 KB,EVENT_RETENTION_MODE=ALLOW_SINGLE_EVENT_LOSS,MAX_DISPATCH_LATENCY=30 SECONDS,MAX_EVENT_SIZE=0 KB,MEMORY_PARTITION_MODE=NONE,TRACK_CAUSALITY=OFF,STARTUP_STATE=OFF)
-GO
-
---CREATE EVENT SESSION [Demo] ON DATABASE
---ADD EVENT sqlserver.rpc_completed(SET collect_data_stream=(1),collect_statement=(1)
--- WHERE ([sqlserver].[equal_i_sql_unicode_string]([sqlserver].[database_name],N'ContosoHR') AND [package0].[not_equal_unicode_string]([statement],N'exec sp_reset_connection')))
---ADD TARGET package0.ring_buffer(SET max_memory=(4096))
---WITH (MAX_MEMORY=4096 KB,EVENT_RETENTION_MODE=ALLOW_SINGLE_EVENT_LOSS,MAX_DISPATCH_LATENCY=2 SECONDS,MAX_EVENT_SIZE=0 KB,MEMORY_PARTITION_MODE=NONE,TRACK_CAUSALITY=OFF,STARTUP_STATE=ON)
---GO
-
-
-ALTER EVENT SESSION [Demo]
- ON DATABASE
- STATE = START; -- STOP;
-
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/setup/PopulateDatabase.sql b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/setup/PopulateDatabase.sql
deleted file mode 100644
index 23c7fb67..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/setup/PopulateDatabase.sql
+++ /dev/null
@@ -1,290 +0,0 @@
-/****** Object: Table [dbo].[Employees] Script Date: 4/7/2021 9:31:31 AM ******/
-SET ANSI_NULLS ON
-GO
-
-SET QUOTED_IDENTIFIER ON
-GO
-
-CREATE TABLE [dbo].[Employees](
- [EmployeeID] [int] IDENTITY(1,1) NOT NULL,
- [SSN] [char](11) NOT NULL,
- [FirstName] [nvarchar](50) NOT NULL,
- [LastName] [nvarchar](50) NOT NULL,
- [Salary] [money] NOT NULL,
- CONSTRAINT [PK_dbo.Employees] PRIMARY KEY CLUSTERED
-(
- [EmployeeID] ASC
-)WITH (STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
-) ON [PRIMARY]
-GO
-
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('795-73-9838', 'Catherine', 'Abel', 31692)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('990-00-6818', 'Kim', 'Abercrombie', 990)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('009-37-3952', 'Frances', 'Adams', 5684)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('708-44-3627', 'Jay', 'Adams', 55415)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('447-62-6279', 'Robert', 'Ahlering', 49744)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('872-78-4732', 'Stanley', 'Alan', 38584)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('898-79-8701', 'Paul', 'Alcorn', 11918)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('561-88-3757', 'Mary', 'Alexander', 17349)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('904-55-0991', 'Michelle', 'Alexander', 70796)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('293-95-6617', 'Marvin', 'Allen', 96956)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('260-99-4784', 'Oscar', 'Alpuerto', 18386)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('605-29-1370', 'Ramona', 'Antrim', 72548)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('731-35-9387', 'Thomas', 'Armstrong', 72180)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('854-76-1401', 'John', 'Arthur', 79054)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('775-20-2697', 'Chris', 'Ashton', 6011)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('117-79-5230', 'Teresa', 'Atkinson', 87089)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('607-41-3750', 'Stephen', 'Ayers', 72344)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('412-66-3694', 'James', 'Bailey', 33950)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('775-63-2547', 'Douglas', 'Baldwin', 89945)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('779-52-1722', 'Wayne', 'Banack', 73236)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('647-03-0271', 'Robert', 'Barker', 23861)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('353-98-6954', 'John', 'Beaver', 75812)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('817-89-8819', 'John', 'Beaver', 19047)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('611-82-6762', 'Edna', 'Benson', 59478)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('665-55-5653', 'Payton', 'Benson', 98459)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('947-37-8651', 'Robert', 'Bernacchi', 78183)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('071-31-7824', 'Robert', 'Bernacchi', 79399)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('610-55-3726', 'Matthias', 'Berndt', 20209)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('590-27-0856', 'Jimmy', 'Bischoff', 24730)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('008-73-9012', 'Mae', 'Black', 60057)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('137-23-1723', 'Donald', 'Blanton', 65301)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('969-53-6095', 'Michael', 'Blythe', 5635)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('222-42-8458', 'Gabriel', 'Bockenkamp', 41020)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('163-08-2988', 'Luis', 'Bonifaz', 85014)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('898-11-0280', 'Cory', 'Booth', 49351)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('432-52-2738', 'Randall', 'Boseman', 24063)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('018-29-9539', 'Cornelius', 'Brandon', 91513)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('472-36-9060', 'Richard', 'Bready', 26084)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('566-87-9214', 'Ted', 'Bremer', 95506)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('771-34-9714', 'Alan', 'Brewer', 35682)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('413-73-7072', 'Walter', 'Brian', 5198)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('497-65-6363', 'Christopher', 'Bright', 24216)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('450-26-2195', 'Willie', 'Brooks', 55078)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('052-78-7929', 'Jo', 'Brown', 17396)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('087-92-6356', 'Robert', 'Brown', 99872)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('048-71-8953', 'Steven', 'Brown', 88633)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('488-68-6075', 'Mary', 'Browning', 59229)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('819-63-3780', 'Michael', 'Brundage', 30996)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('599-61-7739', 'Shirley', 'Bruner', 35872)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('772-36-0661', 'June', 'Brunner', 84642)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('990-78-3760', 'Megan', 'Burke', 76800)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('103-38-5903', 'Karren', 'Burkhardt', 93306)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('146-43-8832', 'Linda', 'Burnett', 56479)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('448-72-5948', 'Jared', 'Bustamante', 7997)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('254-13-4819', 'Barbara', 'Calone', 28720)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('666-45-9926', 'Lindsey', 'Camacho', 11870)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('260-46-2402', 'Frank', 'Campbell', 87501)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('189-92-4702', 'Henry', 'Campen', 30494)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('718-12-8401', 'Chris', 'Cannon', 2324)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('918-66-9747', 'Jane', 'Carmichael', 22620)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('806-97-1958', 'Jovita', 'Carmody', 37601)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('482-61-8230', 'Rob', 'Caron', 16904)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('897-39-6229', 'Andy', 'Carothers', 40261)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('656-79-6279', 'Donna', 'Carreras', 78393)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('745-99-0161', 'Rosmarie', 'Carroll', 98109)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('216-16-4120', 'Raul', 'Casts', 41706)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('102-56-5530', 'Matthew', 'Cavallari', 75290)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('787-23-4125', 'Andrew', 'Cencini', 75121)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('424-55-1778', 'Stacey', 'Cereghino', 25456)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('572-19-0999', 'Forrest', 'Chandler', 49996)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('745-81-6513', 'Lee', 'Chapla', 70991)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('947-66-5585', 'Yao-Qiang', 'Cheng', 72455)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('531-83-4784', 'Nicky', 'Chesnut', 13676)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('109-99-0299', 'Ruth', 'Choin', 55818)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('483-85-6853', 'Anthony', 'Chor', 71421)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('567-39-1024', 'Pei', 'Chow', 57284)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('382-49-7387', 'Jill', 'Christie', 94767)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('336-03-8102', 'Alice', 'Clark', 47963)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('994-22-9926', 'Connie', 'Coffman', 32136)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('129-28-7723', 'John', 'Colon', 82858)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('347-44-2949', 'Scott', 'Colvin', 1121)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('706-66-0382', 'Scott', 'Cooper', 22281)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('500-63-2220', 'Eva', 'Corets', 34410)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('942-15-7859', 'Marlin', 'Coriell', 43154)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('143-78-9971', 'Jack', 'Creasey', 66527)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('372-18-7905', 'Grant', 'Culbertson', 69903)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('153-33-1155', 'Scott', 'Culp', 87717)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('790-69-5423', 'Megan', 'Davis', 69707)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('105-16-8373', 'Alvaro', 'De Matos Miranda Filho', 15198)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('989-18-3523', 'Aidan', 'Delaney', 86115)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('771-07-7325', 'Stefan', 'Delmarco', 50994)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('545-83-9747', 'Prashanth', 'Desai', 97968)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('994-72-1605', 'Bev', 'Desalvo', 76954)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('558-23-5595', 'Brenda', 'Diaz', 4027)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('752-63-1338', 'Blaine', 'Dockter', 12312)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('825-10-8923', 'Cindy', 'Dodd', 82876)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('368-69-8964', 'Patricia', 'Doyle', 97282)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('597-44-1424', 'Gerald', 'Drury', 20153)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('957-28-1545', 'Bart', 'Duncan', 89903)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('187-17-8616', 'Maciej', 'Dusza', 6725)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('194-76-9481', 'Carol', 'Elliott', 49287)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('679-79-8165', 'Shannon', 'Elliott', 94194)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('367-73-8845', 'John', 'Emory', 65560)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('814-03-3691', 'Gail', 'Erickson', 99845)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('214-28-9968', 'Mark', 'Erickson', 95242)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('913-55-6645', 'Ann', 'Evans', 48046)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('763-33-5650', 'John', 'Evans', 59254)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('658-41-8532', 'Twanna', 'Evans', 35364)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('943-41-6011', 'Carolyn', 'Farino', 76201)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('691-30-8623', 'Geri', 'Farrell', 39600)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('361-08-3217', 'François', 'Ferrier', 3704)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('827-51-1487', 'Kathie', 'Flood', 78467)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('483-93-0057', 'John', 'Ford', 77552)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('738-37-1607', 'Garth', 'Fort', 34381)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('822-59-9384', 'Dorothy', 'Fox', 32679)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('309-79-2521', 'Mihail', 'Frintu', 52898)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('814-32-0421', 'Paul', 'Fulton', 1320)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('076-35-8143', 'Michael', 'Galos', 24061)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('620-03-4764', 'Jon', 'Ganio', 70002)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('769-76-3600', 'Dominic', 'Gash', 89479)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('160-92-3129', 'Janet', 'Gates', 49178)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('318-00-6667', 'Janet', 'Gates', 68327)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('982-77-3975', 'Orlando', 'Gee', 53281)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('328-68-1544', 'Darren', 'Gehring', 13353)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('053-51-9173', 'Jim', 'Geist', 91180)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('840-05-6646', 'Guy', 'Gilbert', 3780)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('446-11-2924', 'Janet', 'Gilliat', 89588)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('273-16-2522', 'Mary', 'Gimmi', 53352)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('003-23-9305', 'Jeanie', 'Glenn', 49086)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('878-44-1968', 'Scott', 'Gode', 2744)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('910-05-4138', 'Mete', 'Goktepe', 89053)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('912-33-3174', 'Abigail', 'Gonzalez', 56550)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('058-26-3234', 'Michael', 'Graff', 41144)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('687-28-3396', 'Douglas', 'Groncki', 22262)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('496-75-4904', 'Brian', 'Groth', 35712)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('071-00-8057', 'Erin', 'Hagens', 48197)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('288-05-9705', 'Betty', 'Haines', 6286)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('002-47-6040', 'Jean', 'Handley', 22940)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('936-84-1664', 'Kerim', 'Hanif', 80093)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('216-03-0835', 'John', 'Hanson', 10237)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('525-81-0810', 'Lucy', 'Harrington', 69388)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('331-25-9319', 'Keith', 'Harris', 7729)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('770-01-5105', 'Keith', 'Harris', 67336)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('208-84-9956', 'Roger', 'Harui', 78271)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('633-34-5095', 'Ann', 'Hass', 62689)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('022-89-0200', 'Valerie', 'Hendricks', 10269)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('912-85-8027', 'Cheryl', 'Herring', 95103)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('307-29-4403', 'Ronald', 'Heymsfield', 30421)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('083-68-5072', 'Mike', 'Hines', 35109)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('239-20-6174', 'Matthew', 'Hink', 75140)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('162-43-8489', 'Bob', 'Hodges', 84875)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('717-37-3032', 'David', 'Hodgson', 15920)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('280-15-5623', 'Helge', 'Hoeing', 23680)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('353-00-9496', 'Juanita', 'Holman', 83632)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('162-65-6542', 'Peter', 'Houston', 6335)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('427-43-7296', 'George', 'Huckaby', 90908)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('603-61-0319', 'Joshua', 'Huff', 55166)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('877-01-3415', 'Phyllis', 'Huntsman', 58528)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('391-25-8382', 'Phyllis', 'Huntsman', 86920)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('626-56-2930', 'Lawrence', 'Hurkett', 11698)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('731-19-3470', 'Lucio', 'Iallo', 83202)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('171-33-3481', 'Richard', 'Irwin', 83990)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('828-77-1376', 'Erik', 'Ismert', 7706)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('611-48-4137', 'Eric', 'Jacobsen', 784)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('477-14-7161', 'Jodan', 'Jacobson', 17695)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('738-83-2602', 'Sean', 'Jacobson', 9412)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('589-30-3617', 'Joyce', 'Jarvis', 42556)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('538-28-5108', 'Barry', 'Johnson', 36190)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('661-09-8547', 'Barry', 'Johnson', 80820)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('025-55-7602', 'Brian', 'Johnson', 54767)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('422-34-6020', 'David', 'Johnson', 26695)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('500-92-8728', 'Tom', 'Johnston', 52805)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('170-89-3691', 'Jean', 'Jordan', 68936)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('108-25-0733', 'Peggy', 'Justice', 39764)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('392-44-2253', 'Sandeep', 'Kaliyath', 84549)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('666-10-8497', 'Sandeep', 'Katyal', 27585)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('738-29-5963', 'John', 'Kelly', 31491)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('253-47-6467', 'Robert', 'Kelly', 43239)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('059-47-6363', 'Kevin', 'Kennedy', 18192)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('382-51-9530', 'Mitch', 'Kennedy', 68959)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('480-79-4419', 'Imtiaz', 'Khan', 66870)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('097-39-6667', 'Karan', 'Khanna', 17048)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('625-86-1609', 'Anton', 'Kirilov', 97398)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('109-78-5455', 'Christian', 'Kleinerman', 22492)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('914-28-0431', 'Andrew', 'Kobylinski', 47853)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('428-15-1588', 'Eugene', 'Kogan', 61377)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('612-70-0567', 'Scott', 'Konersmann', 87060)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('025-76-2628', 'Joy', 'Koski', 165)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('920-75-2262', 'Diane', 'Krane', 12316)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('748-12-0172', 'Kay', 'Krane', 13614)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('230-78-1884', 'Kay', 'Krane', 98499)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('121-03-7961', 'Margaret', 'Krupka', 98845)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('993-16-0574', 'Peter', 'Kurniawan', 67823)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('560-17-8321', 'Jeffrey', 'Kurtz', 18840)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('176-23-2126', 'Eric', 'Lang', 39005)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('678-53-5154', 'Elsa', 'Leavitt', 71752)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('950-17-4726', 'Marjorie', 'Lee', 28116)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('649-28-8360', 'Roger', 'Lengel', 75588)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('507-95-7549', 'A.', 'Leonetti', 71639)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('442-99-4943', 'Bonnie', 'Lepro', 9089)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('674-71-8512', 'Elsie', 'Lewin', 93630)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('418-20-4458', 'George', 'Li', 74540)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('986-20-3872', 'Joseph', 'Lique', 96968)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('716-41-6291', 'Paulo', 'Lisboa', 11243)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('475-64-2482', 'Paulo', 'Lisboa', 84392)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('471-03-3608', 'David', 'Liu', 57309)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('440-49-4765', 'Jinghao', 'Liu', 34991)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('321-33-7277', 'Kevin', 'Liu', 20305)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('113-69-0506', 'Sharon', 'Looney', 5368)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('311-21-1551', 'Judy', 'Lundahl', 15667)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('710-73-5330', 'Denise', 'Maccietto', 2258)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('321-14-1319', 'Scott', 'MacDonald', 30158)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('340-75-5874', 'Kathy', 'Marcovecchio', 10228)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('043-85-0648', 'Melissa', 'Marple', 46100)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('253-33-7509', 'Frank', 'Mart¡nez', 46267)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('335-68-4629', 'Chris', 'Maxwell', 92921)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('535-30-6577', 'Sandra', 'Maynard', 60264)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('613-34-9127', 'Walter', 'Mays', 70620)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('754-70-9484', 'Lola', 'McCarthy', 75175)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('758-46-9282', 'Jane', 'McCarty', 78021)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('287-44-2853', 'Yvonne', 'McKay', 38787)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('173-12-0893', 'Nkenge', 'McLin', 27222)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('028-18-1290', 'R. Morgan', 'Mendoza', 80464)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('035-47-1686', 'Helen', 'Meyer', 79306)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('926-47-4349', 'Dylan', 'Miller', 64819)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('947-84-3762', 'Frank', 'Miller', 97091)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('598-00-4792', 'Virginia', 'Miller', 77286)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('069-59-6908', 'Virginia', 'Miller', 57881)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('864-49-8796', 'Neva', 'Mitchell', 36848)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('484-78-0561', 'Joseph', 'Mitzner', 42987)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('684-27-6433', 'Margaret', 'Smith', 46020)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('521-85-5433', 'Laura', 'Steele', 87969)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('239-08-6212', 'Alan', 'Steiner', 71635)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('655-64-2836', 'Alice', 'Steiner', 60544)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('850-56-7206', 'Derik', 'Stenerson', 16798)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('077-42-9130', 'Vassar', 'Stern', 55399)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('094-90-4314', 'Wathalee', 'Steuber', 20296)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('409-83-6433', 'Liza Marie', 'Stevens', 6631)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('351-34-7304', 'Robert', 'Stotka', 88774)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('866-96-8557', 'Kayla', 'Stotler', 19835)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('716-37-0786', 'Ruth', 'Suffin', 38058)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('689-86-1583', 'Elizabeth', 'Sullivan', 98566)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('622-25-6018', 'Michael', 'Sullivan', 9242)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('137-21-0253', 'Brad', 'Sutton', 44883)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('237-99-8262', 'Abraham', 'Swearengin', 85958)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('518-41-6271', 'Julie', 'Taft-Rider', 63622)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('554-31-5202', 'Clarence', 'Tatman', 25188)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('591-44-7136', 'Chad', 'Tedford', 22306)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('069-09-3831', 'Vanessa', 'Tench', 44398)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('523-93-8801', 'Judy', 'Thames', 89067)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('266-03-4963', 'Daniel', 'Thompson', 36910)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('496-54-0726', 'Donald', 'Thompson', 85206)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('984-43-6756', 'Kendra', 'Thompson', 7375)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('047-31-4129', 'Diane', 'Tibbott', 95073)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('217-20-9777', 'Delia', 'Toone', 17369)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('420-28-0429', 'Michael John', 'Troyer', 69381)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('236-75-2355', 'Christie', 'Trujillo', 79299)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('984-20-5166', 'Sairaj', 'Uddin', 41036)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('353-75-0098', 'Sunil', 'Uppal', 23245)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('934-96-8406', 'Jessie', 'Valerio', 62357)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('773-23-3159', 'Gregory', 'Vanderbout', 21434)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('951-08-3331', 'Michael', 'Vanderhyde', 72246)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('856-23-4990', 'Margaret', 'Vanderkamp', 18918)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('359-67-5826', 'Gary', 'Vargas', 37729)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('743-66-8203', 'Nieves', 'Vargas', 61754)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('368-97-5673', 'Ranjit', 'Varkey Chudukatil', 19423)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('890-04-1424', 'Patricia', 'Vasquez', 59489)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('267-37-1036', 'Wanda', 'Vernon', 11749)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('101-14-5907', 'Robert', 'Vessa', 58459)
-INSERT INTO [dbo].[Employees] ([SSN], [FirstName], [LastName], [Salary]) VALUES ('148-51-2717', 'Caroline', 'Vicknair', 83361)
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/setup/azuredeploy.bicep b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/setup/azuredeploy.bicep
deleted file mode 100644
index 77e53f8a..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/setup/azuredeploy.bicep
+++ /dev/null
@@ -1,222 +0,0 @@
-///////////////////////
-// Define parameters //
-///////////////////////
-
-@description('The project name. The names of all resources will be derived from the project name.')
-param projectName string
-
-@description('The object id of the user running the deployment.')
-param userObjectId string
-
-@description('The username of the user running the deployment.')
-param userName string
-
-@description('The username of the Azure SQL database server administrator for SQL authentication.')
-param sqlAdminUserName string
-
-@description('The password of the Azure SQL database server administrator for SQL authentication.')
-param sqlAdminPassword string
-
-@description('The IP address the user will connect from to the logical server in Azure SQL Database.')
-param clientIP string
-
-@description('The location (the Azure region) for all resources.')
-param location string = resourceGroup().location
-
-
-////////////////////////////////////////////
-// Create and configure a logical server //
-////////////////////////////////////////////
-
-// Create the server
-var SQLServerName_var = '${projectName}server'
-resource Server_Name_resource 'Microsoft.Sql/servers@2022-05-01-preview' = {
- name: SQLServerName_var
- location: location
- tags: {}
- identity: {
- type: 'SystemAssigned'
- }
- properties: {
- administratorLogin: sqlAdminUserName
- administratorLoginPassword: sqlAdminPassword
- //version: 'string' //optional
- minimalTlsVersion: '1.2'
- publicNetworkAccess: 'Enabled'
- }
-}
-
-// Allow Azure services and resources to access this server
-resource Server_Name_AllowAllWindowsAzureIps 'Microsoft.Sql/servers/firewallRules@2022-05-01-preview' = {
- name: '${Server_Name_resource.name}/AllowAllWindowsAzureIps'
- properties: {
- endIpAddress: '0.0.0.0'
- startIpAddress: '0.0.0.0'
- }
-}
-
-// Allow Client IP to access this server
-resource Server_Name_AllowClientIP 'Microsoft.Sql/servers/firewallRules@2022-05-01-preview' = {
- name: '${Server_Name_resource.name}/AllowClientIP'
- properties: {
- endIpAddress: clientIP
- startIpAddress: clientIP
- }
-}
-
-// Make the user an Azure AD administrator for the server, so that the user can connect with universal authentication
-resource Server_Name_activeDirectory 'Microsoft.Sql/servers/administrators@2022-05-01-preview' = {
- name: '${Server_Name_resource.name}/activeDirectory'
- properties: {
- administratorType: 'ActiveDirectory'
- login: userName
- //sid: reference(resourceId('Microsoft.Sql/servers', '${projectName}server'), '2019-06-01-preview', 'Full').identity.principalId
- sid: userObjectId
- //tenantId: AAD_TenantId //optional
- }
-}
-
-//////////////////////////////////////////////////////////////////////////////
-// Create the ContosoHR database using the DC-series hardware configuration //
-//////////////////////////////////////////////////////////////////////////////
-
-resource Database_Resource 'Microsoft.Sql/servers/databases@2022-05-01-preview' = {
- name: '${Server_Name_resource.name}/ContosoHR'
- location: location
- tags: {}
- sku: {
- name: 'GP_Gen5_2'
- tier: 'GeneralPurpose'
- }
- properties: {
- //preferredEnclaveType: 'VBS'
- }
-}
-
-///////////////////////////////////
-// Configure the web application //
-///////////////////////////////////
-
-// Create an App Service plan
-resource WebAppServicePlan_Resource 'Microsoft.Web/serverfarms@2022-03-01' = {
- name: '${projectName}plan'
- location: location
- properties: {}
- sku: {
- name: 'B1'
- }
-}
-
-// Create the App Service
-resource WebApp_Resource 'Microsoft.Web/sites@2022-03-01' = {
- name: '${projectName}app'
- location: location
- identity: {
- type: 'SystemAssigned'
- }
- properties: {
- serverFarmId: WebAppServicePlan_Resource.id
- }
-
- //Set the database connection string for the application
- resource WebAppConnectionString_Resource 'config' = {
- name: 'connectionstrings'
- properties: {
- ContosoHRDatabase: {
- value: 'Server=tcp:${Server_Name_resource.name}.database.windows.net;Database=ContosoHR;Column Encryption Setting=Enabled; Attestation Protocol = None; Authentication=Active Directory Managed Identity'
- type: 'SQLAzure'
- }
- }
- }
- //Define AppSetting to fetch the correct project from the GitHub Repository
- resource AppSetting 'config' = {
- name: 'appsettings'
- properties: {
- PROJECT: 'samples/features/security/always-encrypted-with-secure-enclaves/source/ContosoHR/ContosoHR.csproj'
- }
- }
-}
-
- // Deploy the application
-resource sourceControl 'Microsoft.Web/sites/sourcecontrols@2022-03-01' = {
- name: '${projectName}app/web'
- properties: {
- repoUrl: 'https://github.com/microsoft/sql-server-samples.git'
- branch: 'master'
- isManualIntegration: true
- }
- dependsOn: [
- Server_Name_resource
- ]
-}
-
-//////////////////////////////////////
-// Create and configure a key vault //
-//////////////////////////////////////
-
-// Create a key vault and assign key permissions to the user, so that the user can manage the keys
-resource KeyVault_Resource 'Microsoft.KeyVault/vaults@2022-07-01' = {
- name: '${projectName}vault'
- location: location
- tags: {}
- properties: {
- tenantId: subscription().tenantId
- sku: {
- family: 'A'
- name: 'standard'
- }
- accessPolicies: [
- {
- tenantId: subscription().tenantId
- objectId: userObjectId
- permissions: {
- keys: [
- 'unwrapKey'
- 'wrapKey'
- 'verify'
- 'sign'
- 'get'
- 'list'
- 'create'
- 'delete'
- 'purge'
- ]
- }
- }
- ]
- }
-}
-
-// Assign key permissions to the web app
-resource KeyVaultWebAppAccessPolicy_Resource 'Microsoft.KeyVault/vaults/accessPolicies@2022-07-01' = {
- name: any('${KeyVault_Resource.name}/add')
- properties: {
- accessPolicies: [
- {
- tenantId: subscription().tenantId
- // objectId: reference(resourceId('Microsoft.Web/sites', '${projectName}app'), '2020-12-01', 'Full').resourceId
- objectId: WebApp_Resource.identity.principalId
- permissions: {
- keys: [
- 'unwrapKey'
- 'verify'
- 'get'
- ]
- }
- }
- ]
- }
-}
-
-// Create a key
-resource Key_Resource 'Microsoft.KeyVault/vaults/keys@2022-07-01' = {
- name: '${KeyVault_Resource.name}/CMK'
- tags: {}
- properties: {
- attributes: {
- enabled: true
- }
- kty: 'RSA'
- keySize: 4096
- }
-}
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/setup/cleanup.ps1 b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/setup/cleanup.ps1
deleted file mode 100644
index c2a733b2..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/setup/cleanup.ps1
+++ /dev/null
@@ -1,23 +0,0 @@
-Import-Module "Az.Resources"
-
-######################################################################
-# Prompt the user to enter the values of deployment parameters
-######################################################################
-
-$resourceGroupName = Read-Host -Prompt "Enter the resource group name"
-$subscriptionId = Read-Host -Prompt "Enter your subscription id"
-
-######################################################################
-# Sign in to Azure
-######################################################################
-
-Connect-AzAccount
-$context = Set-AzContext -Subscription $subscriptionId
-
-######################################################################
-# Delete the resource group and the key vault with purge proteciton on
-######################################################################
-
-$location = (Get-AzResourceGroup -Name $resourceGroupName).Location
-Remove-AzResourceGroup -Name $resourceGroupName
-Remove-AzKeyVault -VaultName "${resourceGroupName}vault" -InRemovedState -Location $location
\ No newline at end of file
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/setup/setup.ps1 b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/setup/setup.ps1
deleted file mode 100644
index a3426d2a..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/setup/setup.ps1
+++ /dev/null
@@ -1,140 +0,0 @@
-Import-Module "Az" -MinimumVersion "9.3"
-Import-Module "SqlServer" -Version "22.0.49-preview"
-
-######################################################################
-# Prompt the user to enter the values of deployment parameters
-######################################################################
-
-$projectName = Read-Host -Prompt "Enter a project name that is used to generate resource names"
-$subscriptionId = Read-Host -Prompt "Enter your subscription id"
-$location = Read-Host -Prompt "Enter a region where you want to deploy the demo environment"
-$sqlAdminUserName = Read-Host -Prompt "Enter the username of the Azure SQL database server administrator for SQL authentication"
-$sqlAdminPasswordSecureString = Read-Host -Prompt "Enter the password of the Azure SQL database server administrator for SQL authentication" -AsSecureString
-
-$sqlAdminPassword = (New-Object PSCredential "user",$sqlAdminPasswordSecureString).GetNetworkCredential().Password
-$clientIP = (Invoke-WebRequest ifconfig.me/ip).Content.Trim()
-$bicepFile = "azuredeploy.bicep"
-$projectName = $projectName.ToLower()
-
-######################################################################
-# Sign in to Azure
-######################################################################
-
-Connect-AzAccount
-$context = Set-AzContext -Subscription $subscriptionId
-$userName = $context.Account.Id
-$userObjectId = $(Get-AzADUser -UserPrincipalName $userName).Id
-
-######################################################################
-# Create a resource group
-######################################################################
-$resourceGroupName = "${projectName}"
-New-AzResourceGroup -Name $resourceGroupName -Location $location
-
-######################################################################
-# Deploy the resources for the demo environment
-######################################################################
-
-New-AzResourceGroupDeployment `
- -ResourceGroupName $resourceGroupName `
- -TemplateFile $bicepFile `
- -projectName $projectName `
- -userObjectId $userObjectId `
- -userName $userName `
- -sqlAdminUserName $sqlAdminUserName `
- -sqlAdminPassword $sqlAdminPassword `
- -clientIP $clientIP
-
-######################################################################
-# Populate the database with data
-######################################################################
-
-$serverName = "${projectName}server.database.windows.net"
-$databaseName = "ContosoHR"
-$queryFile = "PopulateDatabase.sql"
-$query = Get-Content -path $queryFile -Raw
-$accessToken = (Get-AzAccessToken -ResourceUrl https://database.windows.net).Token
-Invoke-Sqlcmd -ServerInstance "tcp:$serverName" -Database $databaseName -AccessToken $accessToken -QueryTimeout 30 -Query $query
-
-######################################################################
-# Configure an extended event session to intercept application queries
-######################################################################
-
-$queryFile = "CreateXESession.sql"
-$query = Get-Content -path $queryFile -Raw
-$accessToken = (Get-AzAccessToken -ResourceUrl https://database.windows.net).Token
-Invoke-Sqlcmd -ServerInstance "tcp:$serverName" -Database $databaseName -AccessToken $accessToken -QueryTimeout 30 -Query $query
-
-######################################################################
-# Grant the web application access to the database
-######################################################################
-
-# Create a shadow principal, representing the application, in the database
-$appName = "${projectName}app"
-$query = "CREATE USER [$appName] FROM EXTERNAL PROVIDER;"
-$accessToken = (Get-AzAccessToken -ResourceUrl https://database.windows.net).Token
-Invoke-Sqlcmd -ServerInstance "tcp:$ServerName" -Database $databaseName -AccessToken $accessToken -QueryTimeout 30 -Query $query
-
-# Grant the application read access to the database.
-$query = "EXEC sp_addrolemember 'db_datareader', '$appName';"
-$accessToken = (Get-AzAccessToken -ResourceUrl https://database.windows.net).Token
-Invoke-Sqlcmd -ServerInstance "tcp:$serverName" -Database $databaseName -AccessToken $accessToken -QueryTimeout 30 -Query $query
-
-# Grant the application write access to the database.
-$query = "EXEC sp_addrolemember 'db_datawriter', '$appName';"
-$accessToken = (Get-AzAccessToken -ResourceUrl https://database.windows.net).Token
-Invoke-Sqlcmd -ServerInstance "tcp:$serverName" -Database $databaseName -AccessToken $accessToken -QueryTimeout 30 -Query $query
-
-# Grant the application access to the key metadata database.
-$query = "GRANT VIEW ANY COLUMN MASTER KEY DEFINITION TO [$appName];"
-$accessToken = (Get-AzAccessToken -ResourceUrl https://database.windows.net).Token
-Invoke-Sqlcmd -ServerInstance "tcp:$serverName" -Database $databaseName -AccessToken $accessToken -QueryTimeout 30 -Query $query
-
-# Grant the application access to the key metadata database.
-$query = "GRANT VIEW ANY COLUMN ENCRYPTION KEY DEFINITION TO [$appName];"
-$accessToken = (Get-AzAccessToken -ResourceUrl https://database.windows.net).Token
-Invoke-Sqlcmd -ServerInstance "tcp:$serverName" -Database $databaseName -AccessToken $accessToken -QueryTimeout 30 -Query $query
-
-######################################################################
-# Configure key metadata in the database
-######################################################################
-
-# Get the column master key from Azure Key Vault
-$keyVaultName = "${projectName}vault"
-$keyName = "CMK"
-$key = Get-AzKeyVaultKey -VaultName $keyVaultName -Name $keyName
-
-# Connect to the database using the SqlServer PowerShell module
-$connStr = "Data Source=tcp:$serverName;Initial Catalog=$databaseName;User ID=$sqlAdminUserName;Password=$sqlAdminPassword"
-$database = Get-SqlDatabase -ConnectionString $connStr
-
-# Sign in to Azure with your email address using the SqlServer PowerShell module
-Add-SqlAzureAuthenticationContext -Interactive
-
-# Create a column master key metadata object in the database for the key in Azure Key Vault
-$cmkName = "CMK1"
-$cmkSettings = New-SqlAzureKeyVaultColumnMasterKeySettings -KeyURL $key.Key.Kid -AllowEnclaveComputations
-New-SqlColumnMasterKey -Name $cmkName -InputObject $database -ColumnMasterKeySettings $cmkSettings
-
-# Create a column encryption key and its metadata object in the database
-$cekName = "CEK1"
-New-SqlColumnEncryptionKey -Name $cekName -InputObject $database -ColumnMasterKey $cmkName
-
-######################################################################
-# Encrypt database columns
-######################################################################
-
-$encryptedColumnSettings = @()
-$encryptedColumnSettings += New-SqlColumnEncryptionSettings -ColumnName "dbo.Employees.SSN" -EncryptionType "Randomized" -EncryptionKey $cekName
-$encryptedColumnSettings += New-SqlColumnEncryptionSettings -ColumnName "dbo.Employees.Salary" -EncryptionType "Randomized" -EncryptionKey $cekName
-Set-SqlColumnEncryption -ColumnEncryptionSettings $encryptedColumnSettings -InputObject $database -LogFileDirectory .
-
-######################################################################
-# Print parameters for the demo
-######################################################################
-
-$app = Get-AzWebApp -Name $appName -ResourceGroupName $resourceGroupName
-Write-Host -ForegroundColor "green" "Resource group name: $resourceGroupName"
-Write-Host -ForegroundColor "green" "Database server name: $serverName"
-Write-Host -ForegroundColor "green" "Database name: $databaseName"
-Write-Host -ForegroundColor "green" "Application URL: https://$($app.HostNames[0].ToString())"
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/tsql-scripts/DecryptColumns.sql b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/tsql-scripts/DecryptColumns.sql
deleted file mode 100644
index 9e296ddf..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/tsql-scripts/DecryptColumns.sql
+++ /dev/null
@@ -1,17 +0,0 @@
-ALTER TABLE [dbo].[Employees]
-ALTER COLUMN [SSN] [char](11) NOT NULL
-WITH (ONLINE = ON)
-GO
-
-ALTER TABLE [dbo].[Employees]
-ALTER COLUMN [Salary] [Money] NOT NULL
-WITH (ONLINE = ON)
-GO
-
-ALTER TABLE [dbo].[Employees]
-ALTER COLUMN [LastName] [nvarchar](50) NOT NULL
-WITH (ONLINE = ON)
-GO
-
-ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE;
-GO
\ No newline at end of file
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/tsql-scripts/EncryptColumns.sql b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/tsql-scripts/EncryptColumns.sql
deleted file mode 100644
index 86e38396..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/tsql-scripts/EncryptColumns.sql
+++ /dev/null
@@ -1,14 +0,0 @@
--- Data Owner's script - the user needs access to the keys
-
-ALTER TABLE [dbo].[Employees]
-ALTER COLUMN [SSN] [char](11) COLLATE Latin1_General_BIN2
-ENCRYPTED WITH (COLUMN_ENCRYPTION_KEY = [CEK1], ENCRYPTION_TYPE = Randomized, ALGORITHM = 'AEAD_AES_256_CBC_HMAC_SHA_256') NOT NULL;
-GO
-
-ALTER TABLE [dbo].[Employees]
-ALTER COLUMN [Salary] [Money]
-ENCRYPTED WITH (COLUMN_ENCRYPTION_KEY = [CEK1], ENCRYPTION_TYPE = Randomized, ALGORITHM = 'AEAD_AES_256_CBC_HMAC_SHA_256') NOT NULL;
-GO
-
-ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE;
-GO
\ No newline at end of file
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/tsql-scripts/ListAllEmployees.sql b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/tsql-scripts/ListAllEmployees.sql
deleted file mode 100644
index f8661c67..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/tsql-scripts/ListAllEmployees.sql and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/tsql-scripts/QueryColumns.sql b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/tsql-scripts/QueryColumns.sql
deleted file mode 100644
index 7a7e8975..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/tsql-scripts/QueryColumns.sql
+++ /dev/null
@@ -1,18 +0,0 @@
-SELECT * FROM [dbo].[Employees];
-
-DECLARE @SSN CHAR(11) = '795-73-9838'
-SELECT * FROM [dbo].[Employees] WHERE [SSN] = @SSN;
-GO
-
-DECLARE @SSNPattern CHAR(11) = '%9838'
-SELECT * FROM [dbo].[Employees] WHERE [SSN] LIKE @SSNPattern;
-GO
-
-DECLARE @MinSalary MONEY = 40000
-DECLARE @MaxSalary MONEY = 45000
-SELECT * FROM [dbo].[Employees] WHERE [Salary] > @MinSalary AND [Salary] < @MaxSalary;
-GO
-
-DECLARE @LastNamePrefix NVARCHAR(50) = 'Aber%';
-SELECT * FROM [dbo].[Employees] WHERE [LastName] LIKE @LastNamePrefix;
-GO
\ No newline at end of file
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/tsql-scripts/QueryXevents.sql b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/tsql-scripts/QueryXevents.sql
deleted file mode 100644
index 58e3d928..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-vbs/tsql-scripts/QueryXevents.sql
+++ /dev/null
@@ -1,55 +0,0 @@
-DECLARE @ExtendedEventsSessionName sysname = N'Demo';
-DECLARE @StartTime datetimeoffset;
-DECLARE @EndTime datetimeoffset;
-DECLARE @Offset int;
-
-DROP TABLE IF EXISTS #xmlResults;
-CREATE TABLE #xmlResults
-(
- xeTimeStamp datetimeoffset NOT NULL
- , xeXML XML NOT NULL
-);
-
-SET @StartTime = DATEADD(HOUR, -4, GETDATE()); --modify this to suit your needs
-SET @EndTime = GETDATE();
-SET @Offset = DATEDIFF(MINUTE, GETDATE(), GETUTCDATE());
-SET @StartTime = DATEADD(MINUTE, @Offset, @StartTime);
-SET @EndTime = DATEADD(MINUTE, @Offset, @EndTime);
-
-
-DECLARE @target_data xml;
-SELECT @target_data = CONVERT(xml, target_data)
-FROM sys.dm_xe_database_sessions AS s
-JOIN sys.dm_xe_database_session_targets AS t
- ON t.event_session_address = s.address
-WHERE s.name = @ExtendedEventsSessionName
- AND t.target_name = N'ring_buffer';
-
-
-;WITH src AS
-(
- SELECT xeXML = xm.s.query('.')
- FROM @target_data.nodes('/RingBufferTarget/event') AS xm(s)
-)
-INSERT INTO #xmlResults (xeXML, xeTimeStamp)
-SELECT src.xeXML
- , [xeTimeStamp] = src.xeXML.value('(/event/@timestamp)[1]', 'datetimeoffset(7)')
-FROM src;
-
-DECLARE @xe xml;
-
-SELECT * FROM (
- SELECT
- [TimeStamp] = CONVERT(varchar(30), DATEADD(MINUTE, 0 - @Offset, xr.xeTimeStamp), 120)
- , [Query] = xr.xeXML.query (N'/event/data[11]/value')
- FROM #xmlResults xr
- WHERE xr.xeTimeStamp >= @StartTime
- AND xr.xeTimeStamp<= @EndTime
-) AS [t]
-WHERE
-CONVERT(nvarchar(max), Query) LIKE '%Employees%'
- AND CONVERT(nvarchar(max), Query) LIKE '%SSN%'
- AND CONVERT(nvarchar(max), Query) NOT LIKE '%sp_describe_parameter_encryption%'
- AND CONVERT(nvarchar(max), Query) NOT LIKE '%COUNT%'
-ORDER BY [TimeStamp] DESC
-
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/README.md b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/README.md
similarity index 94%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/README.md
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/README.md
index 9b0a078a..e216f212 100644
--- a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/README.md
+++ b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/README.md
@@ -1,6 +1,6 @@

-# Always Encrypted with Intel SGX enclaves in Azure SQL Database - Demos
+# Always Encrypted with secure enclaves in Azure SQL Database - Demos
The demos in this folder showcase [Always Encrypted with secure enclaves](https://docs.microsoft.com/azure/azure-sql/database/always-encrypted-with-secure-enclaves-landing) in Azure SQL Database. The demos use the Contoso HR web application.
@@ -31,20 +31,26 @@ You also need to make sure the following software is installed on your machine:
1. PowerShell modules:
- 1. Az version 9.3 or later. For details on how to install the Az PowerShell module, see [Install the Azure Az PowerShell module](https://docs.microsoft.com/powershell/azure/install-az-ps). To determine the version of the Az module installed on your machine, run the following command from a PowerShell session.
+ 1. Az version 5.6 or later. For details on how to install the Az PowerShell module, see [Install the Azure Az PowerShell module](https://docs.microsoft.com/powershell/azure/install-az-ps). To determine the version of the Az module installed on your machine, run the following command from a PowerShell session.
```powershell
Get-InstalledModule -Name Az
```
- 2. SqlServer version 22.0.49-preview or later. For details on how to install the SqlServer PowerShell module, see [Installing or updating the SqlServer module](https://docs.microsoft.com/sql/powershell/download-sql-server-ps-module#installing-or-updating-the-sqlserver-module). To determine the version the SqlServer module installed on your machine, run the following command from a PowerShell session.
+ 2. Az.Attestation 0.1.8 or later. For details on how to install the Az.Attestation PowerShell module, see [Install Az.Attestation PowerShell module](https://docs.microsoft.com/azure/attestation/quickstart-powershell#install-azattestation-powershell-module). To determine the version of the Az.Attestation module installed on your machine, run the following command from a PowerShell session.
+
+ ```powershell
+ Get-InstalledModule -Name Az.Attestation
+ ```
+
+ 3. SqlServer version 21.1.18245 or later. For details on how to install the SqlServer PowerShell module, see [Installing or updating the SqlServer module](https://docs.microsoft.com/sql/powershell/download-sql-server-ps-module#installing-or-updating-the-sqlserver-module). To determine the version the SqlServer module installed on your machine, run the following command from a PowerShell session.
```powershell
Get-InstalledModule -Name SqlServer
```
-1. [Bicep](https://docs.microsoft.com/azure/azure-resource-manager/templates/bicep-overview) version 0.13.1 or later. You need to install Bicep and ensure it can be invoked from PowerShell. The recommended way to achieve that is to [install Bicep manually with PowerShell](https://docs.microsoft.com/azure/azure-resource-manager/templates/bicep-install?tabs=azure-powershell#manual-with-powershell).
-1. [SQL Server Management Studio](https://msdn.microsoft.com/en-us/library/mt238290.aspx) - version 19 or later is recommended.
+1. [Bicep](https://docs.microsoft.com/azure/azure-resource-manager/templates/bicep-overview) version 0.4.63 or later. You need to install Bicep and ensure it can be invoked from PowerShell. The recommended way to achieve that is to [install Bicep manually with PowerShell](https://docs.microsoft.com/azure/azure-resource-manager/templates/bicep-install?tabs=azure-powershell#manual-with-powershell).
+1. [SQL Server Management Studio](https://msdn.microsoft.com/en-us/library/mt238290.aspx) - version 18.9.1 or later is recommended.
## Setup
@@ -150,7 +156,7 @@ Perform the below steps before each demo presentation.
### Key Takeaways
-Always Encrypted with Intel SGX enclaves requires specific hardware that is exposed in Azure SQL Database as the DC-series hardware configuration. Microsoft Azure Attestation is a Platform-as-a-Service solution for attestation enclaves in Azure. Enclaves are attested against a policy, you define and control.
+Always Encrypted with secure enclaves requires specific hardware that is exposed in Azure SQL Database as the DC-series hardware configuration. Microsoft Azure Attestation is a Platform-as-a-Service solution for attestation enclaves in Azure. Enclaves are attested against a policy, you define and control.
## Demo 2
@@ -266,7 +272,7 @@ Perform the below steps before you show the demo.

- 1. Select the **Always Encrypted** tab. Make sure the **Enable Always Encrypted** and the **Enable secure enclaves** checkbox are selected. Set the Enclave attestation Protocol to **Microsoft Azure Attestation** and enter your attestation URL.
+ 1. Select the **Always Encrypted** tab. Make sure the **Enable Always Encrypted** checkbox **is** selected. Enter your attestation URL.

diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/portal-attestation-policy.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/portal-attestation-policy.png
similarity index 63%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/portal-attestation-policy.png
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/portal-attestation-policy.png
index e31b041c..d2de142f 100644
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/portal-attestation-policy.png and b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/portal-attestation-policy.png differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/portal-dc-series-configuration.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/portal-dc-series-configuration.png
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/portal-dc-series-configuration.png
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/portal-dc-series-configuration.png
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/portal-key-vault-key.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/portal-key-vault-key.png
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/portal-key-vault-key.png
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/portal-key-vault-key.png
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/portal-web-app-connection-string.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/portal-web-app-connection-string.png
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/portal-web-app-connection-string.png
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/portal-web-app-connection-string.png
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/resource-group.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/resource-group.png
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/resource-group.png
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/resource-group.png
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-cmk.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-cmk.png
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-cmk.png
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-cmk.png
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-connect-to-server-always-encrypted-disabled.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-connect-to-server-always-encrypted-disabled.png
new file mode 100644
index 00000000..1961ebec
Binary files /dev/null and b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-connect-to-server-always-encrypted-disabled.png differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-connect-to-server-always-encrypted-enabled.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-connect-to-server-always-encrypted-enabled.png
new file mode 100644
index 00000000..4430a02d
Binary files /dev/null and b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-connect-to-server-always-encrypted-enabled.png differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-connect-to-server-connection-properties-page.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-connect-to-server-connection-properties-page.png
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-connect-to-server-connection-properties-page.png
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-connect-to-server-connection-properties-page.png
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-connect-to-server-main-page.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-connect-to-server-main-page.png
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-connect-to-server-main-page.png
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-connect-to-server-main-page.png
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-encrypted-results.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-encrypted-results.png
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-encrypted-results.png
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-encrypted-results.png
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-explorer-select-database.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-explorer-select-database.png
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-explorer-select-database.png
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-explorer-select-database.png
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-plaintext-results.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-plaintext-results.png
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-plaintext-results.png
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-plaintext-results.png
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-xevent-plaintext.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-xevent-plaintext.png
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-xevent-plaintext.png
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-xevent-plaintext.png
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-xevent.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-xevent.png
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-xevent.png
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-xevent.png
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-xevents-results.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-xevents-results.png
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/ssms-xevents-results.png
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/ssms-xevents-results.png
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/web-app-filtering.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/web-app-filtering.png
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/web-app-filtering.png
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/web-app-filtering.png
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/web-app.png b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/web-app.png
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/img/web-app.png
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/img/web-app.png
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/setup/AttestationPolicy.txt b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/setup/AttestationPolicy.txt
similarity index 85%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/setup/AttestationPolicy.txt
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/setup/AttestationPolicy.txt
index 79b30784..2429ed9a 100644
--- a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/setup/AttestationPolicy.txt
+++ b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/setup/AttestationPolicy.txt
@@ -3,7 +3,7 @@ authorizationrules
{
[ type=="x-ms-sgx-is-debuggable", value==false ]
&& [ type=="x-ms-sgx-product-id", value==4639 ]
- && [ type=="x-ms-sgx-svn", value>= 2 ]
+ && [ type=="x-ms-sgx-svn", value>= 0 ]
&& [ type=="x-ms-sgx-mrsigner", value=="e31c9e505f37a58de09335075fc8591254313eb20bb1a27e5443cc450b6e33e5"]
=> permit();
};
\ No newline at end of file
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/setup/CreateXESession.sql b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/setup/CreateXESession.sql
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/setup/CreateXESession.sql
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/setup/CreateXESession.sql
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/setup/PopulateDatabase.sql b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/setup/PopulateDatabase.sql
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/setup/PopulateDatabase.sql
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/setup/PopulateDatabase.sql
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/setup/azuredeploy.bicep b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/setup/azuredeploy.bicep
similarity index 90%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/setup/azuredeploy.bicep
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/setup/azuredeploy.bicep
index 89c705ac..890cb5e6 100644
--- a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/setup/azuredeploy.bicep
+++ b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/setup/azuredeploy.bicep
@@ -30,7 +30,7 @@ param location string = resourceGroup().location
// Create the server
var SQLServerName_var = '${projectName}server'
-resource Server_Name_resource 'Microsoft.Sql/servers@2022-05-01-preview' = {
+resource Server_Name_resource 'Microsoft.Sql/servers@2019-06-01-preview' = {
name: SQLServerName_var
location: location
tags: {}
@@ -47,7 +47,7 @@ resource Server_Name_resource 'Microsoft.Sql/servers@2022-05-01-preview' = {
}
// Allow Azure services and resources to access this server
-resource Server_Name_AllowAllWindowsAzureIps 'Microsoft.Sql/servers/firewallRules@2022-05-01-preview' = {
+resource Server_Name_AllowAllWindowsAzureIps 'Microsoft.Sql/servers/firewallRules@2015-05-01-preview' = {
name: '${Server_Name_resource.name}/AllowAllWindowsAzureIps'
properties: {
endIpAddress: '0.0.0.0'
@@ -56,7 +56,7 @@ resource Server_Name_AllowAllWindowsAzureIps 'Microsoft.Sql/servers/firewallRule
}
// Allow Client IP to access this server
-resource Server_Name_AllowClientIP 'Microsoft.Sql/servers/firewallRules@2022-05-01-preview' = {
+resource Server_Name_AllowClientIP 'Microsoft.Sql/servers/firewallRules@2015-05-01-preview' = {
name: '${Server_Name_resource.name}/AllowClientIP'
properties: {
endIpAddress: clientIP
@@ -65,7 +65,7 @@ resource Server_Name_AllowClientIP 'Microsoft.Sql/servers/firewallRules@2022-05-
}
// Make the user an Azure AD administrator for the server, so that the user can connect with universal authentication
-resource Server_Name_activeDirectory 'Microsoft.Sql/servers/administrators@2022-05-01-preview' = {
+resource Server_Name_activeDirectory 'Microsoft.Sql/servers/administrators@2019-06-01-preview' = {
name: '${Server_Name_resource.name}/activeDirectory'
properties: {
administratorType: 'ActiveDirectory'
@@ -80,7 +80,7 @@ resource Server_Name_activeDirectory 'Microsoft.Sql/servers/administrators@2022-
// Create the ContosoHR database using the DC-series hardware configuration //
//////////////////////////////////////////////////////////////////////////////
-resource Database_Resource 'Microsoft.Sql/servers/databases@2022-05-01-preview' = {
+resource Database_Resource 'Microsoft.Sql/servers/databases@2020-08-01-preview' = {
name: '${Server_Name_resource.name}/ContosoHR'
location: location
tags: {}
@@ -96,7 +96,7 @@ resource Database_Resource 'Microsoft.Sql/servers/databases@2022-05-01-preview'
///////////////////////////////////////
// Create the attestation provider
-resource attestationProviderName_resource 'Microsoft.Attestation/attestationProviders@2021-06-01-preview' = {
+resource attestationProviderName_resource 'Microsoft.Attestation/attestationProviders@2020-10-01' = {
name: '${projectName}attest'
location: location
properties: {}
@@ -107,7 +107,7 @@ resource attestationProviderName_resource 'Microsoft.Attestation/attestationProv
///////////////////////////////////
// Create an App Service plan
-resource WebAppServicePlan_Resource 'Microsoft.Web/serverfarms@2022-03-01' = {
+resource WebAppServicePlan_Resource 'Microsoft.Web/serverfarms@2021-01-01' = {
name: '${projectName}plan'
location: location
properties: {}
@@ -117,7 +117,7 @@ resource WebAppServicePlan_Resource 'Microsoft.Web/serverfarms@2022-03-01' = {
}
// Create the App Service
-resource WebApp_Resource 'Microsoft.Web/sites@2022-03-01' = {
+resource WebApp_Resource 'Microsoft.Web/sites@2021-01-01' = {
name: '${projectName}app'
location: location
identity: {
@@ -147,7 +147,7 @@ resource WebApp_Resource 'Microsoft.Web/sites@2022-03-01' = {
}
// Deploy the application
-resource sourceControl 'Microsoft.Web/sites/sourcecontrols@2022-03-01' = {
+resource sourceControl 'Microsoft.Web/sites/sourcecontrols@2021-01-01' = {
name: '${projectName}app/web'
properties: {
repoUrl: 'https://github.com/microsoft/sql-server-samples.git'
@@ -164,7 +164,7 @@ resource sourceControl 'Microsoft.Web/sites/sourcecontrols@2022-03-01' = {
//////////////////////////////////////
// Create a key vault and assign key permissions to the user, so that the user can manage the keys
-resource KeyVault_Resource 'Microsoft.KeyVault/vaults@2022-07-01' = {
+resource KeyVault_Resource 'Microsoft.KeyVault/vaults@2019-09-01' = {
name: '${projectName}vault'
location: location
tags: {}
@@ -197,7 +197,7 @@ resource KeyVault_Resource 'Microsoft.KeyVault/vaults@2022-07-01' = {
}
// Assign key permissions to the web app
-resource KeyVaultWebAppAccessPolicy_Resource 'Microsoft.KeyVault/vaults/accessPolicies@2022-07-01' = {
+resource KeyVaultWebAppAccessPolicy_Resource 'Microsoft.KeyVault/vaults/accessPolicies@2019-09-01' = {
name: any('${KeyVault_Resource.name}/add')
properties: {
accessPolicies: [
@@ -218,7 +218,7 @@ resource KeyVaultWebAppAccessPolicy_Resource 'Microsoft.KeyVault/vaults/accessPo
}
// Create a key
-resource Key_Resource 'Microsoft.KeyVault/vaults/keys@2022-07-01' = {
+resource Key_Resource 'Microsoft.KeyVault/vaults/keys@2019-09-01' = {
name: '${KeyVault_Resource.name}/CMK'
tags: {}
properties: {
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/setup/cleanup.ps1 b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/setup/cleanup.ps1
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/setup/cleanup.ps1
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/setup/cleanup.ps1
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/setup/setup.ps1 b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/setup/setup.ps1
similarity index 96%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/setup/setup.ps1
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/setup/setup.ps1
index ef6f6c1f..6f205700 100644
--- a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/setup/setup.ps1
+++ b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/setup/setup.ps1
@@ -1,5 +1,6 @@
-Import-Module "Az" -MinimumVersion "9.3"
-Import-Module "SqlServer" #-Version "22.0.49-preview"
+Import-Module "Az" -MinimumVersion "5.6"
+Import-Module "Az.Attestation" -MinimumVersion "0.1.8"
+Import-Module "SqlServer" -MinimumVersion "21.1.18235"
######################################################################
# Prompt the user to enter the values of deployment parameters
@@ -142,7 +143,7 @@ $policy=Get-Content -path $policyFile -Raw
Set-AzAttestationPolicy -Name $attestationProviderName -ResourceGroupName $resourceGroupName -Tee $teeType -Policy $policy -PolicyFormat $policyFormat
# Get the attestation URL
-$attestationProvider = Get-AzAttestationProvider -Name $attestationProviderName -ResourceGroupName $resourceGroupName
+$attestationProvider = Get-AzAttestation -Name $attestationProviderName -ResourceGroupName $resourceGroupName
$attestationUrl = $attestationProvider.AttestUri
######################################################################
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/tsql-scripts/DecryptColumns.sql b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/tsql-scripts/DecryptColumns.sql
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/tsql-scripts/DecryptColumns.sql
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/tsql-scripts/DecryptColumns.sql
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/tsql-scripts/EncryptColumns.sql b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/tsql-scripts/EncryptColumns.sql
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/tsql-scripts/EncryptColumns.sql
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/tsql-scripts/EncryptColumns.sql
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/tsql-scripts/ListAllEmployees.sql b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/tsql-scripts/ListAllEmployees.sql
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/tsql-scripts/ListAllEmployees.sql
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/tsql-scripts/ListAllEmployees.sql
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/tsql-scripts/QueryColumns.sql b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/tsql-scripts/QueryColumns.sql
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/tsql-scripts/QueryColumns.sql
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/tsql-scripts/QueryColumns.sql
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/tsql-scripts/QueryXevents.sql b/samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/tsql-scripts/QueryXevents.sql
similarity index 100%
rename from samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database-sgx/tsql-scripts/QueryXevents.sql
rename to samples/features/security/always-encrypted-with-secure-enclaves/azure-sql-database/tsql-scripts/QueryXevents.sql
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/source/ContosoHR/ContosoHR.csproj b/samples/features/security/always-encrypted-with-secure-enclaves/source/ContosoHR/ContosoHR.csproj
index 7bfdc13b..88034a84 100644
--- a/samples/features/security/always-encrypted-with-secure-enclaves/source/ContosoHR/ContosoHR.csproj
+++ b/samples/features/security/always-encrypted-with-secure-enclaves/source/ContosoHR/ContosoHR.csproj
@@ -1,23 +1,14 @@
- net7.0
+ net5.0
54e8ce16-db31-4c81-a83f-e7f742cb59d9
-
-
-
-
-
-
-
-
-
-
+
-
+
@@ -29,7 +20,7 @@
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
+
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/source/ContosoHR/Properties/ServiceDependencies/aedemovbsapp - Web Deploy/profile.arm.json b/samples/features/security/always-encrypted-with-secure-enclaves/source/ContosoHR/Properties/ServiceDependencies/aedemovbsapp - Web Deploy/profile.arm.json
deleted file mode 100644
index e8bb810f..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/source/ContosoHR/Properties/ServiceDependencies/aedemovbsapp - Web Deploy/profile.arm.json
+++ /dev/null
@@ -1,113 +0,0 @@
-{
- "$schema": "https://schema.management.azure.com/schemas/2018-05-01/subscriptionDeploymentTemplate.json#",
- "contentVersion": "1.0.0.0",
- "metadata": {
- "_dependencyType": "compute.appService.windows"
- },
- "parameters": {
- "resourceGroupName": {
- "type": "string",
- "defaultValue": "aedemovbs",
- "metadata": {
- "description": "Name of the resource group for the resource. It is recommended to put resources under same resource group for better tracking."
- }
- },
- "resourceGroupLocation": {
- "type": "string",
- "defaultValue": "northeurope",
- "metadata": {
- "description": "Location of the resource group. Resource groups could have different location than resources, however by default we use API versions from latest hybrid profile which support all locations for resource types we support."
- }
- },
- "resourceName": {
- "type": "string",
- "defaultValue": "aedemovbsapp",
- "metadata": {
- "description": "Name of the main resource to be created by this template."
- }
- },
- "resourceLocation": {
- "type": "string",
- "defaultValue": "[parameters('resourceGroupLocation')]",
- "metadata": {
- "description": "Location of the resource. By default use resource group's location, unless the resource provider is not supported there."
- }
- }
- },
- "variables": {
- "appServicePlan_name": "[concat('Plan', uniqueString(concat(parameters('resourceName'), subscription().subscriptionId)))]",
- "appServicePlan_ResourceId": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', parameters('resourceGroupName'), '/providers/Microsoft.Web/serverFarms/', variables('appServicePlan_name'))]"
- },
- "resources": [
- {
- "type": "Microsoft.Resources/resourceGroups",
- "name": "[parameters('resourceGroupName')]",
- "location": "[parameters('resourceGroupLocation')]",
- "apiVersion": "2019-10-01"
- },
- {
- "type": "Microsoft.Resources/deployments",
- "name": "[concat(parameters('resourceGroupName'), 'Deployment', uniqueString(concat(parameters('resourceName'), subscription().subscriptionId)))]",
- "resourceGroup": "[parameters('resourceGroupName')]",
- "apiVersion": "2019-10-01",
- "dependsOn": [
- "[parameters('resourceGroupName')]"
- ],
- "properties": {
- "mode": "Incremental",
- "template": {
- "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
- "contentVersion": "1.0.0.0",
- "resources": [
- {
- "location": "[parameters('resourceLocation')]",
- "name": "[parameters('resourceName')]",
- "type": "Microsoft.Web/sites",
- "apiVersion": "2015-08-01",
- "tags": {
- "[concat('hidden-related:', variables('appServicePlan_ResourceId'))]": "empty"
- },
- "dependsOn": [
- "[variables('appServicePlan_ResourceId')]"
- ],
- "kind": "app",
- "properties": {
- "name": "[parameters('resourceName')]",
- "kind": "app",
- "httpsOnly": true,
- "reserved": false,
- "serverFarmId": "[variables('appServicePlan_ResourceId')]",
- "siteConfig": {
- "metadata": [
- {
- "name": "CURRENT_STACK",
- "value": "dotnetcore"
- }
- ]
- }
- },
- "identity": {
- "type": "SystemAssigned"
- }
- },
- {
- "location": "[parameters('resourceLocation')]",
- "name": "[variables('appServicePlan_name')]",
- "type": "Microsoft.Web/serverFarms",
- "apiVersion": "2015-08-01",
- "sku": {
- "name": "S1",
- "tier": "Standard",
- "family": "S",
- "size": "S1"
- },
- "properties": {
- "name": "[variables('appServicePlan_name')]"
- }
- }
- ]
- }
- }
- }
- ]
-}
\ No newline at end of file
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/source/ContosoHR/Properties/ServiceDependencies/aedemovbsapp - Web Deploy1/profile.arm.json b/samples/features/security/always-encrypted-with-secure-enclaves/source/ContosoHR/Properties/ServiceDependencies/aedemovbsapp - Web Deploy1/profile.arm.json
deleted file mode 100644
index e8bb810f..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/source/ContosoHR/Properties/ServiceDependencies/aedemovbsapp - Web Deploy1/profile.arm.json
+++ /dev/null
@@ -1,113 +0,0 @@
-{
- "$schema": "https://schema.management.azure.com/schemas/2018-05-01/subscriptionDeploymentTemplate.json#",
- "contentVersion": "1.0.0.0",
- "metadata": {
- "_dependencyType": "compute.appService.windows"
- },
- "parameters": {
- "resourceGroupName": {
- "type": "string",
- "defaultValue": "aedemovbs",
- "metadata": {
- "description": "Name of the resource group for the resource. It is recommended to put resources under same resource group for better tracking."
- }
- },
- "resourceGroupLocation": {
- "type": "string",
- "defaultValue": "northeurope",
- "metadata": {
- "description": "Location of the resource group. Resource groups could have different location than resources, however by default we use API versions from latest hybrid profile which support all locations for resource types we support."
- }
- },
- "resourceName": {
- "type": "string",
- "defaultValue": "aedemovbsapp",
- "metadata": {
- "description": "Name of the main resource to be created by this template."
- }
- },
- "resourceLocation": {
- "type": "string",
- "defaultValue": "[parameters('resourceGroupLocation')]",
- "metadata": {
- "description": "Location of the resource. By default use resource group's location, unless the resource provider is not supported there."
- }
- }
- },
- "variables": {
- "appServicePlan_name": "[concat('Plan', uniqueString(concat(parameters('resourceName'), subscription().subscriptionId)))]",
- "appServicePlan_ResourceId": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', parameters('resourceGroupName'), '/providers/Microsoft.Web/serverFarms/', variables('appServicePlan_name'))]"
- },
- "resources": [
- {
- "type": "Microsoft.Resources/resourceGroups",
- "name": "[parameters('resourceGroupName')]",
- "location": "[parameters('resourceGroupLocation')]",
- "apiVersion": "2019-10-01"
- },
- {
- "type": "Microsoft.Resources/deployments",
- "name": "[concat(parameters('resourceGroupName'), 'Deployment', uniqueString(concat(parameters('resourceName'), subscription().subscriptionId)))]",
- "resourceGroup": "[parameters('resourceGroupName')]",
- "apiVersion": "2019-10-01",
- "dependsOn": [
- "[parameters('resourceGroupName')]"
- ],
- "properties": {
- "mode": "Incremental",
- "template": {
- "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
- "contentVersion": "1.0.0.0",
- "resources": [
- {
- "location": "[parameters('resourceLocation')]",
- "name": "[parameters('resourceName')]",
- "type": "Microsoft.Web/sites",
- "apiVersion": "2015-08-01",
- "tags": {
- "[concat('hidden-related:', variables('appServicePlan_ResourceId'))]": "empty"
- },
- "dependsOn": [
- "[variables('appServicePlan_ResourceId')]"
- ],
- "kind": "app",
- "properties": {
- "name": "[parameters('resourceName')]",
- "kind": "app",
- "httpsOnly": true,
- "reserved": false,
- "serverFarmId": "[variables('appServicePlan_ResourceId')]",
- "siteConfig": {
- "metadata": [
- {
- "name": "CURRENT_STACK",
- "value": "dotnetcore"
- }
- ]
- }
- },
- "identity": {
- "type": "SystemAssigned"
- }
- },
- {
- "location": "[parameters('resourceLocation')]",
- "name": "[variables('appServicePlan_name')]",
- "type": "Microsoft.Web/serverFarms",
- "apiVersion": "2015-08-01",
- "sku": {
- "name": "S1",
- "tier": "Standard",
- "family": "S",
- "size": "S1"
- },
- "properties": {
- "name": "[variables('appServicePlan_name')]"
- }
- }
- ]
- }
- }
- }
- ]
-}
\ No newline at end of file
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/README.md b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/README.md
deleted file mode 100644
index 3562fa9d..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/README.md
+++ /dev/null
@@ -1,189 +0,0 @@
-
-
-# Always Encrypted with secure enclaves in SQL Server without attestation - Demos
-
-The demos in this folder showcase [Always Encrypted with secure enclaves](https://docs.microsoft.com/azure/azure-sql/database/always-encrypted-with-secure-enclaves-landing) in SQL Server. The demos use the Contoso HR web application.
-
-### Contents
-
-[About this sample](#about-this-sample)
-[Before you begin](#before-you-begin)
-[Setup](#setup)
-[Prepare for the demo](#prepare-for-the-demo)
-[Demo steps](#demo-steps)
-[Key takeaways](#key-takeaways)
-[Reset the demo](#reset-the-demo)
-
-## About this sample
-
-- **Applies to:** SQL Server 2019 or later
-- **Key features:** Always Encrypted with secure enclaves
-- **Workload:** Human resources (HR) application
-- **Programming Language:** C#, Transact-SQL
-- **Authors:** Jakub Szymaszek, Pieter Vanhove
-- **Update history:**
-
-## Before you begin
-
-You need one machine (it can be a virtual machine) that runs SQL Server. It must meet the [SQL Server computer requirements](https://docs.microsoft.com/sql/relational-databases/security/tutorial-getting-started-with-always-encrypted-enclaves?#sql-server-computer-requirements). In addition, you will need to install Visual Studio 2022 or later, to compile and run the sample web application. Secondly, make sure you have installed SQL Server Management Studio 19 or later.
-
-## Setup
-
-This section describes the initial setup steps.
-
-1. Enable virtualization-based security (VBS) on the machine and Always Encrypted with secure enclaves in your SQL Server instance following Steps 1-2 in [Tutorial: Getting started with Always Encrypted with secure enclaves in SQL Server](https://docs.microsoft.com/en-us/sql/relational-databases/security/tutorial-getting-started-with-always-encrypted-enclaves).
-1. Import the **ContosoHR** demo database.
- 1. Clone/Download the repository.
- 1. Open SSMS and connect to your SQL Server instance.
- 1. In SSMS, right-click on **Databases** in Object Explorer and select **Import Data-tier Application...**.
- 1. Locate the **ContosoHR** bacpac file the **/setup** folder.
- 1. Complete the steps of the wizard to import the **ContosoHR** database.
-1. Configure the Contoso HR web application
- 1. Start Visual Studio and open the **ContosoHR** solution file located in **../source**.
- 1. Using Solution Explorer, locate and open the **appsettings.json** file under the **ContosoHR** project.
- 1. Look for the line that contains the database connection string for the web application. The line should look like this:
- ```json
- "ContosoHRDatabase": "Server=tcp:.database.windows.net;Database=ContosoHR;Column Encryption Setting=Enabled; Attestation Protocol = AAS; Enclave Attestation Url=; Authentication=Active Directory Managed Identity"
- ```
- replace it with
-
- ```json
- "ContosoHRDatabase": "Data Source=.;Initial Catalog=ContosoHR;Column Encryption Setting=Enabled;Attestation Protocol=None;Integrated Security=true"
- ```
-
- 1. Make sure the value of the **Data Source** keyword in the database connection string correctly identifies your SQL Server instance.
- 1. The **Attestation Protocol** should be set to **None**.
- 1. Save the file.
-
-1. In Visual Studio, select **Build**>**Build Solution** to build the demo application.
-
-## Prepare for the demo
-
-This section describes the steps you should execute before each demo presentation.
-
-During the demo, you will use two instances of SSMS:
-
-- DBA's instance - when using it, you will assume the role of a DBA.
-- Security Administrator's instance - when using it, you will assume the role of a Security Administrator, who configures Always Encrypted in the database.
-
-Perform the below steps before you show the demo.
-
-1. Close all running SSMS instances.
-1. Prepare DBA's instance of SSMS.
- 1. Start SSMS.
- 1. In the **Connect to Server** dialog:
- 1. In the main page of the dialog, enter your database server name. For example, enter `.` to connect to the default instance on the local machine. Set your authentication parameters.
- 1. Click the **Options >>** button, select the **Connection Properties** tab and enter the database name (**ContosoHR**).
-
- 
-
- 1. Select the **Always Encrypted** tab. Make sure the **Enable Always Encrypted** checkbox is **not** selected.
-
- 
-
- 1. Click Connect.
- 1. Configure an extended event session to intercept application's queries.
- 1. Click Ctrl + O. In the **Open File** dialog, navigate to the **tsql-scripts** folder and select ***CreateXESession.sql**. Click **F5** to execute the query.
- 1. In Object Explorer, locate the newly created **Demo** extended event session - under your server, go to **Management/Extended Events/Sessions**.
- 1. Righ-click the **Demo** session and select **Watch Live Data**. This will open the **Demo Live Data** window.
-
- 
-
- 1. Close the tab with the ***CreateXESession.sql** query.
- 1. Prepare the query windows for the demo.
- 1. With the **ContosoHR** database selected in Object Explorer, click Ctrl + O. In the **Open File** dialog, navigate to the **tsql-scripts** folder and select **ListAllEmployees.sql**. Do not execute the query yet.
-1. Prepare Security Administrator's instance of SSMS.
- 1. Start SSMS.
- 1. In the **Connect to Server** dialog:
- 1. In the main page of the dialog, enter your database server name. For example, enter `.` to connect to the default instance on the local machine. Set your authentication parameters.
- 1. Click the **Options >>** button, select the **Connection Properties** tab and enter the database name (**ContosoHR**).
-
- 
-
- 1. Select the **Always Encrypted** tab. Make sure the **Enable Always Encrypted** and the **Enable secure enclaves** checkbox are selected. Set the Enclave attestation Protocol to **None**.
-
- 
-
- 1. Click Connect.
- 1. Configure query windows.
- 1. In Object Explorer, find and select the **ContosoHR** database.
-
- 
-
- 1. With the **ContosoHR** database selected, click Ctrl + O. In the **Open File** dialog, navigate to the **tsql-scripts** folder and select **EncryptColumns.sql**. Do not execute the query yet.
-1. Run the web application
- 1. Open the **ContosoHR** solution, located in **../source**, in Visual Studio.
- 1. Click **F5** to run the solution. The Contoso HR web application should open in a browser window.
-
- 
-
-## Demo steps
-
-1. Show the Contoso HR web app in the browser. This application displays employee records and allows you to filter employees by salary or by a portion of the social security number (SSN). Move the salary slider and enter a couple of digits in the search box to filter by salary and SSN. You can also click on the **Ssn** or **Salary** headers to sort by SSN or salary.
-
- 
-
-1. Switch to DBA's instance of SSMS, select the **ListAllEmployees.sql** tab and click **F5** to execute the query, which shows the content of the **Employees** table, the web application uses as a data store. As a DBA, you can view all sensitive information about employees, including the data stored in the **SSN** and **Salary** columns. A malicious DBA could easily exfiltrate the data by running a simple query like this one.
-
- 
-
-1. Inspect the queries the demo application has sent to the database.
- 1. Select the **Demo Live Data** window, which should contain a table with some events your demo application triggered.
- 1. If the table does not contain the **statement** column, right click on the header of the table and select **Choose Columns...**. Move **statement** to **Selected columns** and click **OK**.
-
- 
-
- 1. Double click on the statement column in the last row of the table to see the last query the application sent to the database. Inspect the query statement. Note that the query contains the **WHERE** clause with rich computations on encrypted columns: pattern matching using the **LIKE** predicate on the **SSN** column and the range comparison on the **Salary** column. The query also sorts records (the **ORDER BY** clause) by **SSN** or **Salary**.
- 1. Locate the value of query parameters: **@SSNSearchPattern**, **@MinSalary**, **@MaxSalary**. Note that the values of the parameters are in plaintext, as the columns, the parameters correspond to, are not encrypted.
-
- 
-
- 1. Click **OK** to close the statement window.
-
-1. As a Security Administrator, provision a column master key for Always Encrypted.
- 1. In Object Explorer of the Security Administrator's instance of SSMS, expand the node of the **ContosoHR** database and navigate to **Security/ Always Encrypted Keys/Column Master Keys**.
- 1. Right-click on the **Column Master Keys** folder and select **New Column Master Key…**.
- 
- 1. Enter a column master key name: **CMK1**.
- 1. Select **Windows Certificate Store - Current User**.
- 1. Make sure **Allow enclave computations** is selected.
- 
- 1. Click **Generate Certificate** to create a new certificate to be used as a column master key.
- 1. Click **OK**.
-1. As a Security Administrator, provision a column encryption key for Always Encrypted.
- 1. In Object Explorer of the Security Administrator's instance of SSMS, expand the node of the **ContosoHR** database and navigate to **Security/ Always Encrypted Keys/Column Encryption Keys**.
- 1. Right-click on the **Column Encryption Keys** folder and select **New Column Encryption Key…**.
- 1. Enter a column encryption key name: **CEK1**.
- 1. Select **CMK1** as the column master key to protect your new column encryption key.
- 1. Click **OK**.
-1. As a Security Administrator, encrypt the **SSN** and **Salary** columns in place, using the secure enclave.
- 1. In Security Administrator's instance of SSMS, select the **EncryptColumns.sql** tab and click **F5** to execute the query.
-1. Switch back to DBA's instance of SSMS, select the **ListAllEmployees.sql** tab and click **F5** to execute the query again. Now the query should show the encrypted data in the **SSN** and **Salary** columns. As both columns are encrypted, the DBA cannot see the data in plaintext.
-
- 
-
-1. In the web browser containing the web app, move the slider to reset the filter for salary and then re-enter a few digits of an SSN. Confirm the application still can filter employee records by salary and SSN.
-
-1. Inspect the queries the demo application sends to the database, after encrypting the columns.
- 1. In DBA's instance of SSMS, select the **Demo Live Data** window, which should contain a table with some events your demo application triggered.
-
- 1. Double click on the statement column in the last row of the table to see the last query the application sent to the database. Inspect the query statement. Note that the query statement the query sends to the database has not changed - it still contains pattern matching using the **LIKE** predicate on the **SSN** column and the range comparison on the **Salary** column, as well as sorting (the **ORDER BY** clause) by **SSN** or **Salary**.
- 1. Locate the value of query parameters: **@SSNSearchPattern**, **@MinSalary**, **@MaxSalary**. Note that the values of the parameters are now encrypted – the client driver inside the web app transparently encrypts parameters corresponding to encrypted columns, before sending the query to the database. Not only does not the DBA have access to sensitive data in the database, but the DBA cannot see the plaintext values of query parameters used to process that data either.
-
- 
-
- 1. Click **OK** to close the statement window.
-
-## Key takeaways
-
-Secure enclaves make it possible to encrypt sensitive data columns in-place, eliminating a need to move the data outside of the database for cryptographic operations.
-
-The unique benefit of Always Encrypted with secure enclaves is that it allows you to protect your sensitive data from high-privilege users, including DBAs in your organization, and, after you encrypt your data to protect it, your applications can continue running rich queries on encrypted columns.
-
-## Reset the demo
-
-In Security Administrator's instance of SSMS:
-
-1. Open and execute **tsql-scripts/DecryptColumns.sql**.
-1. Open and execute **tsql-scripts/DropKeys.sql**.
-1. Close both SSMS windows.
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/new-cmk-dialog.png b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/new-cmk-dialog.png
deleted file mode 100644
index 81d4ee8b..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/new-cmk-dialog.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/new-cmk.png b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/new-cmk.png
deleted file mode 100644
index 3954972d..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/new-cmk.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-connect-to-server-always-encrypted-disabled.png b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-connect-to-server-always-encrypted-disabled.png
deleted file mode 100644
index 957f6c84..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-connect-to-server-always-encrypted-disabled.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-connect-to-server-always-encrypted-enabled.png b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-connect-to-server-always-encrypted-enabled.png
deleted file mode 100644
index e5ea6632..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-connect-to-server-always-encrypted-enabled.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-connect-to-server-connection-properties-page.png b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-connect-to-server-connection-properties-page.png
deleted file mode 100644
index 558d07c3..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-connect-to-server-connection-properties-page.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-encrypted-results.png b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-encrypted-results.png
deleted file mode 100644
index a7da36b7..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-encrypted-results.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-explorer-select-database.png b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-explorer-select-database.png
deleted file mode 100644
index 004852ce..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-explorer-select-database.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-plaintext-results.png b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-plaintext-results.png
deleted file mode 100644
index 4aac6114..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/ssms-plaintext-results.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/web-app-filtering.png b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/web-app-filtering.png
deleted file mode 100644
index 179ac525..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/web-app-filtering.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/web-app.png b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/web-app.png
deleted file mode 100644
index 896d838b..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/web-app.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/xe-session-watch-live-data.png b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/xe-session-watch-live-data.png
deleted file mode 100644
index 4df5b39b..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/xe-session-watch-live-data.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/xevent-after-encryption.png b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/xevent-after-encryption.png
deleted file mode 100644
index cb454447..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/xevent-after-encryption.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/xevent-before-encryption.png b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/xevent-before-encryption.png
deleted file mode 100644
index fc002905..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/xevent-before-encryption.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/xevent-session-columns.png b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/xevent-session-columns.png
deleted file mode 100644
index e9127c38..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/img/xevent-session-columns.png and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/setup/contosohr.bacpac b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/setup/contosohr.bacpac
deleted file mode 100644
index 9691f806..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/setup/contosohr.bacpac and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/tsql-scripts/CreateXESession.sql b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/tsql-scripts/CreateXESession.sql
deleted file mode 100644
index 6b6c3d3e..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/tsql-scripts/CreateXESession.sql
+++ /dev/null
@@ -1,11 +0,0 @@
-CREATE EVENT SESSION [Demo] ON SERVER
-ADD EVENT sqlserver.rpc_completed(SET collect_data_stream=(1),collect_statement=(1)
- ACTION(sqlserver.sql_text)
- WHERE ([sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%SSN%') AND [sqlserver].[equal_i_sql_unicode_string]([sqlserver].[database_name],N'ContosoHR') AND [package0].[not_equal_unicode_string]([statement],N'exec sp_reset_connection')))
-ADD TARGET package0.ring_buffer
-WITH (MAX_MEMORY=4096 KB,EVENT_RETENTION_MODE=ALLOW_SINGLE_EVENT_LOSS,MAX_DISPATCH_LATENCY=2 SECONDS,MAX_EVENT_SIZE=0 KB,MEMORY_PARTITION_MODE=NONE,TRACK_CAUSALITY=OFF,STARTUP_STATE=OFF)
-GO
-ALTER EVENT SESSION [Demo]
-ON SERVER
-STATE = start;
-GO
\ No newline at end of file
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/tsql-scripts/DecryptColumns.sql b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/tsql-scripts/DecryptColumns.sql
deleted file mode 100644
index 9e296ddf..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/tsql-scripts/DecryptColumns.sql
+++ /dev/null
@@ -1,17 +0,0 @@
-ALTER TABLE [dbo].[Employees]
-ALTER COLUMN [SSN] [char](11) NOT NULL
-WITH (ONLINE = ON)
-GO
-
-ALTER TABLE [dbo].[Employees]
-ALTER COLUMN [Salary] [Money] NOT NULL
-WITH (ONLINE = ON)
-GO
-
-ALTER TABLE [dbo].[Employees]
-ALTER COLUMN [LastName] [nvarchar](50) NOT NULL
-WITH (ONLINE = ON)
-GO
-
-ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE;
-GO
\ No newline at end of file
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/tsql-scripts/EncryptColumns.sql b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/tsql-scripts/EncryptColumns.sql
deleted file mode 100644
index 86e38396..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/tsql-scripts/EncryptColumns.sql
+++ /dev/null
@@ -1,14 +0,0 @@
--- Data Owner's script - the user needs access to the keys
-
-ALTER TABLE [dbo].[Employees]
-ALTER COLUMN [SSN] [char](11) COLLATE Latin1_General_BIN2
-ENCRYPTED WITH (COLUMN_ENCRYPTION_KEY = [CEK1], ENCRYPTION_TYPE = Randomized, ALGORITHM = 'AEAD_AES_256_CBC_HMAC_SHA_256') NOT NULL;
-GO
-
-ALTER TABLE [dbo].[Employees]
-ALTER COLUMN [Salary] [Money]
-ENCRYPTED WITH (COLUMN_ENCRYPTION_KEY = [CEK1], ENCRYPTION_TYPE = Randomized, ALGORITHM = 'AEAD_AES_256_CBC_HMAC_SHA_256') NOT NULL;
-GO
-
-ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE;
-GO
\ No newline at end of file
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/tsql-scripts/ListAllEmployees.sql b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/tsql-scripts/ListAllEmployees.sql
deleted file mode 100644
index f8661c67..00000000
Binary files a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/tsql-scripts/ListAllEmployees.sql and /dev/null differ
diff --git a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/tsql-scripts/QueryColumns.sql b/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/tsql-scripts/QueryColumns.sql
deleted file mode 100644
index 7a7e8975..00000000
--- a/samples/features/security/always-encrypted-with-secure-enclaves/sql-server-without-attestation/tsql-scripts/QueryColumns.sql
+++ /dev/null
@@ -1,18 +0,0 @@
-SELECT * FROM [dbo].[Employees];
-
-DECLARE @SSN CHAR(11) = '795-73-9838'
-SELECT * FROM [dbo].[Employees] WHERE [SSN] = @SSN;
-GO
-
-DECLARE @SSNPattern CHAR(11) = '%9838'
-SELECT * FROM [dbo].[Employees] WHERE [SSN] LIKE @SSNPattern;
-GO
-
-DECLARE @MinSalary MONEY = 40000
-DECLARE @MaxSalary MONEY = 45000
-SELECT * FROM [dbo].[Employees] WHERE [Salary] > @MinSalary AND [Salary] < @MaxSalary;
-GO
-
-DECLARE @LastNamePrefix NVARCHAR(50) = 'Aber%';
-SELECT * FROM [dbo].[Employees] WHERE [LastName] LIKE @LastNamePrefix;
-GO
\ No newline at end of file