Compartilhar via


SPPolicyCollection class

Representa uma coleção de objetos SPPolicy .

Inheritance hierarchy

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

Namespace:  Microsoft.SharePoint.Administration
Assembly:  Microsoft.SharePoint (in Microsoft.SharePoint.dll)

Syntax

'Declaração
<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

Comentários

A diretiva para uma zona é uma coleção de objetos de diretiva. Cada usuário ou grupo é atribuído a um objeto de diretiva separada.

Use a propriedade Policies da classe SPWebApplication para retornar a coleção de políticas para um aplicativo da Web ou use o método ZonePolicies da classe SPWebApplication para retornar a coleção de políticas para uma região especificada.

Para criar uma diretiva, execute as seguintes etapas:

  1. Use o método Add para criar um objeto de diretiva dentro da coleção de diretivas para o aplicativo da Web.

  2. Use o método Add da classe SPPolicyRoleCollection para criar um objeto de função de diretiva dentro da coleção de funções de diretiva para o aplicativo da Web.

  3. Use o método Add da classe SPPolicy.SPPolicyRoleBindingCollection para adicionar a nova função de diretiva para a coleção de ligações de diretiva para a nova diretiva.

  4. Chame o método Update da classe SPWebApplication para que as alterações entrem em vigor.

Use um indexador para retornar uma única diretiva da coleção. Por exemplo, se a coleção for atribuída a uma variável chamada myPolicies, use myPolicies[index] em C# ou deindexde myPolicies() no Visual Basic, onde index é o nome ou o número de índice da diretiva na coleção.

Examples

O exemplo a seguir cria uma nova diretiva dentro da coleção de políticas de um aplicativo da Web especificado.

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();

Thread safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Ver também

Referência

SPPolicyCollection members

Microsoft.SharePoint.Administration namespace