Можете ли вы создать HIPAA-совместимое веб-приложение Amazon S3? - PullRequest
19 голосов
/ 17 апреля 2010

У меня возникают некоторые вопросы при разработке приложения S3 с использованием ASP.NET MVC и при попытках обеспечения совместимости с HIPAA.

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

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

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

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

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

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

Ответы [ 5 ]

17 голосов
/ 19 апреля 2010

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

Однако Amazon опубликовал технический документ по этой самой теме: Создание HIPAA-совместимых приложений для медицинских данных с AWS . Это стоит прочитать и, похоже, решить основные проблемы. Это заканчивается отказом от ответственности:

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

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

11 голосов
/ 11 сентября 2013

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

Для этого следует учесть две основные вещи:

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

Вот некоторые облачные провайдеры, которые подпишут BAA:

  1. Amazon Web Services
  2. Rackspace
  3. Windows Azure ( по состоянию на июль 2012 года )

(До недавнего времени Amazon не желал подписывать BAA, поэтому, несмотря на то, что у них был официальный документ о соответствии , следуя их рекомендациям, он просто не сократился - все изменилось, хотя ).

Для хранения изображений AWS имеет S3 , а Azure имеет хранилище BLOB-объектов .

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

  1. виртуальная машина Java (JVM)
  2. Flash
  3. Flex

Похоже, что PracticeFusion начал с использования Flex & Flash и находится в процессе постепенного перехода на HTML5 .

9 голосов
/ 16 ноября 2010

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

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

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

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

4 голосов
/ 12 июля 2010

Пара комментариев. Изображения, передаваемые через 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="" />
0 голосов
/ 19 апреля 2010

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

...