FE EXAM

アクセス権(パーミッション)

ファイルやディレクトリに対して、誰がどんな操作をできるかを定めた権限設定。

INTERACTIVE VISUALIZATION
r=4
w=2
x=1
フェーズ
idle
rwx 表記
— — —
8進数表記
シナリオ
ステップ1 / 5
STEP 1/5アクセス権とは何かを確認するUnix系のOSでは、ファイルやディレクトリ(=フォルダ)ごとに「誰が・どんな操作をしてよいか」を決められます。これをアクセス権(パーミッション)と呼びます。これから所有者・グループ・その他の3者それぞれに権限を割り当て、最後に8進数の数字で表す流れを見ていきます。
▶ を押すと 3者 × 3権限の割り当てが始まります
計算例
所有者(user)rwx = 4+2+1 = 7
グループ(group)r-x = 4+0+1 = 5
その他(other)r-x = 4+0+1 = 5
まとめると chmod 755(= rwxr-xr-x
解説

📌
アクセス権とは

📄 file所有者その他許可制限

アクセス権(パーミッション)とは、ファイルやディレクトリ(=フォルダ)ごとに「誰が・どんな操作をしてよいか」を定める権限設定のことです。Unix系のOS(LinuxやmacOSなど)で広く使われます。

身近な例で考えると、会社の書類の扱いに似ています。作った本人は自由に編集でき、同じ部署の人は閲覧だけ、社外の人は触れない、というように相手によって扱いを変えますよね。アクセス権はこれをファイル単位で設定する仕組みです。

上のツールで▶ボタンを押すと、3者それぞれに権限を割り当て、最後に8進数の数字(例 755)にまとめる流れを1ステップずつ確認できます。

👥
3者×3種の権限

所有者rwx3種の権限グループrwx3種の権限その他rwx3種の権限

アクセス権は3者 × 3種の組み合わせで決まります。まず権限を持つ「対象者」が3者います。


所有者(user):そのファイルを作った本人
グループ(group):同じグループに属する人たち
その他(other):それ以外の全員

そして、各者に与えられる権限は3種類です。
読取り(r:read):中身を見る
書込み(w:write):内容を変える
実行(x:execute):プログラムとして動かす

許可するものに印を付ける、と考えると分かりやすいです。許可がない権限は「-」で表します。上のツールの表で、3者それぞれに r/w/x の印が付く様子を確認できます。

🔐
なぜアクセス権が必要か

secret.txt所有者 ✓グループ ✓その他 ✕同じファイルでも相手によって操作を変えられる

アクセス権が必要な理由は、1台のコンピュータを複数の人が共有することがあるからです。自分の大切なファイルを、他の利用者に勝手に読まれたり消されたりしては困ります。

アクセス権を設定しておけば、次のようなことが実現できます。
自分だけが編集できる:所有者に読取り・書込みを許可、他者には読取りだけ(または禁止)
チームで共有する:グループには読取りと書込みを許可、社外(その他)には閲覧も禁止
全員に公開する:誰でも読めるが、書き換えは所有者だけ

アクセス権がないとすべてのユーザーがすべてのファイルを自由に操作できてしまい、個人情報の流出や大切なファイルの誤削除が起きてしまいます。アクセス権はコンピュータを安全に使い続けるための「仕切り」の役目を果たしています。

📂
ディレクトリへのアクセス権の意味

📁 secret/r(読取り)中の一覧を見られるw(書込み)追加・削除できるx(実行)中に入って移動できる

r・w・x の3種類の権限はファイルとディレクトリで意味が少し違います。ディレクトリに対しては次のように解釈します。


r(読取り):ディレクトリの中にあるファイル一覧を見ることができる
w(書込み):ディレクトリの中にファイルを追加・削除できる
x(実行):そのディレクトリの中に入って移動できる(=中のファイルにアクセスできる)

特に x(実行)が重要です。ファイルの中身を読む権限があっても、そのファイルが入っているディレクトリの x 権限がなければ、そこにたどり着けません。ディレクトリの x は「扉を開けて中に入る鍵」のようなものです。x なしの r だけでは「部屋の外から部屋の名前が分かる」だけで、中に入れません。

🔢
8進数表記との対応

r=4w=2x=14+2+1=7rwx → 7 / r-x → 4+1 = 5

rwx の印を毎回書くのは長いので、数字3桁で短く表す方法がよく使われます。仕組みはとても単純で、r=4・w=2・x=1 という重みを、許可した権限ぶんだけ足すだけです。

足し算の結果は1桁の数字(0〜7)になります。これは8進数(=0〜7の8種類だけで数を表す書き方)の1桁にぴったり収まります。
rwx = 4+2+1 = 7
r-x = 4+0+1 = 5
rw- = 4+2+0 = 6

所有者・グループ・その他の順に1桁ずつ並べると、3桁の数字になります。

rwx r-x r-x
7  5  5  → 755
$ chmod 755 file # この数字で一括設定

「755」と書けば「rwxr-xr-x」と同じ意味を、たった3文字で表せます。chmod(change mode)コマンドにこの数字を渡すと権限をまとめて設定できます。上のツールの計算例で、各者の足し算と最終的な3桁を確認できます。

練習問題

🎯
基本情報技術者 練習問題

Q1.Unix系OSのアクセス権(パーミッション)の説明として最も適切なものはどれか。
A.ファイルの保存場所を決める設定
B.ファイルやディレクトリに対し、誰がどんな操作をできるかを定める権限設定
C.ファイルの作成日時を記録する仕組み
D.ファイルを圧縮する方式
Q2.権限を r=4, w=2, x=1 として、所有者に rwx を与えたときの数字はどれか。
A.5
B.6
C.7
D.3
Q3.8進数表記 755 が表すアクセス権(rwx形式)として正しいものはどれか。
A.rw-r--r--
B.rwxr-xr-x
C.rwxrwxrwx
D.r-xr-xr-x

関連コンテンツ