2 要素認証の管理
TeamCity サーバーで 2 要素ユーザー認証 (2FA) を有効にすると、セキュリティレベルがさらに強化されます。 ユーザーは、通常の資格情報を提供 し、さらに個人のモバイルデバイスで生成された使い捨てキーを送信するという 2 つの手順で本人確認を行う必要があります。
必要な 2FA 認証モードを選択するには、 管理 | 認証 ページに移動し、 一般設定 セクションまで下にスクロールします。 認証設定を変更できるのは システム管理者だけであることに注意してください。

2FA モード | 動作 |
|---|---|
任意 | ユーザーが自分のアカウントで 2FA を有効にするかどうかを決められるようにします。 これはデフォルト設定です。 |
必須 | すべてのユーザーに 1 週間以内に 2FA を設定することを求めます。 猶予期間は、"Mandatory" モードを有効にした時点 (既存ユーザーの場合)、またはユーザーが登録した時点 (新規ユーザーの場合) から始まります。 |
無効 | ユーザーは 2FA を設定できません。 |
重要な設定の保護
2 要素認証が有効になっている場合、2FA チェックに合格したユーザーは 1 時間以内に重要なユーザー設定を変更できます。 この期間が終了すると、ユーザーはこれらの編集を続行する前に、新しい 2FA 検証に合格する必要があります。
ユーザーが別の検証に合格するまでブロックされるアクションは次のとおりです。
ユーザープロファイル設定で 2FA を無効にする
ユーザーのパスワードとメールアドレスの変更
アクセストークンの生成
この動作により、ユーザーのアカウントにアクセスした攻撃者がユーザー設定を変更してさらなる損害を与えることを防ぐ保護層が追加されます。
この間隔の期間は、 TeamCity の 2FA 機密設定へのアクセス期間 内部プロパティを使用して変更できます。
個別のユーザーグループに 2FA を強制する
グローバル 2 要素認証モードが「オプション」の場合、個々の ユーザーグループに 2FA の使用を強制できます。 これを行うには、 teamcity.2FA.必須ユーザーグループキー 内部プロパティを追加し、その値を必要なグループキーに設定します。
2FA モードが必須のユーザーグループは、この要件をその子ユーザーグループと共有します。 この動作を使用して、複数のグループに対して一度に 2FA を強制できます。 これを行うには、新しいユーザーグループを作成し、そのキーを teamcity.2FA.必須ユーザーグループキー 内部プロパティに割り当て、ユーザーが 2FA を使用する必要があるすべての既存のグループの親としてこのグループを設定します。

必須の 2FA に切り替えたグループにすでにユーザーが存在する場合は、 teamcity.2fa.mandatory.user.group.grace.period 内部プロパティを、これらのユーザーの猶予期間が終了する必要がある日付に設定します。 そうしないと、2FA が設定されていないユーザーは TeamCity からロックアウトされます。 このプロパティは、 UNIX 時間形式(英語)の値をミリ秒単位で受け入れます (例: 1672753992000)。
過剰な承認リクエストの削減
TeamCity ユーザーが外部サービスのアカウントを使用してログインでき、組織のポリシーでこれらのサービスへのログインに 2FA が必要な場合は、TeamCity へのログイン時に追加の検証をスキップできます。
たとえば、ユーザーがすでに 2FA で保護された GitHub アカウントにログインしている場合は、追加の検証なしで GitHub 資格情報を使用して TeamCity にログインできるはずです。
TeamCity は、次のプロバイダーに対する冗長な承認リクエストの送信を自動的に回避します。
2FA が現在有効かどうかを報告しないプロバイダーについては、TeamCity が 2FA リクエストを送信するかどうかを手動で指定できます。 これを行うには、認証モジュール設定で 二要素認証をスキップする オプションを指定します。

この設定は次のモジュールで使用できます。