日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。
ロール定義の例
寄稿者
ONTAP RBAC機能は、環境に応じてさまざまな方法で使用できます。以下に一般的なシナリオをいくつか示します。各ケースでは、対応するロール定義の例を示した、特定のセキュリティと管理の目標に重点が置かれています。
|
すべての例では'/api/security/rols’と派生RESTエンドポイントを使用してロールを作成および変更しますわかりやすくするため、curlコマンドはそれぞれ別のJSON入力ファイルを参照しています。 |
SVMボリュームへのアクセスを制限する処理
SVM内でのストレージボリュームの管理を制限したい場合があります。次の例は、最初に作成されたロールを使用してこれを示しており、必要に応じて更新されます。
最初のロールを作成します
トラディショナルロールは、クローニングを除くすべての主要ボリューム管理機能へのアクセスを最初に許可するために作成されます。次に示すロールは、次の特性で定義されています。
-
GET、CREATE、MODIFY、DELETEなどのCRUDボリューム操作をすべて実行できる
-
ボリュームクローンを作成できません
カールの例
curl --location -i --request POST 'https://10.63.56.136/api/security/roles' -u admin:password -k --header 'Accept: */*' --data @JSONinput
JSON の入力例
{
"name": "role1",
"owner": {
"name": "cluster-1",
"uuid": "852d96be-f17c-11ec-9d19-005056bbad91"
},
"privileges": [
{ "path": "volume create", "access": "all" },
{ "path": "volume delete", "access": "all" }
]
}
ロールを更新します
ユーザがボリュームクローンも作成できるように、同じロールを変更できます。
カールの例
curl --location -i --request POST 'https://10.63.56.136/api/security/roles/852d96be-f17c-11ec-9d19-005056bbad91/role1/privileges' -u admin:password -k --header 'Accept: */*' --data @JSONinput
JSON の入力例
{
"path": "volume clone",
"access": "all"
}
データ保護管理
状況によっては、データ保護機能を制限してユーザに提供したい場合があります。以下に示す従来のロールには、次のような特徴があります。
-
Snapshotの作成と削除、およびSnapMirror関係の更新が可能です
-
ボリュームやSVMなどの上位のオブジェクトを作成または変更することはできません
カールの例
curl --location -i --request POST 'https://10.63.56.136/api/security/roles' -u admin:password -k --header 'Accept: */*' --data @JSONinput
JSON の入力例
{
"name": "role1",
"owner": {
"name": "cluster-1",
"uuid": "852d96be-f17c-11ec-9d19-005056bbad91"
},
"privileges": [
{"path": "volume snapshot create", "access": "all"},
{"path": "volume snapshot delete", "access": "all"},
{"path": "volume show", "access": "readonly"},
{"path": "vserver show", "access": "readonly"},
{"path": "snapmirror show", "access": "readonly"},
{"path": "snapmirror update", "access": "all"}
]
}
ONTAP レポートの生成
ONTAP レポートを生成する機能をユーザに提供するRESTロールを作成できます。以下に示すロールには、次の特性が定義されています。
-
容量とパフォーマンス(ボリューム、qtree、LUN、アグリゲート、ノード、 SnapMirror関係の場合)
-
上位のオブジェクト(ボリュームやSVMなど)を作成または変更できない
カールの例
curl --location -i --request POST 'https://10.63.56.136/api/security/roles' -u admin:password -k --header 'Accept: */*' --data @JSONinput
JSON の入力例
{
"name": "rest_role1",
"owner": {
"name": "cluster-1",
"uuid": "852d96be-f17c-11ec-9d19-005056bbad91"
},
"privileges": [
{"path": "/api/storage/volumes", "access": "readonly"},
{"path": "/api/storage/qtrees", "access": "readonly"},
{"path": "/api/storage/luns", "access": "readonly"},
{"path": "/api/storage/aggregates", "access": "readonly"},
{"path": "/api/cluster/nodes", "access": "readonly"},
{"path": "/api/snapmirror/relationships", "access": "readonly"},
{"path": "/api/svm/svms", "access": "readonly"}
]
}