ホームページ >運用・保守 >Linuxの運用と保守 >Linux でロールベースのアクセス制御 (RBAC) を構成する方法
Linux でロールベースのアクセス制御 (RBAC) を構成する方法
はじめに:
マルチユーザー環境では、システムのセキュリティとデータ プライバシーを確保することが重要なタスクになります。 Linux システムでは、ユーザーのアクセス許可とリソース アクセスを管理するためにロールベースのアクセス制御 (RBAC) が広く使用されています。この記事では、Linux システムで RBAC を構成する方法を紹介し、読者が実装プロセスをよりよく理解できるようにいくつかのコード例を示します。
ステップ 1: 必要なソフトウェア パッケージをインストールする
まず、RBAC 機能を有効にするために必要なソフトウェア パッケージをインストールする必要があります。次のコマンドを使用して、SELinux (Security Enhanced Linux) と PAM (Pluggable Authentication Modules) を Linux システムにインストールします。
sudo apt-get install selinux pam
インストールが完了したら、次のステップに進むことができます。
ステップ 2: ユーザーとロールを作成する
Linux システムでは、各ユーザーを 1 つ以上のロールに割り当てることができます。 adduser
コマンドを使用して新しいユーザーを作成し、usermod
コマンドを使用してユーザーを対応するロールに追加できます。
sudo adduser user1 sudo usermod -aG role1 user1
上記のコードでは、user1 という名前の新しいユーザーを作成し、role1 という名前のロールに追加します。ニーズに応じて、さらに多くのユーザーとロールを作成できます。
ステップ 3: ロール ポリシー ファイルを構成する
ロール ポリシー ファイルは、各ロールのアクセス許可とリソース アクセス ポリシーを定義します。テキスト エディタを使用して /etc/selinux/policy.conf
ファイルを開き、ロール ポリシーを追加します。
sudo nano /etc/selinux/policy.conf
次の内容をファイルの最後に追加します。
role role1 types type1, type2, type3
上記のコードでは、role1 という名前のロールと、そのロールがアクセスできるリソースの種類を定義します。
ステップ 4: PAM モジュールを構成する
PAM モジュールは、ユーザーの認証と認可に使用されるプラグ可能な認証モジュールです。テキスト エディタを使用して /etc/pam.d/common-auth
ファイルを開き、PAM モジュール構成を追加します。
sudo nano /etc/pam.d/common-auth
次の内容をファイルの先頭に追加します。
auth [success=done new_authtok_reqd=ok default=ignore] pam_selinux_permit.so auth required pam_deny.so
上記のコードでは、pam_selinux_permit.so
モジュールを使用して、SELinux がアクセス許可を設定できるようにします。 so モジュールは、アクセス権を持たないユーザーの承認を禁止します。
上記の構成が完了したら、RBAC 構成を有効にするために Linux システムを再起動する必要があります。
sudo reboot再起動後、RBAC 機能が有効になり、ユーザーはロールのアクセス権に従って認可されます。 コード例:
次に、RBAC を使用してユーザー権限制御を構成する方法を示す簡単な RBAC コード例を示します。
import os def check_access(user, resource): output = os.system("id -Z") if user in output and resource in allowed_resources: return True else: return False user = "user1" allowed_resources = ["file1", "file2", "file3"] if check_access(user, "file2"): print("用户有权限访问资源") else: print("用户无权限访问资源")上記のコードでは、
check_access 関数を使用して、ユーザーがリソースにアクセスする権限を持っているかどうかを確認します。ユーザーが指定されたロールに属しており、必要なリソースがアクセスを許可されたリソースのリストにある場合、関数は True を返し、それ以外の場合は False を返します。
ロールベースのアクセス制御 (RBAC) を構成することで、ユーザーのアクセス許可とリソース アクセスをより適切に管理し、システムのセキュリティとデータ プライバシーを向上させることができます。この記事では、Linux システムで RBAC を構成する手順を紹介し、読者が実装プロセスをよりよく理解できるように簡単なコード例を示します。リーダーは、独自のニーズに応じて RBAC 構成を拡張および変更し、より正確な権限制御を実現できます。
以上がLinux でロールベースのアクセス制御 (RBAC) を構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。