ユーザーにアクセス特権を与えるプログラムは、各ユーザーを正確に認証する必要があります。システムにログインする際に、ユーザーはユーザー名とパスワードを提示し、ログインプロセスがその情報を使用してログインの認証をします。つまり、ユーザーが申請した身元が本人のものであることを検証します。パスワード以外の認証形式も可能であり、異なる方法でパスワードを格納することもできます。
PAM(Pluggable Authentication Modules)は、システム管理者が認証プログラムを再コンパイルせずに認証ポリシーを設定できるようにする1つの方法です。PAMを使用する場合は、プログラムの/etc/pam.dにあるPAM設定ファイルを編集することによって、プログラムに認証モジュールをプラグインする方法を制御します。
ほとんどのRed Hat Linuxユーザーは、自分のプログラムのためにPAM設定ファイルを変更する必要はありません。RPMを使用して認証を必要とするプログラムをインストールするときは、それらのプログラムは、通常のパスワード認証に必要な変更をPAMを使用して自動的に行います。ただし、設定をカスタマイズしたい場合は、PAM設定ファイルの構造を理解する必要があります。詳細は、the section called PAMモジュールを参照してください。
PAMを正しく使用すると、システム管理者にとってたくさんの利点をもたらします。たとえば、次のとおりです。
各種アプリケーションとともに使用できる共通の認証設定。
PAMをサポートするためにアプリケーションを再コンパイルする必要がなく、あらゆるアプリケーションとともに実装できる。
システム管理者とアプリケーション開発者のための、認証に対する優れた柔軟性と制御性。
アプリケーション開発者が、プログラムを開発する際に特殊な認証設定を使用する必要がないこと。そのため、純粋にプログラムの細部の開発に集中することができます。