PAM.CONF(5) | FreeBSD File Formats Manual | PAM.CONF(5) |
名称
pam.conf — PAM ポリシファイル形式解説
PAM ライブラリは、優先順位の順序を下げて、次のファイルのポリシを検索します:- /etc/pam.d/service-name
- /etc/pam.conf
- /usr/local/etc/pam.d/service-name
- /usr/local/etc/pam.conf
これらの位置が与えられたサービスのためのポリシを含んでいないなら、“ 他の”ポリシが、存在しているなら、代わりに使用されます。
サービスポリシファイルごとのエントリは、以下の 2 つの形式の 1 つでなければなりません:
facility control-flag module-path [arguments ...]
facility include other-service-name
pam.conf-スタイルのポリシファイルのエントリは、同じ形式がありますが、それらが適用するサービスの名前を指定する追加フィールドが前に置かれます。
両方の場合に、空白行、と‘ #
’サインから始まるコメントは、無視され、通常のシェルの引用規則が、適用されます。ファイルがどのようにトークン化されるかについての正確な詳細は、 openpam_readword(3) に記述されています。
facility フィールドは、適用するエントリの機能を指定します、そして、次のうちの 1 つです:
- auth
- 認証関数 (Authentication functions) ( pam_authenticate(3), pam_setcred(3))
- account
- アカウント管理関数 (Account management functions) ( pam_acct_mgmt(3))
- session
- セッション操作関数 (Session handling functions) ( pam_open_session(3), pam_close_session(3))
- password
- パスワード管理関数 (Password management functions) ( pam_chauthtok(3))
control-flag フィールドは、モジュールによって返された結果がチェーンの残り (の最終的な結果) を通してコントロールの流れにどのように影響するかを決定します、そして次のうちの 1 つです:
- required
- このモジュールが成功するなら、チェーンの結果は、後のモジュールが失敗しない限り、成功します。失敗するなら、チェーンの残りはまだ実行していますが、最終的な結果は後のモジュールの成功にかかわらず失敗します。
- requisite
- このモジュールが成功するなら、チェーンの結果は、後のモジュールが失敗しない限り、成功します。モジュールが失敗するなら、チェーンは壊れており、結果は失敗です。
- sufficient
- このモジュールが成功するなら、チェーンは壊れており、結果は成功です。失敗するなら、チェーンの残りはまだ実行していますが、最終的な結果は、後のモジュールが成功しない限り、失敗します。
- binding
- このモジュールが成功するなら、チェーンは壊れており、結果は成功です。失敗するなら、チェーンの残りはまだ実行していますが、最終的な結果は、後のモジュールの成功にかかわらず失敗します。
- optional
- このモジュールが成功するなら、チェーンの結果は、後のモジュールが失敗しない限り成功します。このモジュールが失敗するなら、チェーンの結果は、後のモジュールが成功しない限り、失敗します。
上記の 2 つの例外があります: sufficient と binding モジュールは、 pam_setcred(3) によって オプション として、そして、 pam_chauthtok(3) の PAM_PRELIM_CHECK フェーズで取り扱われます。
module-path フィールドは、呼び出す呼ぶモジュールの、名前またはフルパスを指定します。名前のみが指定されるなら、PAM ライブラリは、次の位置で、それを検索します:
- /usr/lib
- /usr/local/lib
残りのフィールドは、もしあるなら、それが呼び出されるときは、モジュールに変更せずに渡されます。
エントリの include 形式によって、 ( other-system-name で指定される) 異なったチェーンからのエントリは、現在のものに含まれます。これで、次にサービス特有のポリシに含まれているシステム全体のポリシの定義を許します。また、システム全体のポリシは、ありとあらゆるサービス特有のポリシを変更することなしに、変更することができます。
モジュールオプション
いくつかの PAM ライブラリ関数は、モジュールがそれ自体が、それらにいくらかの重要度を与えるかどうかにかかわらず、特定のモジュールオプションが指定されたなら、サービスモジュールによって呼び出されるとき、それらの振る舞いを変更するかもしれません。 1 つの、そのようなオプションは、ディスパッチャ (dispatcher) が、各サービス関数を呼び出す前にデバッグするメッセージを有効にし、 (それらが既に有効になっていないなら) それらを後で無効にする、 debug です。他の特別のオプションは、次のものを含んでいます:- authtok_prompt= prompt, oldauthtok_prompt= prompt, user_prompt= prompt
- pam_get_authtok(3) と pam_get_user(3) によって使用されるプロンプトを上書きするために、これらのオプションを使用することができます。
- echo_pass
- このオプションは、 pam_get_authtok(3) が、それらが何をタイプしているか確かめることをユーザに許可するかどうかを制御します。
- try_first_pass, use_first_pass
- これらのオプションは、 pam_get_authtok(3) のキャッシュされた認証のトークンの使用を制御します。
関連項目
pam(3)規格
X/Open Single Sign-On Service (XSSO) - Pluggable Authentication Modules, June 1997.作者
OpenPAM ライブラリは、 DARPA CHATS 研究プログラムの一環として、 DARPA/SPAWAR 契約 N66001-01-C-8035 (“CBOSS”) の下で ThinkSec AS と Network Associates Laboratories, the Security Research Division of Network Associates, Inc. によって FreeBSD プロジェクトのために開発されました。OpenPAM ライブラリは、
<des@des.no>によって保守されています。September 7, 2013 | FreeBSD |