Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Ruby3.x】File::world_writable?()メソッドの使い方

world_writable?メソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

world_writable?メソッドは、指定されたファイルやディレクトリが、システム上のすべてのユーザーに対して書き込み可能であるかを判定するメソッドです。このメソッドは、引数として確認したいファイルまたはディレクトリへのパスを文字列で受け取ります。戻り値は真偽値(trueまたはfalse)で、もし指定されたパスのファイルやディレクトリが、そのシステム上のすべてのユーザーによって書き込み可能な状態、いわゆる「world writable」であるならばtrueを返し、そうでなければfalseを返します。

「world writable」とは、ファイルやディレクトリのアクセス権限において、そのファイルのオーナーや所属グループに関わらず、システム上のあらゆるユーザーがそのファイルやディレクトリの内容を書き換えたり、新規作成・削除したりできる状態を指します。これは、Unix系のファイルパーミッションにおいて、「other」カテゴリに書き込み権限(w)が付与されている状態に相当します。

このような広範囲な書き込み権限は、特定の目的がない限り、セキュリティ上の脆弱性につながる可能性があるため、一般的には慎重に扱うべき設定です。world_writable?メソッドは、特に重要な設定ファイルやデータファイル、または一時ディレクトリなどが意図せず「world writable」になっていないかを確認し、システムのセキュリティ状態を監査する際などに役立ちます。このメソッドを利用することで、不適切なパーミッション設定を検出し、必要に応じて対策を講じるための判断材料を得ることができます。

構文(syntax)

1File.world_writable?(path)

引数(parameters)

path

  • path: string: 確認したいファイルのパス

戻り値(return)

bool | nil

指定されたファイルが他のユーザーによって書き込み可能である場合は true を、そうでない場合は false を返します。パーミッションの設定によっては nil を返すこともあります。

関連コンテンツ

関連プログラミング言語