PolicyStatement 构造函数

定义

初始化 PolicyStatement 类的新实例。

重载

PolicyStatement(PermissionSet)
已过时.

使用指定的 PolicyStatement 初始化 PermissionSet 类的新实例。

PolicyStatement(PermissionSet, PolicyStatementAttribute)
已过时.

使用指定的 PolicyStatement 和特性初始化 PermissionSet 类的新实例。

PolicyStatement(PermissionSet)

Source:
PolicyStatement.cs
Source:
PolicyStatement.cs
Source:
PolicyStatement.cs
Source:
PolicyStatement.cs

注意

Code Access Security is not supported or honored by the runtime.

使用指定的 PolicyStatement 初始化 PermissionSet 类的新实例。

public:
 PolicyStatement(System::Security::PermissionSet ^ permSet);
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public PolicyStatement (System.Security.PermissionSet permSet);
public PolicyStatement (System.Security.PermissionSet permSet);
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
new System.Security.Policy.PolicyStatement : System.Security.PermissionSet -> System.Security.Policy.PolicyStatement
new System.Security.Policy.PolicyStatement : System.Security.PermissionSet -> System.Security.Policy.PolicyStatement
Public Sub New (permSet As PermissionSet)

参数

permSet
PermissionSet

用于初始化新实例的 PermissionSet

属性

示例

下面的代码示例演示如何使用 PolicyStatement 构造函数。 此代码示例是为 PolicyStatement 类提供的一个更大示例的一部分。

PermissionSet^ permissions = gcnew PermissionSet(
   PermissionState::Unrestricted );
permissions->AddPermission( gcnew SecurityPermission(
   SecurityPermissionFlag::Execution ) );
permissions->AddPermission( gcnew ZoneIdentityPermission(
   SecurityZone::MyComputer ) );

// Create a policy statement based on the newly created permission
// set.
PolicyStatement^ policyStatement = gcnew PolicyStatement(
   permissions );
PermissionSet permissions 
    = new PermissionSet(PermissionState.Unrestricted);
permissions.AddPermission(
    new SecurityPermission(SecurityPermissionFlag.Execution));
permissions.AddPermission(
    new ZoneIdentityPermission(SecurityZone.MyComputer));

// Create a policy statement based on the newly created permission
// set.
PolicyStatement policyStatement = new PolicyStatement(permissions);
Dim permissions As New PermissionSet(PermissionState.Unrestricted)

permissions.AddPermission( _
    New SecurityPermission(SecurityPermissionFlag.Execution))
permissions.AddPermission( _
    New ZoneIdentityPermission(SecurityZone.MyComputer))

' Instantiate a new policy statement with specified permission set.
Dim policyStatement As New PolicyStatement(permissions)

注解

注意

代码访问安全性 (CAS) 已在所有版本的 .NET Framework 和 .NET 中弃用。 如果使用与 CAS 相关的 API,最新版本的 .NET 不会遵循 CAS 注释,并会生成错误。 开发人员应寻求用于完成安全任务的替代方法。

适用于

PolicyStatement(PermissionSet, PolicyStatementAttribute)

Source:
PolicyStatement.cs
Source:
PolicyStatement.cs
Source:
PolicyStatement.cs
Source:
PolicyStatement.cs

注意

Code Access Security is not supported or honored by the runtime.

使用指定的 PolicyStatement 和特性初始化 PermissionSet 类的新实例。

public:
 PolicyStatement(System::Security::PermissionSet ^ permSet, System::Security::Policy::PolicyStatementAttribute attributes);
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public PolicyStatement (System.Security.PermissionSet permSet, System.Security.Policy.PolicyStatementAttribute attributes);
public PolicyStatement (System.Security.PermissionSet permSet, System.Security.Policy.PolicyStatementAttribute attributes);
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
new System.Security.Policy.PolicyStatement : System.Security.PermissionSet * System.Security.Policy.PolicyStatementAttribute -> System.Security.Policy.PolicyStatement
new System.Security.Policy.PolicyStatement : System.Security.PermissionSet * System.Security.Policy.PolicyStatementAttribute -> System.Security.Policy.PolicyStatement
Public Sub New (permSet As PermissionSet, attributes As PolicyStatementAttribute)

参数

permSet
PermissionSet

用于初始化新实例的 PermissionSet

attributes
PolicyStatementAttribute

PolicyStatementAttribute 值的按位组合。

属性

示例

下面的代码示例演示如何使用 PolicyStatement 构造函数。 此代码示例是为 PolicyStatement 类提供的一个更大示例的一部分。

PermissionSet^ permissions = gcnew PermissionSet(
   PermissionState::Unrestricted );
permissions->AddPermission( gcnew SecurityPermission(
   SecurityPermissionFlag::Execution ) );
permissions->AddPermission( gcnew ZoneIdentityPermission(
   SecurityZone::MyComputer ) );

PolicyStatementAttribute levelFinalAttribute =
   PolicyStatementAttribute::LevelFinal;

// Create a new policy statement with the specified permission set.
// The LevelFinal attribute is set to prevent the evaluation of lower
// policy levels in a resolve operation.
PolicyStatement^ policyStatement = gcnew PolicyStatement(
   permissions,levelFinalAttribute );
PermissionSet permissions =
    new PermissionSet(PermissionState.Unrestricted);
permissions.AddPermission(
    new SecurityPermission(SecurityPermissionFlag.Execution));
permissions.AddPermission(
    new ZoneIdentityPermission(SecurityZone.MyComputer));

PolicyStatementAttribute levelFinalAttribute = 
    PolicyStatementAttribute.LevelFinal;

// Create a new policy statement with the specified permission set.
// The LevelFinal attribute is set to prevent the evaluation of lower
// policy levels in a resolve operation.
PolicyStatement policyStatement =
    new PolicyStatement(permissions, levelFinalAttribute);
Dim permissions As New PermissionSet(PermissionState.Unrestricted)
permissions.AddPermission( _
    New SecurityPermission(SecurityPermissionFlag.Execution))
permissions.AddPermission( _
    New ZoneIdentityPermission(SecurityZone.MyComputer))

Dim levelFinalAttribute As PolicyStatementAttribute
levelFinalAttribute = PolicyStatementAttribute.LevelFinal

' Instantiate a new policy statement with specified permission set
' and the LevelFinal attibute set allowing lower policy levels to be
' avoided in a resolve.
Dim policyStatement As _
    New PolicyStatement(permissions, levelFinalAttribute)

注解

注意

代码访问安全性 (CAS) 已在所有版本的 .NET Framework 和 .NET 中弃用。 如果使用与 CAS 相关的 API,最新版本的 .NET 不会遵循 CAS 注释,并会生成错误。 开发人员应寻求用于完成安全任务的替代方法。

适用于