browser - servidores - certificaciones de seguridad aws
¿Se puede crear una aplicación web de Amazon S3 compatible con HIPAA? (5)
A primera vista, parece poco probable que la computación en la nube pueda ser compatible con HIPAA. ¿Seguramente es imposible cumplir la Regla de seguridad cuando la instancia está alojada en el hardware de otra persona, atendida por los administradores de sistemas de otra persona?
Sin embargo, Amazon ha publicado un informe sobre este tema: Creación de aplicaciones de datos médicos compatibles con HIPAA con AWS . Vale la pena leerlo, y parece abordar las principales preocupaciones. Termina con un descargo de responsabilidad:
"Este documento técnico no pretende constituir un asesoramiento legal. Se recomienda que consulte con un abogado sobre el cumplimiento de HIPAA y otras leyes que puedan ser aplicables a usted y a su negocio".
Naturalmente, lo mismo se aplica a cualquier consejo que reciba de algún tipo aleatorio de Das Interwebs.
Me enfrento a algunas preguntas al intentar diseñar una aplicación S3 utilizando ASP.NET MVC y tratar de cumplir con la HIPAA.
Mi plan inicial era requerir una conexión SSL a mi servidor web, cifrar las imágenes en mi servidor y luego enviarlas a s3 usando mis claves privadas.
Aquí están mis preocupaciones obvias:
- No puede almacenar imágenes sin cifrar en ningún caché de archivo temporal cuando el cliente ve imágenes dentro del navegador.
- Incluso si configuro un ashx para manejar genéricamente la imagen en la memoria, ¿no podría esto almacenarse en el caché?
Decir que las imágenes se cifrarán porque se conectará a mi servidor a través de https aún no garantiza que todos los navegadores no guarden datos.
No es posible siquiera considerar la "Cadena de consulta" con la opción de caducidad ya que los datos se cifrarán antes de almacenarse en el disco en s3, y se descifrarán nuevamente en la memoria de mi servidor.
Creo que mi única opción sería escribir / comprar algún tipo de componente ActiveX que no exponga la imagen como una fuente de imagen html simple o escribir mi aplicación como una aplicación WinForm del lado del cliente.
No. El cumplimiento con HIPAA es imposible debido al conflicto entre el requisito de cifrado de la red y el requisito de monitoreo de la red.
Un par de comentarios. Las imágenes servidas a través de https no siempre se almacenan en el caché del navegador. Aun así, puedes controlar esto usando headers .
Cuando carga una imagen, puede transmitirla a la memoria y directamente a una base de datos utilizando su técnica de encriptación favorita. Cuando el usuario solicita una página con una URL para una imagen encriptada, simplemente llama a su controlador, toma los datos encriptados de la base de datos, los desencripta en la memoria y devuelve la imagen.
[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;
}
Lo usas así:
<img src="/Assets/ShowImage/<%=Model.Id%>" alt="" />
Contrariamente a algunas de las otras respuestas, la computación en la nube y el almacenamiento de datos en la nube pueden, de hecho, ser compatibles con HIPAA (tenga en cuenta que fueron escritas en 2010, cuando fue una llamada mucho más difícil).
Hay dos cosas principales que debe considerar para esto:
- debe conseguir que el proveedor de la nube firme un Acuerdo de Asociado de Negocios de HIPAA (BAA)
- debe cumplir con la Regla de seguridad en el desarrollo de su sistema (cifrado, pistas de auditoría, etc.)
Aquí hay algunos proveedores de nube que firmarán BAA''s:
(Hasta hace poco, Amazon no estaba dispuesta a firmar un BAA, así que a pesar de que tenían un documento técnico sobre el cumplimiento , seguir sus directrices simplemente no lo eliminó, aunque todo eso ha cambiado).
Para el almacenamiento de imágenes, AWS tiene S3 y Azure tiene almacenamiento de blobs .
En cuanto a sus inquietudes sobre la publicación de las imágenes en el navegador, en realidad no estoy seguro de lo estricto que debe ser, pero parece que podría incrustar sus imágenes en:
- una máquina virtual de Java (JVM)
- Destello
- Flexionar
- HTML5
Parece que PracticeFusion comenzó a usar Flex & Flash y está en proceso de pasar gradualmente a HTML5 .
La HIPAA y el cumplimiento de la PCI de la tarjeta de crédito son básicamente imposibles de implementar o triviales, todo depende de qué consultor contrate para decirle qué significa una red "cerrada": es matemáticamente cerrado (lo que yo diría es el forma más alta), o ¿está cerrado como detrás de una pared y no está conectado con el mundo exterior, pero es trivialmente fácil de escuchar con algún equipo básico en la acera exterior?
Cuando termina con los consultores, el hecho de que se arriende gran parte del equipo informático, el hecho de que las computadoras tengan puertos USB y los teléfonos con cámara de sus usuarios, ¿cómo podría ser un problema almacenar datos cifrados en cualquier lugar? Si almacena datos encriptados en S3, entonces S3 no está almacenando NADA más que bits aleatorios de basura. Alguna clave de propiedad tuya + la basura = datos y eso solo sucede en tu sistema.
He visto un software ''compatible con HIPAA'' que se ejecuta sin cifrado en una PC con XP. Teniendo en cuenta cuántas computadoras portátiles son propiedad de botnets y pulsadores de pulsaciones de teclas, todo esto es básicamente un ejercicio de denegación.
Las reglas de HIPAA establecen explícitamente que los datos no tienen que estar cifrados cuando se encuentran en la computadora de sus usuarios: "Los sistemas de información que contienen PHI deben estar protegidos contra intrusiones. Cuando la información fluye a través de redes abiertas, se debe utilizar algún tipo de cifrado. Si los sistemas cerrados / se utilizan redes, los controles de acceso existentes se consideran suficientes y el cifrado es opcional ".