Documentation

23. セッション制限の使用

セッション制限を設定すると、管理者はユーザーまたは IP アドレス毎に同時に使用することのできるセッション数を制限することができます。

Ansible Tower では、ユーザーがログインに使用するブラウザーごとにセッションが作成され、管理者が定義した最大数を超えると、セッションから強制的にログアウトされます。

特定の設定では、セッション制限が重要となる場合があります。たとえば、(職場のラップトップ、電話、または自宅のコンピューターなどからログインできる場合など) デバイスに拘らず 1 回のログインで、システムにログインできるユーザーは 1 名のみに設定する必要がある場合があります。このような場合には、セッション制限を 1 に設定します。ユーザーが自分のラップトップでログインしてから、携帯からログインした場合には、ラップトップのセッションは有効期限が切れ (タイムアウトして)、携帯でのログインが保持されます。

セッション数を非常に少なく設定することも可能ですが、組織が必要とするセッションログイン数に対応するように、セッション数を増やすことも可能です。

ユーザーがログインしたことが原因で他のユーザーがログアウトされてしまった場合に、セッションの制限に達し、ログアウトされてしまったユーザーには、ログアウトされた理由が通知されます。

セッション制限に変更を加えるには /etc/tower/conf.d に移動して、sessions.py ファイルを編集するか、REST 要求を問題なく作成できる場合は「Browsable API」を使用してください。変更すべき設定は、以下に詳しく記載します。

# Seconds before auth tokens expire.
SESSION_COOKIE_AGE = 1800

# Maximum number of per-user valid, concurrent tokens.
# -1 is unlimited
SESSIONS_PER_USER = -1

# Enable / Disable HTTP Basic Authentication used in the API browser
# Note: Session limits are not enforced when using HTTP Basic Authentication.
AUTH_BASIC_ENABLED = True

注釈

最適なセッション制限を使用するには、AUTH_BASIC_ENABLED の値を False に設定して無効にしてください。そうすることで、セッション制限が無効になります。

ご用心

プロアクティブなセッション制限により、セッションがアイドルになるとユーザーがキックアウトされます。セッション制限を 1 分以下に設定すると Ansible Tower インスタンスが中断するのでこの設定を避けることを強く推奨します。