vacmSecurityToGroupTable テーブルには、グループ情報が格納されています。ユーザーグループにはグループ名が付けられます。このグループ名は、アクセス権の管理に使用されます。グループには、SecurityModel と SecurityName の値のペアが含まれます。その結果、ペアは最大 1 つのグループにしかマッピングできません。vacmSecurityToGroupTable テーブルは、以下の項目で索引付けられています。
securityModel
securityName
vacmSecurityToGroupTable テーブルの各行には、次の情報が含まれます。
SNMPv3 セキュリティーモデル。この例では USM。USM の詳細については、「USM による認証とメッセージプライバシ」を参照。com2sec トークンを利用すると、SNMPv1 および v2c のセキュリティーモデルを使用できるようになる。com2sec トークンの詳細については、snmpd.conf(4) のマニュアルページを参照
USM では、vacmSecurityName と userName は一致する。セキュリティーモデルとは無関係のフォーマットでユーザーを表現する。com2sec トークンを利用すると、SNMPv1 および v2c のセキュリティー名を使用できるようになる。com2sec トークンの詳細については、snmpd.conf(4) のマニュアルページを参照
読み取り可能な文字列。このエントリに関連付けられているグループを示す
メッセージの認証と復号化に成功すると、SecurityName が msgSecurityModel 指示子によって取得されます。システム管理エージェントは、vacmSecurityToGroupTable テーブル内で、この msgSecurityModel 指示子および関連する SecurityName を検索します。vacmSecurityToGroupTable 内で msgSecurityModel 指示子および関連する SecurityName が見つからない場合、アクセスは拒否されます。この場合、戻り値は noSuchGroupName になります。
エントリが見つかった場合、対応する groupName が返されます。図 4–2 のように、アクセスチェックが続行されます。
例 4–2 に、vacmsecurityToGroupTable 内の一般的なエントリを示します。
以前に作成したユーザー user2 および user5 のグループを作成します。この例では、ユーザーは、grpnam1 という新しく作成されたグループに配置されます。次のいずれかの方法を選択します。
主要構成ファイル /etc/sma/snmp/snmpd.conf に次の行を追加します。
group grpnam1 usm user2 group grpnam1 usm user5 |
主要構成ファイル /etc/sma/snmp/snmpd.conf に追加してグループを作成した場合、 vacmSecurityToGroupTable テーブル内に次のエントリが作成されます。
SNMP-VIEW-BASED-ACM-MIB::vacmGroupName.3."user2" = STRING: grpnam1 SNMP-VIEW-BASED-ACM-MIB::vacmGroupName.3."user5" = STRING: grpnam1 SNMP-VIEW-BASED-ACM-MIB::vacmSecurityToGroupStorageType.3."user2" = INTEGER: permanent(4) SNMP-VIEW-BASED-ACM-MIB::vacmSecurityToGroupStorageType.3."user5" = INTEGER: permanent(4) SNMP-VIEW-BASED-ACM-MIB::vacmSecurityToGroupStatus.3."user2" = INTEGER: active(1) SNMP-VIEW-BASED-ACM-MIB::vacmSecurityToGroupStatus.3."user5" = INTEGER: active(1) |
リブートしてもエントリは削除されません。この VACM テーブルのエントリを削除するには、snmpvacm deleteGroup コマンドを使用します。この方法は、ストレージの型が nonVolatile の場合に使用できます。これ以外のストレージの型を持つ VACM テーブルエントリの場合は、主要構成ファイル /etc/sma/snmp/snmpd.conf からテーブルエントリを手動で削除する必要があります。主要構成ファイル /etc/sma/snmp/snmpd.conf を編集することで作成されたグループの場合、vacmSecurityToGroupTable テーブルのエントリを削除するには、主要構成ファイル /etc/sma/snmp/snmpd.conf を編集する必要があります。
snmpvacm コマンドを使用します。user2 の場合、次のように snmpvacm コマンドを使ってグループを作成できます。
# snmpvacm -v3 -u myuser -a MD5 -A my_password -l authNoPriv localhost createSec2Group 3 user2 grpnam1 |
user5 の場合、次のように snmpvacm コマンドを使ってグループを作成できます。
# snmpvacm -v3 -u myuser -a MD5 -A my_password -l authNoPriv localhost createSec2Group 3 user5 grpnam1 |
ユーザー myuser のアクセスレベルは rwuser です。したがって、この例では、コンテキストに適していれば、グループエントリは myuser として作成されます。ユーザー user2 と user5 は、VACM テーブルを更新する権限を持ちません。