Retroceder   Foros del Web > Programación para sitios web > .NET

Respuesta
 
Herramientas Desplegado
Antiguo 21-oct-2005, 06:11   #1 (permalink)
nibs ha deshabilitado el karma
 
Fecha de Ingreso: octubre-2005
Mensajes: 1
permisos en .Net

Hola a todos

necesito ayuda con una cuestión de permisos.
Tengo un objeto creado con c# en una página web referenciado con la etiqueta <object id="myObject" class="...">
Este objeto necesita permisos de escritura/lectura del disco duro, y lógicamente no los tiene.

PAra dárselos, hago que el usuario se baje un instalador msi cuyo código fuente es:
PolicyLevel machinePolicyLevel = null;
System.Collections.IEnumerator ph = SecurityManager.PolicyHierarchy();
while( ph.MoveNext() )
{
PolicyLevel pl = (PolicyLevel)ph.Current;
if( pl.Label == "Machine" )
{
machinePolicyLevel = pl;
break;
}
}
if( machinePolicyLevel == null ) return;
// 1.- Creamos el conjunto de permisos que queremos
PermissionSet permSet = new NamedPermissionSet("FullTrust");
// 2.- Creamos la condición de pertenencia al grupo que va a tener esos permisos
IMembershipCondition condition = new SiteMembershipCondition (
"csharp.local");
// 3.- Creamos un objeto de política de seguridad que contenga el conjunto
// de permisos que deseamos
PolicyStatement policy = new PolicyStatement(permSet);
// 4.- Creamos el grupo de permisos del configurator aplicado a la politica
CodeGroup group = new UnionCodeGroup (condition, policy);

group.Description = "Set of permisions for Revelaonline in Windows Media Center";
group.Name = NAME;

// 5.- Añadimos el grupo de permisos al gestor de permisos del host
IList children = machinePolicyLevel.RootCodeGroup.Children;
bool found = false;
foreach (CodeGroup child in children)
{
if (child.Name.CompareTo(NAME) == 0)
{
found = true;
break;
}
}
if (!found)
{
machinePolicyLevel.RootCodeGroup.AddChild(group);
SecurityManager.SavePolicy();
}

Con esto funciona sin problemas, si le pongo en vez de "FullTrust" "Everything", no funciona. Lo que quería era reducir el conjunto de permisos dados a solo IO lectura/escritura.
Alguna idea?

muchas gracias
nibs está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 16:41.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93