Upload
alfonso-candelaria
View
15
Download
6
Embed Size (px)
Citation preview
Seguridad en .NETSeguridad en .NET
Pablo AbbatePablo AbbateMCDBA – MCAD – MCSD - MCTMCDBA – MCAD – MCSD - [email protected]@danysoft.com
Que CubriremosQue Cubriremos
Que aporta .NET Framework a la Que aporta .NET Framework a la seguridadseguridad
Como funciona la seguridad en .NETComo funciona la seguridad en .NET
.NET Framework y la criptografía.NET Framework y la criptografía
Tipos de SeguridadTipos de Seguridad
En .NET se puede hablar de dos En .NET se puede hablar de dos mecanismosmecanismos de seguridad: de seguridad:
Seguridad basada en rolesSeguridad basada en roles
Code Access SecurityCode Access Security
Seguridad basada en RolesSeguridad basada en Roles
En lugar de asignar permisos a un En lugar de asignar permisos a un usuario o grupo se le asigna usuario o grupo se le asigna permisos a una actividad permisos a una actividad desempeñada por un roldesempeñada por un rol
Depende de la identificación de Depende de la identificación de usuariousuario
Una aplicación puede proporcionar Una aplicación puede proporcionar distintos accesos según el rol que la distintos accesos según el rol que la utiliceutilice
¿Cómo funciona?¿Cómo funciona?
Lo importante en esta técnica es Lo importante en esta técnica es determinar si un usuario o determinar si un usuario o individuo está dentro de un rol.individuo está dentro de un rol.
.NET Framework provee .NET Framework provee información del usuario mediante información del usuario mediante una Identity (Identidad)una Identity (Identidad)
E informa de los permisos de E informa de los permisos de accesos mediante un Principalaccesos mediante un Principal
WindowsPrincipalWindowsPrincipal
GenericPrincipalGenericPrincipal
DemoDemoIndentity y Indentity y WindowsPrincipalWindowsPrincipal
Code Access SecurityCode Access Security
El CRL permite que el código solo El CRL permite que el código solo realice operaciones para las que realice operaciones para las que dispone de permisos.dispone de permisos.
Gracias a CAS se puede:Gracias a CAS se puede:Restringir lo que el código haceRestringir lo que el código hace
Restringir que código puede llamar Restringir que código puede llamar a mi códigoa mi código
Identificar el códigoIdentificar el código
Elementos de CASElementos de CAS
CAS utiliza los siguientes CAS utiliza los siguientes elementos:elementos:Permissions (Permisos)Permissions (Permisos)
Permission Sets (Conjuntos de Permission Sets (Conjuntos de Permisos)Permisos)
Code Groups (Grupos de Código)Code Groups (Grupos de Código)
Evidence (Evidencia)Evidence (Evidencia)
Policy (Políticas)Policy (Políticas)
Permissions (Permisos)Permissions (Permisos)
Los permisos representan el Los permisos representan el acceso a un recurso protegido acceso a un recurso protegido o a la realización de una o a la realización de una acción.acción.
..NET Framework ofrece NET Framework ofrece diferentes tipos de permisos diferentes tipos de permisos como por ejemplocomo por ejemplo: :
FileIOPermissionFileIOPermission
UIPermissionUIPermission
SecurityPermissionSecurityPermission
Etc.Etc.
Permission Sets (Conjunto de Permission Sets (Conjunto de Permisos)Permisos)
Es una colección de permisos Es una colección de permisos (Permissions)(Permissions)
Es posible agrupar a Es posible agrupar a FilePermissionFilePermission y y UIPermissionUIPermission en un Permission en un Permission Set denominado Set denominado MisPermisosMisPermisos..
Existen permisos estándares en .NET Existen permisos estándares en .NET Framework:Framework:
FullTrust, Execution, NothingFullTrust, Execution, Nothing
LocalIntranet, Internet, etc.LocalIntranet, Internet, etc.
Code GroupsCode Groups
Los grupos de código son Los grupos de código son agrupaciones lógicas de agrupaciones lógicas de assemblies que comparten una assemblies que comparten una condición de membresía.condición de membresía.
Dicha condición se conoce como Dicha condición se conoce como Evidence (Evidencia)Evidence (Evidencia)
.NET Framework tiene CodeGroups pre-.NET Framework tiene CodeGroups pre-creados:creados:
My_Computer_Zone,My_Computer_Zone,
LocalIntranet_Zone, LocalIntranet_Zone,
Internet_Zone, etcInternet_Zone, etc
Evidences (Evidencias)Evidences (Evidencias)
Las evidencias permiten identificar Las evidencias permiten identificar código.código.
Existen distintos tipos de Existen distintos tipos de evidencias:evidencias:
Strong NameStrong Name
URLURL
HashHash
SiteSite
PublisherPublisher
Zone, etcZone, etc
Policies (Políticas)Policies (Políticas)
Es un conjunto de reglas que CRL emplea Es un conjunto de reglas que CRL emplea una vez ha obtenido el Code Group una vez ha obtenido el Code Group (grupo de código)(grupo de código)
Existen cuatro niveles de políticas:Existen cuatro niveles de políticas:Enterprise
Machine
User
Application Domain
DemoDemoFuncionamiento de CASFuncionamiento de CAS
AgendaAgenda
Que aporta .NET Framework a la Que aporta .NET Framework a la seguridadseguridad
Como funciona la seguridad en .NETComo funciona la seguridad en .NET
.NET Framework y la criptografía.NET Framework y la criptografía
Criptografía – Algoritmos Criptografía – Algoritmos
Existen dos métodos para cifrar Existen dos métodos para cifrar contenido:contenido:
Algoritmos simétricosAlgoritmos simétricos
Algoritmos asimétricosAlgoritmos asimétricos
System.Security.CryptographySystem.Security.Cryptography
Algoritmos Simétricos en .NETAlgoritmos Simétricos en .NET
Los algoritmos simétricos que .NET Los algoritmos simétricos que .NET Framework ofrece son:Framework ofrece son:
DESDES
RC2RC2
RijndaelRijndael
TripleDESTripleDES
Algorítmos Asimétricos Algorítmos Asimétricos en .NETen .NET
Los algoritmos asimétricos que .NET Los algoritmos asimétricos que .NET Framework ofrece son:Framework ofrece son:
Digital Signature Algorithm (DSA)Digital Signature Algorithm (DSA)
RSARSA
DemoDemoCifrar la string de Cifrar la string de conexión en conexión en Web.ConfigWeb.Config
Resumen de la SesiónResumen de la Sesión
Que aporta .NET Framework a la Que aporta .NET Framework a la seguridadseguridad
Como funciona la seguridad en .NETComo funciona la seguridad en .NET
.NET Framework y la criptografía.NET Framework y la criptografía
Cómo contactarnosCómo contactarnos
Por email: [email protected] email: [email protected]
Por teléfono: Danysoft: 902 123 146 Por teléfono: Danysoft: 902 123 146
Nuestra web: www.danysoft.comNuestra web: www.danysoft.com
Para más informaciónPara más información
Departamento Comercial:Departamento Comercial: ([email protected]) ([email protected])
Información: Información: ([email protected])([email protected])
Soporte Técnico: Soporte Técnico: ([email protected])([email protected])
Area de Formación: Area de Formación: ([email protected])([email protected])
Servicios de Consultoría: Servicios de Consultoría: ([email protected])([email protected])
Area Editorial: Area Editorial: ([email protected])([email protected])
Servicio de Atención al Cliente: Servicio de Atención al Cliente: ([email protected])([email protected])
Preguntas y respuestasPreguntas y respuestas