Clase SPPolicyCollection

Representa una colección de objetos SPPolicy .

Jerarquía de la herencia

System.Object
  Microsoft.SharePoint.Administration.SPAutoSerializingObject
    Microsoft.SharePoint.Administration.SPPolicyCollection

Espacio de nombres:  Microsoft.SharePoint.Administration
Ensamblado:  Microsoft.SharePoint (en Microsoft.SharePoint.dll)

Sintaxis

'Declaración
<SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel := True)> _
<SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel := True)> _
Public NotInheritable Class SPPolicyCollection _
    Inherits SPAutoSerializingObject _
    Implements IEnumerable
'Uso
Dim instance As SPPolicyCollection
[SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel = true)]
[SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel = true)]
public sealed class SPPolicyCollection : SPAutoSerializingObject, 
    IEnumerable

Comentarios

La directiva de una zona es una colección de objetos de directiva. Cada usuario o grupo se le asigna un objeto de directiva independiente.

Utilice la propiedad Policies de la clase SPWebApplication para devolver la colección de directivas para una aplicación Web o use el método ZonePolicies de la clase SPWebApplication para devolver la colección de directivas de una zona determinada.

Para crear una directiva, realice los pasos siguientes:

  1. Utilice el método Add para crear un objeto de directiva dentro de la colección de las directivas de la aplicación Web.

  2. Utilice el método Add de la clase SPPolicyRoleCollection para crear un objeto de función de directiva dentro de la colección de funciones de directiva para la aplicación Web.

  3. Utilice el método Add de la clase SPPolicy.SPPolicyRoleBindingCollection para agregar la nueva función de directiva a la colección de enlaces de directiva para la nueva directiva.

  4. Llame al método Update de la clase SPWebApplication para que los cambios surtan efecto.

Utilice un indizador para devolver una sola directiva de la colección. Por ejemplo, si la colección se asigna a una variable denominada myPolicies, use myPolicies[index] en C# o myPolicies(index) en Visual Basic, donde index es el nombre o el número de índice de la directiva de la colección.

Ejemplos

En el siguiente ejemplo se crea una nueva directiva dentro de la colección de directivas de una aplicación Web especificada.

Dim uri = New Uri("http://MyServer")
Dim webApplication As SPWebApplication = SPWebApplication.Lookup(uri)
Dim policyCollection As SPPolicyCollection = webApplication.Policies
Dim policyRoles As SPPolicyRoleCollection = webApplication.PolicyRoles

Dim policy As SPPolicy = policyCollection.Add("UserAlias", "MyPolicy")

Dim policyRole As SPPolicyRole = policyRoles.Add("MyPolicyRole", "My description.", SPBasePermissions.ViewPages Or SPBasePermissions.ViewListItems, SPBasePermissions.AddAndCustomizePages Or SPBasePermissions.AddListItems)

policy.PolicyRoleBindings.Add(policyRole)

webApplication.Update()
System.Uri uri = new Uri("http://MyServer");
SPWebApplication webApplication = SPWebApplication.Lookup(uri);
SPPolicyCollection policyCollection = webApplication.Policies;
SPPolicyRoleCollection policyRoles = webApplication.PolicyRoles;

SPPolicy policy = policyCollection.Add("UserAlias","MyPolicy");

SPPolicyRole policyRole = policyRoles.Add("MyPolicyRole", "My description.", SPBasePermissions.ViewPages | SPBasePermissions.ViewListItems, SPBasePermissions.AddAndCustomizePages | SPBasePermissions.AddListItems);

policy.PolicyRoleBindings.Add(policyRole);

webApplication.Update();

Seguridad para subprocesos

Los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para subprocesos. No se garantiza que los miembros de instancias sean seguros para los subprocesos.

Vea también

Referencia

Miembros SPPolicyCollection

Espacio de nombres Microsoft.SharePoint.Administration