勉強前のイメージ
linuxのファイルユーザやプロセスに対してのアクセス制限のイメージ
任意と強制の違いは分からない
調査
DAC(任意アクセス制御)
Discretionary Access Control の略
一般ユーザーが自分でシステム上のアクセス制御を行う方法です。
ユーザー自身が作成したファイルの 読み取り・書き込み・実行 についての制限を自由に設定可能です。
また、所有者やグループも変更することができ、作成したファイルのアクセス制限のすべての権限が与えられている状態です。
ただしユーザの自由度は高いが、管理者はすべてのユーザにファイル管理の権限を与えているためセキュリティ面ではあまり効果が期待できません。
MAC(強制アクセス制御)
Mandatory Access Control の略
管理者一人がアクセス制限を行う方法です。
管理者以外のユーザはルールの変更が出来ないのが特徴です。
ユーザそれぞれに権限を与えているわけではないので自由度は低いが、セキュリティ面に関しては任意アクセス制御方式よりもセキュリティレベルは高くなります。
多くのアクセス制御において強制アクセス制御は使われており、SElinuxなどが有名です。
サブジェクト(ユーザーの操作等)とオブジェクト(システムやファイル等のリソース)のセキュリティレベルの設定を行い制限を行います。
RBAC(ロールベースアクセス制御)
Role-based access control の略
DAC(任意アクセス制御)とMAC(強制アクセス制御)の中間的なアクセス制御がロールベースアクセス制御です。
サブジェクト(ユーザーの操作等)とオブジェクト(システムやファイル等のリソース)でアクセス制御をするのはMAC(強制アクセス制御)と同様ですが、
サブジェクト・ユーザーの操作等に対して制限を行うことで、全てを制限するのではなく一部アクセスの制御を行う方式です。
勉強後のイメージ
DAC(任意アクセス制御)はユーザのファイルとかに対する権限
「adminユーザのtest.txtは testユーザでは見れないよ」とか。
MAC(強制アクセス制御)はシステム全体に対する制限
SElinuxとか、サーバ全体的システム全体のイメージ
RBAC(ロールベースアクセス制御)は特定のユーザに特定のリソースを許可する制限
運用管理者だけ/var/www/html配下触れるとかの制限のイメージ
何となく今までそういう制限があるってのは触っててわかってたけど、こういう分け方がされているのは知らなかった。