1. はじめに
インターネット管理フレームワークを記述するアーキテクチャ[RFC3411]は、SNMPエンジンが以下で構成されることを説明しています:
- ディスパッチャ(Dispatcher)
- メッセージ処理サブシステム(Message Processing Subsystem)
- セキュリティサブシステム(Security Subsystem)
- アクセス制御サブシステム(Access Control Subsystem)
アプリケーションはこれらのサブシステムのサービスを利用します。
SNMPアーキテクチャとその用語を理解することは、この文書で説明するビューベースアクセス制御モデルがアーキテクチャのどこに位置し、アーキテクチャ内の他のサブシステムとどのように相互作用するかを理解するために重要です。読者は、[RFC3411]で定義されているSNMPアーキテクチャの説明と用語を読んで理解していることが期待されます。
SNMPエンジンのアクセス制御サブシステムは、特定のオブジェクト(インスタンス)に対する特定のタイプのアクセス(読み取り、書き込み、通知)が許可されているかどうかをチェックする責任があります。
この文書の目的は、アクセス制御サブシステムの特定のモデル、すなわちビューベースアクセス制御モデルを定義することです。これが唯一のアクセス制御モデルであるとは限りません。
この文書のキーワード「MUST」、「MUST NOT」、「REQUIRED」、「SHALL」、「SHALL NOT」、「SHOULD」、「SHOULD NOT」、「RECOMMENDED」、「MAY」、「OPTIONAL」は、BCP 14、RFC 2119に記載されているように解釈されるものとします。
1.2. アクセス制御
アクセス制御は、SNMPエンティティからSNMP検索または変更要求メッセージを処理する際に、SNMPエンティティで(暗黙的または明示的に)発生します。たとえば、コマンドレスポンダアプリケーションは、コマンドジェネレータアプリケーションから受信した要求を処理する際にアクセス制御を適用します。これらの要求には、[RFC3411]で定義されている読み取りクラスおよび書き込みクラスのPDUが含まれます。
SNMP通知メッセージが生成される(通知発信者アプリケーションによって)際にも、SNMPエンティティでアクセス制御が発生します。これらの通知メッセージには、[RFC3411]で定義されている通知クラスのPDUが含まれます。
ビューベースアクセス制御モデルは、アプリケーション(コマンドレスポンダや通知発信者アプリケーションなど)がアクセス権をチェックするために使用できる一連のサービスを定義します。適切なサービス呼び出しを行ってアクセスチェックを実行することは、アプリケーションの責任です。
1.3. ローカル設定データストア
この文書で説明されているモデルを実装するには、SNMPエンティティはアクセス権とポリシーに関する情報を保持する必要があります。この情報は、SNMPエンジンのローカル設定データストア(LCD)の一部です。LCDの定義については、[RFC3411]を参照してください。
SNMPエンティティのLCDをリモートで設定できるようにするには、LCDの一部を管理オブジェクトとしてアクセス可能にする必要があります。この文書には、これらの管理オブジェクトタイプを定義するMIBモジュール、すなわちビューベースアクセス制御モデル設定MIBが含まれています。