13.2.16. ドメインオプション: オフライン認証の有効化
ユーザー ID は常にキャッシュされ、ドメインサービスに関する情報も常にキャッシュされます。ただし、ユーザーの 認証情報 はデフォルトでキャッシュされません。つまり、SSSD は認証要求に対してバックエンドアイデンティティープロバイダーを常にチェックします。アイデンティティープロバイダーがオフラインまたは利用できない場合は、これらの認証要求を処理する方法がないため、ユーザー認証が失敗する可能性があります。
オフラインの認証情報キャッシュ を有効にすると、(ログインに成功すると)SSSD キャッシュにユーザーアカウントの一部として認証情報を保存します。そのため、アイデンティティープロバイダーが利用できない場合でも、ユーザーは保存された認証情報を使用して引き続き認証できます。オフライン認証情報のキャッシングは主に個別のドメインエントリーで設定されますが、認証情報のキャッシングはローカルの PAM サービスとリモートドメインと対話するため、PAM サービスセクションで設定できる任意の設定があります。
[domain/EXAMPLE] cache_credentials = true
オプションのパラメーターは、これらの認証情報の有効期限が切れる際に設定されます。有効期限は、アカウントや認証情報が指定されたユーザーがローカルサービスに無期限にアクセスできなくなる可能性があるためです。
認証情報の有効期限は、システムの認証要求を処理する PAM サービスで設定されます。
[sssd] services = nss,pam ... [pam] offline_credentials_expiration = 3 ... [domain/EXAMPLE] cache_credentials = true ...
offline_credentials_expiration は、ユーザーの単一の認証情報エントリーがキャッシュに保持されるというログインに成功した後の日数を設定します。これをゼロ(0)に設定すると、エントリーが永久に保持されます。
認証情報キャッシュとは関係ありませんが、各ドメインには、個々のユーザーおよびサービスが期限切れになる際の設定オプションがあります。
- account_cache_expiration は、ログインに成功すると、ユーザーアカウントの全エントリーが SSSD キャッシュから削除されるまでの日数を設定します。これは、個別のオフライン認証情報キャッシュの有効期限と同じか、またはそれ以上である必要があります。
- entry_cache_timeout は、SSSD が ID プロバイダーから更新された情報を要求する前に、キャッシュに保存されているすべてのエントリーに有効期間を秒単位で設定します。group、service、netgroup、sudo、autofs エントリーには個別のキャッシュタイムアウトパラメーターがあります。これらは
sssd.conf
の man ページに記載されています。デフォルトの時間は 5400 秒(90 分)です。
以下に例を示します。
[sssd] services = nss,pam ... [pam] offline_credentials_expiration = 3 ... [domain/EXAMPLE] cache_credentials = true account_cache_expiration = 7 entry_cache_timeout = 14400 ...