SecurityException クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
セキュリティ エラーが検出されたときにスローされる例外。
public ref class SecurityException : Exception
public ref class SecurityException : SystemException
public class SecurityException : Exception
[System.Serializable]
public class SecurityException : SystemException
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class SecurityException : SystemException
public class SecurityException : SystemException
type SecurityException = class
inherit Exception
[<System.Serializable>]
type SecurityException = class
inherit SystemException
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type SecurityException = class
inherit SystemException
type SecurityException = class
inherit SystemException
Public Class SecurityException
Inherits Exception
Public Class SecurityException
Inherits SystemException
- 継承
- 継承
- 属性
注釈
SecurityException例外は、呼び出し元がリソースへのアクセスに必要なアクセス許可を持っていない場合にスローされます。 次の例では、UI オブジェクトとクリップボードへのアクセスを許可するUIPermission オブジェクトと、レジストリ アクセスを防ぐためのRegistryPermission オブジェクトを含むPermissionSet オブジェクトをインスタンス化します。 PermissionSet.PermitOnly メソッドの呼び出しは、呼び出し元に割り当てられているアクセス許可に関係なく、これらのアクセス許可が適用されることを意味します。 その結果、レジストリ キーを作成しようとすると、 SecurityExceptionがスローされます。
using Microsoft.Win32;
using System;
using System.Security;
using System.Security.Permissions;
public class Example
{
public static void Main()
{
PermissionSet perms = new PermissionSet(null);
perms.AddPermission(new UIPermission(PermissionState.Unrestricted));
perms.AddPermission(new RegistryPermission(PermissionState.None));
perms.PermitOnly();
try {
RegistryKey key = Registry.CurrentUser.CreateSubKey("MyCompany\\Applications");
Console.WriteLine("Registry key: {0}", key.Name);
}
catch (SecurityException e) {
Console.WriteLine("Security Exception:\n\n{0}", e.Message);
}
}
}
// The example displays the following output:
// Security Exception:
//
// Request for the permission of type 'System.Security.Permissions.RegistryPermission,
// mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.
Imports Microsoft.Win32
Imports System.Security
Imports System.Security.Permissions
Module Example
Public Sub Main()
Dim perms As New PermissionSet(CType(Nothing, PermissionSet))
perms.AddPermission(New UIPermission(PermissionState.Unrestricted))
perms.AddPermission(New RegistryPermission(PermissionState.None))
perms.PermitOnly()
Try
Dim key As RegistryKey = Registry.CurrentUser.CreateSubKey("MyCompany\\Applications")
Console.WriteLine("Registry key: {0}", key.Name)
Catch e As SecurityException
Console.WriteLine("Security Exception:\n\n{0}", e.Message)
End Try
End Sub
End Module
' The example displays the following output:
' Security Exception:
'
' Request for the permission of type 'System.Security.Permissions.RegistryPermission,
' mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.
SecurityException は、値が0x8013150Aを持つ HRESULT COR_E_SECURITYを使用します。
SecurityException クラスのインスタンスの初期プロパティ値の一覧については、特定のSecurityExceptionコンストラクターを参照してください。
コンストラクター
| 名前 | 説明 |
|---|---|
| SecurityException() |
既定のプロパティを使用して、 SecurityException クラスの新しいインスタンスを初期化します。 |
| SecurityException(SerializationInfo, StreamingContext) |
シリアル化されたデータを使用して、 SecurityException クラスの新しいインスタンスを初期化します。 |
| SecurityException(String, AssemblyName, PermissionSet, PermissionSet, MethodInfo, SecurityAction, Object, IPermission, Evidence) |
許可セットが不十分な場合に発生する例外に対して、 SecurityException クラスの新しいインスタンスを初期化します。 |
| SecurityException(String, Exception) |
指定したエラー メッセージと、この例外の原因である内部例外への参照を使用して、 SecurityException クラスの新しいインスタンスを初期化します。 |
| SecurityException(String, Object, Object, MethodInfo, Object, IPermission) |
スタックの Deny によって発生する例外に対して、 SecurityException クラスの新しいインスタンスを初期化します。 |
| SecurityException(String, Type, String) |
指定したエラー メッセージ、例外がスローされた原因となったアクセス許可の種類、およびアクセス許可の状態を使用して、 SecurityException クラスの新しいインスタンスを初期化します。 |
| SecurityException(String, Type) |
指定したエラー メッセージと、例外がスローされる原因となったアクセス許可の種類を使用して、 SecurityException クラスの新しいインスタンスを初期化します。 |
| SecurityException(String) |
指定したエラー メッセージを使用して、 SecurityException クラスの新しいインスタンスを初期化します。 |
プロパティ
| 名前 | 説明 |
|---|---|
| Action |
例外の原因となったセキュリティ アクションを取得または設定します。 |
| Data |
例外に関する追加のユーザー定義情報を提供するキーと値のペアのコレクションを取得します。 (継承元 Exception) |
| Demanded |
要求されたセキュリティ アクセス許可、アクセス許可セット、または失敗したアクセス許可セット コレクションを取得または設定します。 |
| DenySetInstance |
要求が失敗する原因となった、拒否されたセキュリティ アクセス許可、アクセス許可セット、またはアクセス許可セット コレクションを取得または設定します。 |
| FailedAssemblyInfo |
失敗したアセンブリに関する情報を取得または設定します。 |
| FirstPermissionThatFailed |
要求に失敗したアクセス許可セットまたはアクセス許可セット コレクションの最初のアクセス許可を取得または設定します。 |
| GrantedSet |
SecurityExceptionの原因となったアセンブリの許可されたアクセス許可セットを取得または設定します。 |
| HelpLink |
この例外に関連付けられているヘルプ ファイルへのリンクを取得または設定します。 (継承元 Exception) |
| HResult |
特定の例外に割り当てられるコード化された数値である HRESULT を取得または設定します。 (継承元 Exception) |
| InnerException |
現在の例外の原因となった Exception インスタンスを取得します。 (継承元 Exception) |
| Message |
現在の例外を説明するメッセージを取得します。 (継承元 Exception) |
| Method |
例外に関連付けられているメソッドに関する情報を取得または設定します。 |
| PermissionState |
例外をスローしたアクセス許可の状態を取得または設定します。 |
| PermissionType |
失敗したアクセス許可の種類を取得または設定します。 |
| PermitOnlySetInstance |
セキュリティ チェックが失敗する原因となった許可のみのスタック フレームの一部であるアクセス許可、アクセス許可セット、またはアクセス許可セット コレクションを取得または設定します。 |
| RefusedSet |
SecurityExceptionの原因となったアセンブリの拒否されたアクセス許可セットを取得または設定します。 |
| Source |
エラーの原因となるアプリケーションまたはオブジェクトの名前を取得または設定します。 (継承元 Exception) |
| StackTrace |
呼び出し履歴のイミディエイト フレームの文字列表現を取得します。 (継承元 Exception) |
| TargetSite |
現在の例外をスローするメソッドを取得します。 (継承元 Exception) |
| Url |
例外の原因となったアセンブリの URL を取得または設定します。 |
| Zone |
例外の原因となったアセンブリのゾーンを取得または設定します。 |
メソッド
| 名前 | 説明 |
|---|---|
| Equals(Object) |
指定したオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
| GetBaseException() |
派生クラスでオーバーライドされた場合、1 つ以上の後続の例外の根本原因である Exception を返します。 (継承元 Exception) |
| GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
| GetObjectData(SerializationInfo, StreamingContext) |
SecurityExceptionに関する情報を含むSerializationInfoを設定します。 |
| GetType() |
現在のインスタンスのランタイム型を取得します。 (継承元 Exception) |
| MemberwiseClone() |
現在の Objectの簡易コピーを作成します。 (継承元 Object) |
| ToString() |
現在の SecurityExceptionの表現を返します。 |
イベント
| 名前 | 説明 |
|---|---|
| SerializeObjectState |
例外に関するシリアル化されたデータを含む例外状態オブジェクトを作成するために例外がシリアル化されるときに発生します。 (継承元 Exception) |