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:
Use o método Add para criar um objeto de diretiva dentro da coleção de diretivas para o aplicativo da Web.
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.
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.
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.