Azure Security and Compliance Blueprint
Azure Security and Compliance Blueprint
Overview
The Azure Security and Compliance Blueprint - HIPAA/HITRUST Health Data
and AI offers a turn-key deployment of an Azure PaaS and IaaS solution to
demonstrate how to ingest, store, analyze, interact, identity and Securely
deploy solutions with health data while being able to meet industry compliance
requirements. The blueprint helps accelerate cloud adoption and utilization for
customers with data that is regulated.
The Azure Security and Compliance Blueprint - HIPAA/HITRUST Health Data and AI
Blueprint provides tools and guidance to help deploy a secure, Health Insurance
Portability and Accountability Act (HIPAA), and Health Information Trust Alliance
(HITRUST) ready platform-as-a-service (PaaS) environment for ingesting, storing,
analyzing, and interacting with personal and non-personal medical records in a
secure, multi-tier cloud environment, deployed as an end-to-end solution.
IaaS solution will demonstrate how to migrate an on-premises SQL based solution to
Azure, and to implement a Privileged Access Workstation (PAW) to securely manage
cloud-based services and solutions. The IaaS SQL Server database adds potential
experimentation data is imported into a SQL IaaS VM, and that VM uses MSI
authenticated access to interact a SQL Azure PaaS service.Both these showcases a
common reference architecture and is designed to simplify adoption of Microsoft
Azure. This provided architecture illustrates a solution to meet the needs of
organizations seeking a cloud-based approach to reducing the burden and cost of
deployment.
The solution is designed to consume a sample data set formatted using Fast
Healthcare Interoperability Resources (FHIR), a worldwide standard for exchanging
healthcare information electronically, and store it in a secure manner. Customers can
then use Azure Machine Learning Studio to take advantage of powerful business
intelligence tools and analytics to review predictions made on the sample data. As an
example of the kind of experiment Azure Machine Learning Studio can facilitate, the
blueprint includes a sample dataset, scripts, and tools for predicting the length of a
patient's stay in a hospital facility.
Solution components
The foundational architecture is composed of the following components:
Architectural diagram
Roles
The blueprint defines two roles for administrative users (operators), and three roles
for users in hospital management and patient care. A sixth role is defined for an
auditor to evaluate compliance with HIPAA and other regulations. Azure Role-based
Access Control (RBAC) enables precisely focused access management for each user
of the solution through built-in and custom roles. See Get started with Role-Based
Access Control in the Azure portal and Built-in roles for Azure role-based access
control for detailed information about RBAC, roles, and permissions.
Site Administrator
The site administrator is responsible for the customer's Azure subscription. They
control the overall deployment, but have no access to patient records.
Database Analyst
The database analyst administers the SQL Server instance and database. They have
no access to patient records.
The data scientist operates the Azure Machine Learning Studio. They can import,
export, and manage data, and run reports. The data scientist has access to patient
data, but does not have administrative privileges.
The care line manager is directly involved with the care of patients. This role requires
monitoring the status of individual patients as well as ensuring that staff is available
to meet the specific care requirements of their patients. The care line manager is
responsible for adding and updating patient records.
Auditor
The auditor evaluates the solution for compliance. They have no direct access to the
network.
The example use case scenario uses Azure Machine Learning Studio to predict a
newly admitted patient's length of stay by comparing the medical details taken at
patient intake to aggregated historical data from previous patients. The blueprint
includes a large set of anonymized medical records to demonstrate the training and
predictive capabilities of the solution. In a production deployment, customers would
use their own records to train the solution for more accurate predictions reflecting
the unique details of their environment, facilities, and patients.
Email: Alex_SiteAdmin
Alex's job is to evaluate technologies that can reduce the burden of managing an on-
premises network and reduce costs for management. Alex has been evaluating Azure
for some time but has struggled to configure the services that he needs to meet the
HiTrust compliance requirements to store Patient Data in the cloud. Alex has selected
the Azure Health AI to deploy a compliance-ready health solution, which has
addressed the requirements to meet the customer requirements for HiTrust.
Email: Debra_DataScientist
Debra is in charge of using and creating models that analyze medical records to
provide insights into patient care. Debra uses SQL and the R statistical programming
language to create her models.
Email: Danny_DBAnalyst
Danny is the main contact for anything regarding the Microsoft SQL Server that
stores all the patient data for Contosoclinic. Danny is an experienced SQL Server
administrator who has recently become familiar with Azure SQL Database.
Email: Chris_CareLineManager
As the individual directly responsible for managing patient admission, and discharges
at Contosoclinic, Chris uses the predictions generated by the LOS solution to ensure
that adequate staff are available to provide care to patients while they are staying in
the facility.
Auditor -- Han
Email: Han_Auditor
Han is a certified auditor who has experience auditing for ISO, SOC, and HiTrust. Han
was hired to review Contosoclinc's network. Han can review the Customer
Responsibility Matrix provided with the solution to ensure that the blueprint and LOS
solution can be used to store, process, and display sensitive personal data.
Design configuration
This section details the default configurations and security measures built into the
Blueprint outlined to:
Authentication:
Roles:
INGEST
Azure Functions
The solution was designed to use Azure Functions to process the sample length of
stay data used in the analytics demo. Three capabilities in the functions have been
created.
1. Azure Blob Storage - Patient data .csv file sample uploaded to storage
2. Event Grid - Event Publishes data to Azure Function (Bulk import - blob
event)
3. Azure Function - Performs the processing and stores the data into SQL
Storage using the secure function - event(type; blob url)
4. SQL DB - The database store for Patient Data using tags for classification, and
the ML process is kicked off to do the training experiment.
Additionally the azure function was designed to read and protect designated
sensitive data in the sample data set using the following tags:
1. Azure Function triggered and the function requests for a bearer token from Azure
Active directory.
3. Azure Roles validate the request, and authorize access request to the Key Vault.
4. Key Vault returns the secret, in this case the SQL DB Connection string.
To achieve the storage of the data, a common API schema was implemented
following Fast Healthcare Interoperability Resources (FHIR, pronounced fire). The
function was provided the following FHIR exchange elements:
Event Grid
The solution supports Azure Event Grid, a single service for managing routing of all
events from any source to any destination, providing:
STORE
SQL Database and Server
Storage accounts
ANALYZE
Machine Learning
Logging is enabled for Machine Learning Studio web services.
Using Machine Learning Studio requires the development of experiments that
provide the ability to predict to a solution set.
SECURITY
Azure Security Center
Application Insights
Application Insights is an extensible Application Performance Management
(APM) service for web developers on multiple platforms. Use it to monitor your
live web application. It detects performance anomalies. It includes powerful
analytics tools to help you diagnose issues and to understand what users
actually do with your app. It's designed to help you continuously improve
performance and usability.
Azure Alerts
Alerts offer a method of monitoring Azure services and allow you to configure
conditions over data. Alerts also provide notifications when an alert condition
matches the monitoring data.
Azure Monitor logs