再認証を構成する

IAP の再認証を使用すると、リソース所有者や Google Cloud 管理者は、IAP で保護されたリソースにアクセスする前に、認証済みのエンドユーザーの再認証を義務付けることができます。

再認証の設定の管理

再認証の設定は、次の方法で管理できます。

  • ログイン: ユーザーがログアウトして再度ログインしようとする動作を再現します。ほとんどの場合、エンドユーザーはパスワードを再入力する必要があります。
  • パスワード: エンドユーザーはパスワードの再入力を求められます。
  • セキュリティ キー: エンドユーザーはセキュリティ キーにタッチするよう求められます。

詳しくは、IapSettings をご覧ください。

再認証ポリシーの設定

ReauthSettingsIapSettings の一部であるため、階層内の複数のリソースタイプに設定できます。他の IAP 設定では階層内の最下位のリソースが優先されますが、有効な再認証の設定はポリシータイプによっても異なります。

再認証の設定に使用できるポリシータイプは 2 つあります。

  • 最小: ポリシーは、階層の下の他のすべてのリソースに対する最小値として機能します。有効なポリシーは、これと同じか、それ以上に厳格に設定できます。
  • デフォルト: リソースに他のポリシーが設定されていない場合、設定した再認証ポリシーが有効なポリシーとなります。

ポリシータイプ構成を使用して、ポリシータイプを Minimum に設定することで、組織全体またはフォルダのポリシーを設定できます。

再認証方法が異なる階層構成の場合は、PasswordSecure KeyLogin メソッドに変換します。

例: 次のフォルダとリソースの IapSettings の例では、フォルダ ポリシーはより厳格であり、優先されるポリシーであるため、有効な再認証ポリシーはフォルダ ポリシーと一致します。

フォルダIapSettings:

accessSettings:
  reauthSettings:
    method: 2  # Password
    maxAge:
      seconds: 3600  # 1 hour
    policyType: 1  # Minimum

リソースIapSettings:

accessSettings:
  reauthSettings:
    method: 2  # Password
    maxAge:
      seconds: 7200  # 2 hours
    policyType: 1  # Minimum

MaxAge

MaxAge パラメータを使用して、エンドユーザーが再認証を行う頻度を秒単位で指定します。たとえば、1 時間の再認証ポリシーを設定するには、次の例のように秒単位を 3600 に設定します。

accessSettings:
  reauthSettings:
    method: 2  # Password
    maxAge:
      seconds: 3600  # 1 hour
    policyType: 1  # Minimum

再認証の認証情報について

再認証に成功すると、IAP はエンドユーザーのブラウザに Cookie を作成します。類似したアプリの使用時に頻繁に再認証が行われないようにするため、Cookie は最上位のプライベート ドメインに設定され、そのプライベート ドメイン全体で有効になります。

たとえば、foo.example.com は IAP で保護されたリソースで、IAP 再認証ポリシーを持ちます。再認証に成功すると、IAP は、最上位のプライベート ドメインである example.com に Cookie を設定します。bar.example.come などの同じ最上位のプライベート ドメインのアプリは、同じ再認証の認証情報を使用します。認証情報が有効であれば、ユーザーに再認証を求めるメッセージは表示されません。

myapp.appspot.com のような URL の場合、appspot.com はパブリック ドメインであるため、最上位のプライベート ドメインは myapp.appspot.com になります。

既知の制限事項

  • 再認証はブラウザフローでのみサポートされています。プログラムによるユーザー アカウントへのアクセスはサポートされていません。たとえば、モバイルアプリやデスクトップ アプリでは、再認証を必要とするリソースにアクセスできないため、ユーザーを再認証する方法はありません。
  • サービス アカウントと IAP-TCP は、再認証の要件から除外されます。
  • 再認証は、IAM メンバータイプ allUsers では機能しません。
  • Google 以外の ID プロバイダを使用している場合は、再認証が想定どおりに機能しない可能性があります。
  • 再認証を必要とするリソースにアクセスできないため、再認証では Identity Platform を介した外部 ID はサポートされていません。