セッション設定
セッション設定は、Logto のサインインセッションがどのくらいの期間アクティブであるか、またセッション関連のアクセスポリシーがどのように適用されるかをテナントレベルで制御します。
このページでは以下をカバーします:
- セッション TTL 設定
- アプリごとの最大同時認証デバイス数
セッション TTL 設定
セッション TTL は、Logto OIDC サインインセッションの最大存続期間を決定します。 これは テナントレベルの設定 であり、一度設定すると、そのテナント内のすべてのアプリと認証フローに適用されます。
デフォルトの動作
- デフォルトでは、セッション TTL は 14 日間 です。
- カスタム TTL が設定されていない場合、Logto はこのデフォルト値を使用し続けます。
Logto コンソールを介して設定
コンソールでセッション TTL を設定するには、以下の場所で行います:
Console > Tenant > Settings > OIDC settingsSession maximum time to live を使用して値を更新します。
コンソールでは入力と表示に 日 を使用しますが、基礎となる OIDC セッション設定 / API では 秒 を使用します。
Management API を介して設定
OIDC セッション設定を読み取りおよび更新するには、次のエンドポイントを使用します:
GET /api/configs/oidc/sessionPATCH /api/configs/oidc/session
例(ttl は秒単位):
curl https://[tenant-id].logto.app/api/configs/oidc/session \
-H 'authorization: Bearer <management_api_access_token>'
curl -X PATCH https://[tenant-id].logto.app/api/configs/oidc/session \
-H 'authorization: Bearer <management_api_access_token>' \
-H 'content-type: application/json' \
--data-raw '{"ttl":1209600}'
1209600 秒 = 14 日間。
OSS デプロイメントの場合、logto-config を変更した後にサービスインスタンスを再起動して、サーバーが最新の OIDC 設定を取得できるようにします。
サービスを再起動せずに OIDC 設定の更新を自動的に適用するには、中央 Redis キャッシュを有効にする を参照してください。
アプリごとの最大同時認証デバイス数
アプリごとの最大同時認証デバイス数は、特定のアプリに対して各ユーザーが保持できるアクティブなグラントの数を制限するアプリレベルの制御です。
これは、アプリケーションの customClientMetadata の maxAllowedGrants フィールドを通じて設定されます。
詳細は アプリケーションデータ構造 を参照してください。
動作
maxAllowedGrants が設定されている場合、Logto は各成功した認可 (Authorization) の際に現在のアプリに対するユーザーのアクティブなグラントを評価します。
アクティブなグラントの数が制限を超えると、Logto は最も古いグラントを最初に取り消します。
maxAllowedGrants が設定されていない場合、同時実行制限はありません。
Logto コンソールを介して設定
各アプリの詳細ページで以下の場所で設定できます:
Console > Applications > Application details > Concurrent device limit
現在のアプリに対して、ユーザーごとの同時アクティブグラント(デバイス)の最大数を設定します。
この設定は、マシン間通信アプリ、保護されたアプリ、および SAML アプリには対応していません。
関連リソース
セッション ユーザーセッションの管理 ユーザー認可アプリ (グラント) の管理アプリケーションデータ構造: maxAllowedGrants
Management API との対話