テストと検証
このページでは、構成された動的グループのメンバーであるVMインスタンスから直接実行できるテストの一部について説明します。読取りおよび書込みアクセスをテストする様々なコマンドを使用して、RCLONEおよびOCIFSも同様にテストする必要があります。
RCLONEテスト
この作業の一環として、バケットの保持ルールは一定期間削除されるため、rcloneのバケットへの読取りおよび書込み機能を完全にテストできます。
テストが完了すると、ルールを再確立してロックできます。テストは、アーカイブ・バケットを保持しているコンパートメント内のすべてのバケットに対するバケット読取り権限およびオブジェクト読取り権限を持つ動的グループから開始します。
OS prompt> rclone config show [OCI-IP]
type = oracleobjectstorage
provider = instance_principal_auth
namespace = <tenancy-namespace>
compartment = ocid1.compartment.oc1..xxx
region = us-ashburn-1
OCI-IP
が必要です。ファイルをバケットに同期(コピーまたは更新)するために、狭い権限セットにはバケットの作成や削除が含まれないため、バケットはOCIコンソールを使用して事前に作成されています。次のブロックは、同期操作に続いてバケット・リストを示しています。OS prompt> rclone sync rclone-test.txt OCI-IP:rclone-testing
OS prompt> rclone ls OCI-IP:rclone-testing
33 rclone-test.txt
ファイルの削除もテストできます。フィルタリングなど、使用可能なすべてのオプションについては、RCLONEのドキュメントに従ってください。
OS prompt> rclone delete OCI-IP:rclone-testing/rclone-test.txt
ポリシー変更
OS prompt> rclone purge OCI-IP:rclone-testing
2024/08/29 14:36:15 ERROR : : Failed to rmdir: Error returned by ObjectStorage Service. Http Status Code: 404. Error Code: BucketNotFound. Opc request id: iad-1:xxx. Message: Either the bucket named 'rclone-testing' does not exist in the namespace '<namespace>' or you are not authorized to access it
Operation Name: DeleteBucket
前述のように、動的グループに定義されているポリシー・ステートメントは、必要に応じて変更できます。たとえば、バケットの作成や削除を許可するために、次の文を追加できます。allow dynamic-group oci-rclone-full-dg to manage buckets in compartment cis-landing-top:app-cmp where ANY {target.bucket.name =
'rclone-testing'}
このポリシー・ステートメントを追加した後、前の操作を再試行でき、バケットが削除されます。「OCI Object Storage」画面でブラウザを開いたままにして、各操作を検証できるようにバケットのページをリフレッシュすると便利です。
OCIFSテスト
前の項で示した例を使用して、OCIFSユーティリティは様々な方法でテストされました。動的グループおよびポリシーが設計どおりに機能すると、ポリシーを変更し、権限の編集時に変化する結果をすばやく確認できます。
権限変更のテストの一環として、OCIFSファイルシステムをアンマウントすることをお薦めします。このドキュメントでは、アンマウントの構文について説明します。
ノート:
自動マウントを使用すると、cache-reuse
およびcache-keep
オプションを使用しないかぎりキャッシュが削除されるため、OCIFSキャッシュに影響する可能性があります。
次の例は、OCIFSを使用したマウントポイントの作成およびバケットへの接続を示しています:
root OS prompt# mkdir /mnt/read-bucket root OS prompt# ocifs --auth=instance_principal read-bucket /mnt/read-bucket/ root OS prompt# cd /mnt/read-bucket root OS prompt# ls -al total 0 drwxr-xr-x. 2 root root 6 Nov 6 14:56 . drwxr-xr-x. 5 root root 68 Nov 6 14:56 .. -rw-r--r--. 1 root root 4 Nov 6 14:57 file.txt
root OS prompt# rm file.txt rm: remove regular file 'file.txt'? y rm: cannot remove file.txt': Input/output error
追加のバケット、動的グループ定義およびポリシー・ステートメントによるさらなるテストを実行できます。変更とテストの間を1分または2分にして、権限を伝播できるようにします。