2010-04-17 3 views
19

У меня возникли некоторые вопросы при попытке разработки приложения S3 с использованием ASP.NET MVC и попытки поддерживать совместимость с HIPAA.Можете ли вы создать веб-приложение Amazon S3, совместимое с HIPAA?

Мой первоначальный план состоял в том, чтобы потребовать подключения SSL к моему веб-серверу, зашифровать изображения на моем сервере, а затем отправить их на s3 с помощью личных ключей.

Вот мои очевидные проблемы:

  1. Вы не можете хранить в незашифрованном виде изображения в любой временной кэш-файла, когда клиент просматривает изображения в браузере.
  2. Даже если я настрою ashx для общего управления изображением в памяти, не удалось ли это сохранить в кеше?

Говорить о том, что изображения будут зашифрованы, потому что вы будете подключаться к моему серверу с помощью https, все равно не гарантирует, что все браузеры не будут кэшировать данные.

Невозможно даже рассмотреть «строку запроса» с возможностью истечения срока действия, поскольку данные будут зашифрованы перед сохранением на диске в s3 и снова будут дешифрованы на моем сервере в памяти.

Я думаю, что моим единственным вариантом было бы написать/купить какой-то компонент ActiveX, который не будет отображать изображение как простой источник изображения html или написать мое приложение в качестве приложения WinForm на стороне клиента.

ответ

17

На первый взгляд кажется, что облачные вычисления могут быть совместимы с HIPAA. Неужели невозможно удовлетворить the Security Rule, когда экземпляр размещается на чужом оборудовании, как правило, кто-то из других системных администраторов?

Однако Amazon опубликовала технический документ по этой теме: Creating HIPAA-compliant Medical Data Applications with AWS. Это стоит того, чтобы читать и, по-видимому, решать основные проблемы. Она заканчивается с оговоркой:

«Эта белая бумага не предназначена для является юридической консультацией Вы рекомендуется обратиться за консультацией к адвокату относительно соблюдения HIPAA и других законов, которые могут быть применимы к. вы и ваш бизнес. "

Естественно, то же самое относится и к любым советам, которые вы получаете от случайного парня от Das Interwebs.

+4

Облачные вычисления могут быть совместимыми с HIPAA. Посмотрите на Windows Azure. – Ryan

-1

Отсутствие соответствия HIPAA невозможно из-за конфликта между требованием сетевого шифрования и требованием сетевого мониторинга.

4

Пара комментариев. Изображения, передаваемые через https, не всегда сохраняются в кеше браузера. Тем не менее, вы можете управлять этим, используя headers.

При загрузке изображения вы можете передавать его в память и непосредственно в базу данных, используя вашу любимую технологию шифрования. Когда пользователь запрашивает страницу с URL-адресом для зашифрованного изображения, вы просто вызываете своего контроллера, захватываете зашифрованные данные из базы данных, расшифровываете его в памяти и возвращаете изображение.

[AcceptVerbs(HttpVerbs.Get)] 
    public ActionResult ShowImage(string id) 
    { 
     ImageEntity image = Repository.For<ImageEntity>().Where(a => a.AssetIdd == id).First(); 

     var decryptedImage = Decrypt(image); 

     ImageResult result = new ImageResult(decryptedImage.ImageData, decryptedImage.ContentType); 

     return result; 
    } 

Вы можете использовать его как это:

<img src="/Assets/ShowImage/<%=Model.Id%>" alt="" /> 
9

HIPAA и соответствия PCI кредитной карты в принципе невозможно реализовать, или тривиальное - все это зависит от того, что консультант вы нанимаете, чтобы сказать вам, что смысл «закрытой» сети - это то, что математически закрыто (что я бы утверждал, является высшей формой), или закрыто как за стеной и не связано с внешним миром, но тривиально легко подслушивать с помощью какого-то основного оборудования на тротуаре снаружи?

Когда вы закончите работу с консультантами, тот факт, что много компьютерного оборудования сдано в аренду, тот факт, что компьютеры имеют порты USB и их телефоны с камерами пользователей, как можно хранить зашифрованные данные в любом месте? Если вы храните зашифрованные данные на S3, тогда S3 не хранит ничего, кроме случайных бит мусора. Некоторый ключ, принадлежащий вам + данные garbage =, и это происходит только в вашей системе.

Я видел программное обеспечение, совместимое с HIPAA, которое работает без шифрования на ПК с XP на нем. Учитывая, сколько ноутбуков принадлежит ботнетам и регистраторам нажатий клавиш, все это в основном упражнение в отрицании.

В правилах HIPAA явно указано, что данные не должны быть зашифрованы при его сидении на вашем компьютере пользователя: «Информационное пространство для жилья PHI должно быть защищено от вторжения. Когда информация распространяется по открытым сетям, необходимо использовать некоторую форму шифрования Если закрытые системы/сети используются, существующие средства контроля доступа считаются достаточными, и шифрование является необязательным ».

11

Вопреки некоторым другим ответам облачные вычисления и облачное хранилище данных могут быть совместимыми с HIPAA (обратите внимание, что они были написаны в 2010 году, когда это был гораздо более жесткий вызов).

Есть две основных вещей, которые вы должны рассмотреть для этого:

  1. вы должны получить поставщик облака подписать партнерское соглашение HIPAA Бизнеса (BAA)
  2. вы должны придерживаться близко к Security Rule в разработке вашей системы (шифрование, аудит трасс и т.д.)

Вот некоторые провайдеры облачных которые будут подписывать BAA-х:

  1. Amazon Web Services
  2. Rackspace
  3. Windows Azure (as of July 2012)

(До недавнего времени, Amazon не был готов подписать BAA, так что даже если они имели whitepaper on compliance после их рекомендации просто Ждут» t отрезать его - все, что изменилось, хотя).

Для хранения изображений AWS имеет S3 и Azure имеет blob storage.

Насколько ваши опасения по поводу обслуживания изображений в браузере, на самом деле я не знаю, как строги вы должны быть, но мне кажется, что вы могли бы вставлять изображения в пределах:

  1. Ява Виртуальный Machine (JVM)
  2. флэш
  3. Flex
  4. HTML5

похоже PracticeFusion started off using Flex & Flash and is in the process of gradually transitioning to HTML5.

+1

Это самый актуальный и правильный ответ. У продавцов облаков есть некоторые требования для подписания BAA, которые они могут иметь последствия для затрат (они не публикуют это, поэтому попросите BAA как можно скорее и внимательно прочитайте) – keisar