PrincipalPermission.Intersect(IPermission) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Creates and returns a permission that is the intersection of the current permission and the specified permission.
public:
virtual System::Security::IPermission ^ Intersect(System::Security::IPermission ^ target);
public System.Security.IPermission Intersect (System.Security.IPermission target);
abstract member Intersect : System.Security.IPermission -> System.Security.IPermission
override this.Intersect : System.Security.IPermission -> System.Security.IPermission
Public Function Intersect (target As IPermission) As IPermission
Parameters
- target
- IPermission
A permission to intersect with the current permission. It must be of the same type as the current permission.
Returns
A new permission that represents the intersection of the current permission and the specified permission. This new permission will be null
if the intersection is empty.
Implements
Exceptions
The target
parameter is not null
and is not an instance of the same class as the current permission.
Remarks
Because two users never intersect, this method is not useful for PrincipalPermission. For example,
PrincipalPermission^ ppBob = gcnew PrincipalPermission("Bob", "Administrator");
PrincipalPermission^ ppLouise = gcnew PrincipalPermission("Louise", "Administrator");
IPermission^ pp1 = ppBob->Intersect(ppLouise);
PrincipalPermission ppBob = new PrincipalPermission("Bob", "Administrator");
PrincipalPermission ppLouise = new PrincipalPermission("Louise", "Administrator");
IPermission pp1 = ppBob.Intersect(ppLouise);
Dim ppBob As New PrincipalPermission("Bob", "Administrator")
Dim ppLouise As New PrincipalPermission("Louise", "Administrator")
Dim pp1 As IPermission = ppBob.Intersect(ppLouise)
is equivalent to
IPermission^ pp1 = gcnew PrincipalPermission("", "Administrator");
IPermission pp1 = new PrincipalPermission("", "Administrator");
Dim pp1 As IPermission = New PrincipalPermission("", "Administrator")
because no identity can simultaneously represent both Bob and Louise. In effect, pp1.Demand()
only succeeds if an unauthenticated principal (with name equal to the empty string ("")) is allowed to act in the Administrator role.