Los patrones de seguridad de alto nivel identificados en esta tarea son los siguientes. Los elementos
del arquitecto de sistema a los que afecten los requisitos del sistema (la seguridad afecta tanto a elemento de
software como de hardware) se pueden ahora asociar con uno o más de estos patrones (preferiblemente documentados en el
Artefacto: Documento de arquitectura de software) de modo que puedan
ser ajustados durante las actividades del período de diseño.
Identidad y autenticación
Un usuario final posee un identificador (nombre de usuario) y/o un conjunto de identificadores (títulos, roles, alias)
y pruebas (contraseña) que guarda en algún sitio, quizás en un sistema de cliente como un portátil o PDA. Para
autenticar, el usuario presenta el identificador y la prueba a una aplicación cuando se lo pida para identificarse él
mismo ante la aplicación. Si la aplicación valida el identificador y la prueba, el usuario habrá sido "autenticado"
correctamente y la identidad será ahora una "identidad autenticada". Cuando una aplicación implementa la lógica
empresarial y cumple sus propias políticas de seguridad, necesita guardar sus datos/metadatos en un repositorio de
datos/metadatos de identidad (sistema de archivos, base de datos, etc.). Con la llegada de Internet, el usuario final
ha dejado de tener únicamente código de cliente de aplicación en su propio sistema sino que a menudo accede a
aplicaciones a través de un navegador, y la red localiza la aplicación a través de un URI (identificador de recurso
universal) suministrado por el usuario final.
Inicio de sesión único
Cuando un usuario tiene varias aplicaciones con distintos identificadores y pruebas, a veces resulta difícil
gestionar los datos y metadatos de identidad para tomar las decisiones apropiadas. El inicio de sesión único (SSO) es
un término aplicado a diversas técnicas (humanas y automatizadas) que reducen esta complejidad.
Las soluciones para SSO pueden estar basadas en cliente o en servidor/servicio y pueden estar acopladas estrecha o no
estrechamente con las aplicaciones. El inicio de sesión único basado en web se refiere a soluciones basadas en
navegador que normalmente incluyen cookies. En el inicio de sesión basado en cliente estrechamente acoplado, es
responsabilidad del usuario registrar y sincronizar diversos ID/contraseñas que se mantienen en varios repositorios de
aplicación. Algunos inicios de sesión únicos dependen de la "correlación de identidades", otros suministran
"propagación de identidad" o "afirmaciones de identidad". Las nuevas iniciativas en SSO federado permiten que un
usuario se registre con otro proveedor de servicios de identidad, quien gestiona la información del usuario y le ofrece
una alternativa no estrechamente acoplada. En las empresas, un SSO de fondo puede incluir a la empresa que actúa como
ISP. El SSO de fondo incluye un repositorio común para todas las aplicaciones, y cada aplicación/servidor se configura
para que no use un repositorio local. El SSO de fondo también puede mantener varios repositorios para información del
usuario y utilizar un proceso de gestión para forzar la sincronización de los datos de identidad en varios
repositorios. Cuando están implicadas varias identidades a menudo existen requisitos para aislar las aplicaciones en
dominios, que a menudo se correlacionan con dominios administrativos.
Identidades digitales
Como las personas y las empresas se han vuelto más dependientes de la tecnología informática, se ha producido una
proliferación de identidad creada con información relacionada. Teniendo en mente la sustracción de identidad, las
direcciones están legislando requisitos para las empresas sobre protección de la información personal custodiada por
ellas.
Soluciones de identidad digital: hay dos estrategias fundamentales para gestionar las identidades digitales. Una está
"centrada en el usuario", y se basa en un usuario que participa activamente en la protección de la identidad,
"registrándose" con proveedores de terceros y otorgando permisos de acceso a sus datos y metadatos de identidad a los
proveedores en los que confían. La Liberty Alliance es un consorcio que ha estado liderando esta estrategia, pero
también existe un esfuerzo de origen abierto dirigido por la iniciativa Higgins en asociación con The Apache
Foundation.
El segundo es un modelo centrado en la empresa en el que una empresa proporciona servicios de gestión de identidad a
sus clientes, socios y empleados. La tecnología subyacente es la misma para cada enfoque, pero la dirección y la
responsabilidad al ofrecer gestión de identidad digital es diferente. Las empresas tratan volúmenes de información
distintos a los tratados por los individuos y, por lo tanto, tienen distintos requisitos de ajuste. Las empresas
también necesitan tener sus propios sistemas para gestionar el acceso de usuarios basado en roles de empresa y cambiar
las condiciones empresariales (por ejemplo, usted siempre será "Yo mismo", pero puede que no siempre trabaje para la
empresa xyz).
Autorización
Como las personas y las empresas se han vuelto más dependientes de la tecnología informática, las reglas sobre quién
puede acceder a los recursos se han codificado. Al diseñar aplicaciones, la decisión de quién puede acceder a qué tipo
de información, dependerá de la información de contexto de la empresa o puede externalizarse a la aplicación y ser
controlada por un conjunto de middleware independiente. La mayoría de productos y sistemas de software han implementado
un conjunto de mecanismos de "control de acceso" pero cada uno normalmente mantiene su propia correlación de nombres de
usuario autorizados con los nombres de recursos, y esto se denomina "listas de control de acceso".
Protección de mensajes
Existen dos tipos básicos de protección; protección de integridad (prueba que el mensaje no se ha cambiado durante el
viaje) y de confidencialidad (aplicación de criptografía para garantizar que sólo los destinatarios autorizados pueden
ver el mensaje). Cuando se envían mensajes a través de un protocolo cada mensaje se puede firmar o cifrar digitalmente
o el protocolo de red puede firmar/cifrar todo el tráfico entre los dos puntos de entrada. Cuando el protocolo
proporciona la protección, a menudo se dice que es de "punto a punto" (por ejemplo, punto final de red a punto final de
red).
|