Java を使用したファイル アクセス許可のプログラムによる変更
ファイル処理の領域では、ファイル アクセス許可の制御は、セキュリティとアクセス制御を維持するために非常に重要です。さまざまなオペレーティング システム。 Linux/UNIX システム上のファイル権限をプログラムで変更しようとする Java 開発者にとって、Java 5 にはそのような操作のためのネイティブ メソッドがありませんでした。
しかし、Java 7 の出現により、「新しい」New IO 機能 (NIO.2) が登場しました。 ) 包括的なファイル属性管理機能が導入されました。主な利点の 1 つは、setPosixFilePermissions() メソッドを使用して既存のファイルに POSIX アクセス許可を設定できることです。さらに、createFile() や newByteChannel() などのメソッドを使用して、特定のアクセス許可を使用してファイルをアトミックに作成できます。
NIO.2 でファイル アクセス許可を設定する
ファイル アクセス許可を設定するにはNIO.2 を使用して、一連の権限を作成する必要があります。 Java は、この目的のために 2 つのメソッドを提供します。EnumSet.of() と、人間が判読できる文字列を解析する、より便利なヘルパー メソッド PosixFilePermissions.fromString() です。さまざまな API で受け入れられる FileAttribute と統合するには、PosixFilePermissions.asFileAttribute() を使用してアクセス許可のセットをラップできます。
たとえば、所有者が書き込み可能なアクセス許可を設定するには、次のコードを使用できます。
Set<PosixFilePermission> ownerWritable = PosixFilePermissions.fromString("rw-r--r--"); FileAttribute<?> permissions = PosixFilePermissions.asFileAttribute(ownerWritable); Files.createFile(path, permissions);
以前の Java での代替アプローチバージョン
Java 7 より前では、開発者はネイティブ コードを利用したり、Java 内からコマンドライン ユーティリティを実行したりするなど、代替アプローチに頼る必要がありました。これらの方法は統合性が低く、プラットフォーム固有の考慮事項が必要です。
以上がJava は Linux/UNIX システム上のファイル権限をプログラムで変更するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。