OS Login と OS Login 2 要素認証(2FA)が有効になっている仮想マシン(VM)インスタンスへの接続試行をモニタリングするには、OS Login の監査ログを表示します。これらの監査ログは常に有効になっており、データアクセス構成で無効にすることはできません。
Google Workspace Admin SDK を使用して、SSH 認証鍵の追加、削除、更新、POSIX 情報の削除など、OS Login 関連のイベントやアクティビティを追跡することもできます。
始める前に
-
まだ設定していない場合は、認証を設定します。認証とは、Google Cloud サービスと API にアクセスするために ID を確認するプロセスです。ローカル開発環境からコードまたはサンプルを実行するには、次のいずれかのオプションを選択して Compute Engine に対する認証を行います。
Select the tab for how you plan to use the samples on this page:
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
-
OS Login の監査ログを表示する
OS Login の接続試行リストを表示するには、Cloud Audit Logs に対してクエリを実行します。
このタスクに必要な権限
このタスクを行うには、次の権限が必要です。
- Logging / ログ閲覧者ロールまたは Project / 閲覧者ロール。
Google Cloud コンソールで、[ログ エクスプローラ] ページに移動します。
[クエリ] フィールドに次のクエリを入力します。
protoPayload.serviceName="oslogin.googleapis.com"
探しているイベントが 1 時間以上前に発生している場合は、時計のアイコンをクリックしてカスタム期間を入力し、カスタムの期間を設定します。
[クエリを実行] をクリックします。結果は、[クエリ結果] セクションに表示されます。
各結果の横にある
展開矢印をクリックすると、詳細情報が表示されます。OS Login の監査ログの種類とその説明については、OS Login の監査ログを確認するをご覧ください。
Cloud Audit Logs を表示するには、
gcloud logging read
コマンドを使用します。gcloud logging read --freshness=
TIME 'protoPayload.serviceName="oslogin.googleapis.com"'TIME
は、クエリを実行する時間で置き換えます。たとえば、1h
は、過去 1 時間のログエントリをクエリします。日付と時刻の形式については、gcloud topic datetimes をご覧ください。結果が表示されます。
OS Login の監査ログの種類とその説明については、OS Login の監査ログを確認するをご覧ください。
OS Login の監査ログを確認する
OS Login が有効になっている VM への接続試行の種類と、その接続試行を開始したユーザーを確認するには、監査ログの methodName
フィールドと principalEmail
フィールドを確認します。
protoPayload
セクションを開いて、接続試行のmethodName
フィールドを表示します。各methodName
フィールドの意味については、次の表をご覧ください。メソッド 接続タイプ 説明 google.cloud.oslogin.v1.OsLoginService.CheckPolicy
すべての OS Login 接続 VM への接続試行を示します。2 要素認証以外の接続の場合、正常なレスポンスは、ユーザーが VM に接続したことを示します。 2 要素認証接続の場合、接続の成功は、 CheckPolicy
呼び出しの成功とContinueSession
呼び出しの成功の両方によって示されます。google.cloud.oslogin.OsLoginService.v1.StartSession
OS Login の 2 要素認証接続 新しい 2FA 認証セッションを示します。 StartSession
呼び出しで、クライアントがサーバーに機能を宣言し、使用可能なチャレンジに関する情報を取得します。google.cloud.oslogin.OsLoginService.v1.ContinueSession
OS Login の 2 要素認証接続 認証セッションの継続を示します。クライアントは、前回の
StartSession
呼び出しまたはリクエストでサーバーから提案された本人確認方法を完了し、別の種類の本人確認を行います。次に、ContinueSession
メソッドはチャレンジまたはメソッドに対するレスポンスを受け入れ、認証試行を承認または拒否します。authenticationInfo
セクションを開いて、principalEmail
フィールドを表示します。principalEmail
フィールドには、VM に接続を試みたユーザーのメールアドレスが表示されます。
OS Login の監査ログのプロパティ
以下のセクションでは、監査ログのプロパティについて説明します。プロパティには、すべての監査ログに共通するプロパティと、CheckPolicy
、StartSession
、ContinueSession
メソッドに固有のプロパティがあります。
OS Login の監査ログの一般的なプロパティ
次の表に示すプロパティは、すべての OS Login の監査ログで共通です。
プロパティ | 値 |
---|---|
serviceName |
oslogin.googleapis.com |
resourceName |
監査ログが属するログイン リクエストを示すプロジェクト番号を含む文字列。例: projects/myproject12345 |
severity |
ログ メッセージの重大度。INFO 、WARNING など。重大度の詳細については、LogSeverity をご覧ください。 |
authenticationInfo.principalEmail |
メソッドが認証しているユーザーのメールアドレス。 |
request.numericProjectId |
Google Cloud プロジェクトのプロジェクト番号。 |
CheckPolicy
の監査ログのプロパティ
次の表に示すプロパティは、CheckPolicy
の監査ログに適用されます。
プロパティ | 値 |
---|---|
methodName |
google.cloud.oslogin.v1.OsLoginService.CheckPolicy |
request.@type |
type.googleapis.com/google.cloud.oslogin.v1.CheckPolicyRequest |
request.policy |
確認する権限。ユーザーに VM へのログインが許可されているかどうかを確認する場合は LOGIN 、ユーザーに VM の管理アクセス権限があるかどうかを確認する場合は ADMIN_LOGIN 。 |
response.success |
LOGIN または ADMIN_LOGIN request.policy チェックの結果。ユーザーが指定されたポリシーに対して承認されているかどうかに応じて、true または false 。 |
StartSession
の監査ログのプロパティ
次の表に示すプロパティは、OS Login 2FA が有効になっている VM の StartSession
の監査ログに適用されます。
プロパティ | 値 |
---|---|
methodName |
google.cloud.oslogin.OsLoginService.v1.StartSession |
request.@type |
type.googleapis.com/google.cloud.oslogin.OsLoginService.v1.StartSessionRequest |
request.supportedChallengeTypes |
選択可能な本人確認方法または 2FA 方式のリスト。 |
response.authenticationStatus |
セッションのステータス。Authenticated 、Challenge required 、Challenge pending のいずれか。 |
response.sessionId |
セッションを一意に識別する ID 文字列。このセッション ID は、シーケンス内の ContinueSession の呼び出しに渡されます。 |
response.challenges |
この回の認証で試みることができる本人確認方法のセット。これらの本人確認方法のうち最大 1 つが開始され、ステータスが READY になります。他の方法は、提案された最初の本人確認方法の代わりにユーザーが指定できるオプションとして提示されます。 |
ContinueSession
の監査ログのプロパティ
次の表に示すプロパティは、OS Login 2FA が有効になっている VM の ContinueSession
の監査ログに適用されます。
プロパティ | 値 |
---|---|
methodName |
google.cloud.oslogin.OsLoginService.v1.ContinueSession |
request.sessionId |
前のセッションを一意に識別する ID 文字列。このセッション ID は StartSession 呼び出しから渡されます。 |
request.@type |
type.googleapis.com/google.cloud.oslogin.OsLoginService.v1.ContinueSessionRequest |
request.challengeId |
開始または実行する本人確認方法を識別する ID 文字列。この ID は、StartSession レスポンスの response.challenges 呼び出しから返されたチャレンジ タイプに属している必要があります。 |
request.action |
チャレンジを完了するためのアクション。 |
response.authenticationStatus |
セッションのステータス。Authenticated 、Challenge required 、Challenge pending など。 |
response.challenges.status |
SUCCESS は、ユーザーが VM に正常に接続されたことを示します。 |
response.challenges |
この回の認証で試みることができる本人確認方法のセット。これらの本人確認方法のうち最大 1 つが開始され、ステータスが READY になります。他の方法は、提案された最初の本人確認方法の代わりにユーザーが指定できるオプションとして提示されます。 |
次のステップ
- Logging のクエリ言語で、OS Login 監査ログのクエリをカスタマイズする方法について学習する。
- Compute Engine での Linux VM への SSH 接続の仕組みを学習する。