このドキュメントで説明するソフトウェアは、Extended SupportまたはSustaining Supportのいずれかにあります。 詳細は、https://www.oracle.com/us/support/library/enterprise-linux-support-policies-069172.pdfを参照してください。
Oracleでは、このドキュメントに記載されているソフトウェアをできるだけ早くアップグレードすることをお薦めします。

機械翻訳について

23.7.1 Pluggable Authentication Moduleの構成

各PAM構成ファイルには、認証モジュールに対するコールのリスト(スタック)が含まれます。 たとえば、次に示すのはlogin構成ファイルのコンテンツです。

#%PAM-1.0
auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
auth       include      system-auth
account    required     pam_nologin.so
account    include      system-auth
password   include      system-auth
# pam_selinux.so close should be the first session rule
session    required     pam_selinux.so close
session    required     pam_loginuid.so
session    optional     pam_console.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session    required     pam_selinux.so open
session    required     pam_namespace.so
session    optional     pam_keyinit.so force revoke
session    include      system-auth
-session   optional     pam_ck_connector.so

ファイルのコメントは#文字で始まります。 残りの各行で、操作タイプ、制御フラグ、pam_rootok.soなどのモジュール名またはsystem-authなどの含まれている構成ファイル名、およびモジュールに対する引数を定義しています。 PAMでは、認証モジュールが32および64ビット共有ライブラリとして、それぞれ/lib/securityおよび/lib64/securityに用意されています。

特定の操作タイプの場合、PAMは上から下にスタックを読み取って、構成ファイルに表示されているモジュールをコールします。 各モジュールはコールされると、結果(成功または失敗)を生成します。

使用する操作タイプとして、次のタイプが定義されています。

auth

モジュールは、サービスまたはアプリケーションを使用するために、ユーザーが認証または認可されているかどうかをテストします。 たとえば、モジュールはパスワードをリクエストおよび検証できます。 こうしたモジュールは、グループ・メンバーシップやKerberosチケットなどの資格証明を設定することもできます。

account

モジュールは、認証されたユーザーがサービスまたはアプリケーションへのアクセスを許可されているかどうかをテストします。 たとえば、モジュールはユーザー・アカウントが期限切れかどうか、またはユーザーが指定の時間にサービスの使用を許可されているかどうかを確認できます。

password

モジュールは、認証トークンへの更新を処理します。

session

モジュールは、ユーザーのホーム・ディレクトリのマウントやアンマウントなどの作業を実行して、ユーザー・セッションを構成および管理します。

操作タイプの前にダッシュ(-)が付いていると、そのモジュールがない場合にPAMはシステム・ログ・エントリを作成および追加しません。

include以外の制御フラグは、PAMにモジュールの実行結果に対して行う動作を通知します。 使用する制御フラグとして、次のフラグが定義されています。

optional

それがサービスにリストされている唯一のモジュールである場合、認証にはそのモジュールが必要です。

required

アクセスを付与するには、モジュールが成功する必要があります。 PAMはモジュールが成功しても失敗しても、スタックの残りのモジュールの実行を継続します。 PAMは、失敗をただちにユーザーに通知しません。

requisite

アクセスを付与するには、モジュールが成功する必要があります。 モジュールが成功した場合、PAMはスタック内の残りのモジュールの実行を継続します。 ただし、モジュールが失敗した場合、PAMはただちにユーザーに通知して、スタック内の残りのモジュールの実行を継続しません。

sufficient

モジュールが成功した場合、PAMは同じ操作タイプの残りのモジュールを処理しません。 モジュールが失敗した場合、PAMは同じ操作タイプの残りのモジュールを処理して、全体的な成功または失敗を判断します。

制御フラグ・フィールドでは、モジュールから返された値に応じてPAMが実行すべきアクションを指定する1つ以上のルールも指定できます。 各ルールは、value=actionというフォームをとり、ルールは大カッコで囲まれます。次に例を示します。

[user_unknown=ignore success=ok ignore=ignore default=bad]

モジュールから返された結果が値と一致する場合、PAMは対応するアクションを使用し、一致しない場合は、デフォルトのアクションを使用します。

includeフラグは、PAMが引数として指定されたPAM構成ファイルも参照すべきであることを示します。

ほとんどの認証モジュールおよびPAM構成ファイルには、それぞれ独自のマニュアル・ページがあります。 また、/usr/share/doc/pam-versionディレクトリには、『PAM System Administrators' Guide』(html/Linux-PAM_SAG.htmlまたはLinux-PAM_SAG.txt)およびPAM標準のコピー(rfc86.0.txt)も含まれています。

詳細は、pam(8)マニュアル・ページを参照してください。 また、各PAMモジュールには、pam_unix(8)などの独自のマニュアル・ページがあります。