名前

vfs_acl_xattr — 拡張属性 (EA) に NTFS のアクセス許可を保存

書式

vfs objects = acl_xattr

説明

このVFSモジュールは samba(7)システムの一部である。

このモジュールは、標準化された NFS4 ACL をサポートしていないが、 非推奨の POSIX ACL ドラフト実装のみをサポートしているシステム用に 作成されている。これは、通常 Linux システムの場合である。 ちゃんとサポートしているシステムでは、このモジュールの代わりに、 NFSv4 ACL を直接使用すれば良い。そのようなサポートは、NFS4 ACLを サポートする基本ファイルシステムに固有の VFS モジュールによって 提供される。

vfs_acl_xattr VFSモジュールは、 拡張属性 (EA) に NTFS のアクセス許可 (ACL) を格納する。 これにより、 ACL 実装が それを行うことが出来なくとも、 Samba サーバーで NTFS のアクセス許可を完全に実装することが 可能となる。

NTACL は、AC L内のユーザとグループを表現する Windows SID を含む形式で、 ファイルとディレクトリの security.NTACL 拡張 属性に格納される。これは、ローカルファイルシステムの ACL に格納されて いる uid と gid とは異なり、さらに、格納されている NT ACL の意味を 維持するため、ユーザとグループから Windows SID へのマッピングは一貫して いる必要がある。この拡張属性は、Linux コマンド getfattr -d filename. では表示されない。 現在の値を表示するためには、EA 名を指定する必要がある (たとえば、 getfattr -n security.NTACL filename ) 。

このモジュールは以下のパラメータを強制的に設定する。

  • inherit acls = true

  • dos filemode = true

  • force unknown acl user = true

このモジュールはスタック可能である。

オプション

acl_xattr:security_acl_name = NAME

このオプションは、NTACL 拡張属性 (xattr) の既定の位置を再定義する。 設定がない場合、NTACL xattr は保護された場所である security.NTACL に 書き込まれる。すなわち、security.NTACL 属性の内容は、Samba 以外の 通常のユーザからはアクセス出来ない。たとえば、user.NTACL などの、 ユーザ定義の値を使用するように、このオプションを設定した場合、 すべてのユーザがこの情報に対して、アクセスし、上書きできる可能性が ある。モジュールは、SMB 上でこの xattr へのアクセスを抑止するが、 xattr は他の方法 (たとえばローカルアクセス、SSH、 NFS など)で アクセスされる可能性がある。このオプションは、この結果が明確に理解 していて、ACL の内容が、損なわれることを防ぐための、特別な予防処置が 取られている場合にのみ、使う必要がある。

acl_xattr:ignore system acls = [yes|no]

このパラメーターを yes に設定した場合、 このモジュールは、ベストエフォートで行う、POSIX draft ACL レイヤとのマッピング 処理を行わない。既定は no で、この場合、 Samba はシステムの ACL と NT ACL の 両方に対して設定を行い、またアクセス可否の確認を実施する。 ローカルまたは NFS 経由でのファイルアクセスのために、システムの ACL も 設定しておく必要がある場合は、この設定が望ましいであろう。 Samba 経由以外でファイルアクセスを行わない場合は、このパラメーターを yes にすることで、 NTFS のアクセス許可との互換性を高めることができる。

もしも、acl_xattr:ignore system aclsyesに設定した場合、以下の設定が、 強制的に追加される。

  • create mask = 0666

  • directory mask = 0777

  • map archive = no

  • map hidden = no

  • map readonly = no

  • map system = no

  • store dos attributes = yes

acl_xattr:default acl style = [posix|windows|everyone]

posixに設定した場合、 NT Authority\SYSTEM がすべての権限を持つ 追加の ACE を付けた形で、ユーザ、グループとその他の、 POSIX モードパーミッションに基づいた ACL が合成される。

windowsに設定した場合、Windows が行うのと 同じ方法で ACL は合成されるが、所有者と、 NT Authority\SYSTEM に対するパーミッション のみを含む。

everyoneに設定した場合、ACL は、 everyone (S-1-1-0) に対する完全なパーミッション が合成される。

このオプションの既定値は posixである。

著者

オリジナルの Samba ソフトウェアと関連するユーティリティは、Andrew Tridgell によって作成された。現在 Samba は Samba Team に よって、Linux カーネルの開発と同様のオープンソースプロジェクト として開発が行なわれている。

日本語訳

このドキュメントは、Samba 4.18.0 - 4.20.4 に対応する。

このドキュメントの翻訳は

  • 太田俊哉 (ribbon@samba.gr.jp)

  • たかはしもとのぶ (monyo@samba.gr.jp)

によって行なわれた。