DSEFS権限管理

DSEFS権限管理では、DSEFSに格納されているファイルとディレクトリーに対するユーザーおよびグループのパーミッションを検証します。

DSEFS権限管理では、DSEFSに格納されているファイルとディレクトリーに対するユーザーおよびグループのパーミッションを検証します。

DSEFS権限管理は、デフォルトで無効になっています。構成は必要なく、DSE権限管理を使用すると自動的に有効になります。

所有者、グループ、およびパーミッション

DSEFS認証が無効になっている、セキュアでないクラスターにファイルとディレクトリーが新しく作成されると、その所有者はnoneに設定され、グループはnoneに設定されます。セキュアでないクラスターでは、各DSEFSユーザーに各ファイルとディレクトリーへのフル・アクセス権が付与されます。

dsefs dsefs://127.0.0.1:5598/ > ls -l
Type  Permission  Owner      Group      Length   Modified                  Name                   
dir   rwxrwxrwx   none       none            -   2016-12-01 15:50:49+0100  some_dir  

DSEFS認証が有効になっている、セキュアなクラスターにファイルとディレクトリーが新しく作成されると、所有者は認証されたユーザーのユーザー名、グループは認証されたユーザーのプライマリ・ロールに設定されます。ユーザー・ロールの詳細については、CQLロールのドキュメントを参照してください。ファイルとディレクトリーのパーミッションは、作成時にputコマンドとmkdirコマンドのパラメーターとして指定できます。詳細については、help putまたはhelp mkdirを使用して確認してください。

dsefs dsefs://127.0.0.1:5598/ > ls -l
Type  Permission  Owner      Group      Length   Modified                  Name                
dir   rwxr-x---   john       admin           -   2016-12-02 15:52:54+0100  other_dir 

既存のファイルまたはディレクトリーの所有者またはグループを変更するには、chownコマンドまたはchgrpコマンドを使用します。詳細については、help chownまたはhelp chgrpを使用して確認してください。

デフォルトでは、DSEFSはrwxr-xr-x(8進数は755)パーミッションでディレクトリーを作成し、rw-r-r-(8進数は644)パーミッションでファイルを作成します。既存のファイルまたはディレクトリーのパーミッションを変更するには、chmodコマンドを使用します。詳細については、help chmodを使用して確認してください。

DSEFSスーパーユーザー

DSEFSユーザーは、そのユーザーがデータベース・スーパーユーザーである場合に限り、スーパーユーザーとなります。スーパーユーザーは、DSEFSに格納されているすべてのファイルとディレクトリーの読み取り/書き込みが可能です。スーパーユーザーのみがfsckumountなどのDSEFSの保守操作を実行できます。

DSEFSユーザー

以下のパーミッションに対してユーザー・アクセスが検証されます。

  • 所有者パーミッション(ファイルまたはディレクトリーの所有者名が認証されたユーザーのユーザー名に等しい場合)。
  • グループ・パーミッション(ファイルまたはディレクトリーのグループが認証されたユーザーのグループに属している場合)。グループはデータベースのユーザー・ロール名からマップされます。
  • その他のパーミッション(上記の条件に該当しない場合)

DSEFSコマンドごとに独自のパーミッション・セットが必要です。パスa/b/cが指定された場合、cがリーフ、a/bが親パスです。以下の表は、特定の操作に成功するために必要なパーミッションを示しています。Rは「読み取り」、Wは「書き込み」、Xは「実行」の権限をそれぞれ示します。

1. DSEFSコマンドを使用した場合のファイルのパーミッションの影響
コマンド パーミッションを確認するパス 親パス・パーミッション リーフ・パーミッション
append a/b/c a/b/c X W
cat a/b/c a/b/c X R
cd a/b/c a/b/c X
chgrp グループについてchownと同様
chmod a/b/c a/b/c X ユーザーは所有者でなければなりません。
chown a/b/c a/b/c X スーパーユーザーのみが所有者を変更できます。グループを変更するには、ユーザーがターゲット・グループのメンバーかスーパーユーザーである必要があります。
cp putではなく、getと同様
expand a/?/c a/?/c X X
get a/b/c a/b/c X R
ls a/b/c a/b/c X RX(cがディレクトリーの場合)。
mkdir a/b/c a/b X WX
mv a/b/c d/e/f a/bおよびd/e X WX
put a/b/c a/b X WX
realpath a/b/c a/b/c X
rename a/b/c d a/b X WX
rm a/b/c a/b X WX
rmdir a/b/c a/b X WX
stat a/b/c a/b/c X
truncate a/b/c a/b/c X W

権限管理移行モード

DSEFS権限管理は、DSEAuthorizerから提供される移行モードをサポートしています。TransitionalAuthorizerなどのレガシー・オーソライザーはサポートされていません。サポートされていないオーソライザーが構成されていて、エラーがログ・メッセージに報告されると、DSEは起動しません。