5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

OCIコンソールのログイン成功/失敗履歴を確認する

Last updated at Posted at 2025-03-27

はじめに

とあるニュースでOCIのコンソールへのログイン成功/失敗の履歴を確認する方法を知りたい人もいるのでは?ということで、ログインの成功/失敗履歴の確認方法を簡単にまとめておきます。

なお、時刻は全てUTCで現時点ではたぶん変更できません。

ログインレポートの確認方法

OCIコンソールにログインし、左上のハンバーガーメニュー(横の三本線)から「アイデンティティとセキュリティ」→「ドメイン」を選択します。

image.png

ドメイン一覧が表示されますので、現在のドメインに表示されている「ドメイン」を選択します。基本的にはデフォルトドメイン(Default)を確認すればよいと考えてます。1

image.png

左ペインの「レポート」を選択します。

image.png

選択したドメイン内のレポートが表示され、成功試行数と失敗試行数が表示されます。現在このレポートは非推奨になってますが、一応2025/3/28時点では機能しているように見えます。

image.png

  • 成功レポート

image.png

  • 失敗レポート

04-login-failure.png

監査ログの確認

レポートは非推奨になっておりOCIロギングレポートから確認してね、という注意があがっているので、そちらの確認方法も記載しておきます。
監査ログのガイドは 監査ログ になります。

ハンバーガーメニューから「監視および管理」→「監査」を選択します。

image.png

監査ログをクエリする画面が表示されます。

image.png

イベントタイプを「Login」と入力すると「com.oraclecloud.IdentitySignOn.InteractiveLogin」に補完されるのでそれを選択し、「時間によるフィルタ」も必要なフィルタに設定します。

image.png

次図のようにログイン履歴が確認できます。ステータスで成功(200)・失敗(400)が判断できます。
また、右のV型のマークをクリックすることで詳細を確認することができます。

image.png

レポートのJSONへのエクスポートも可能です。

監査ログ・レポートの作成

IAMレポートの作成チュートリアルがこちらで紹介されています(チュートリアルは日本語訳もありますが、クエリも日本語に訳されているので英語版を紹介します)。

このチュートリアルに「監査ログ・レポート(Audit Log Report)」の例がありますので、そちらを出力してみます。

ハンバーガーメニューから「監視および管理」→「検索」を選択します。

20-logging.png

「拡張モードの表示」を選択します。

image.png

次図のような検索窓が表示されます。

image.png

検索窓に次のクエリを追加します。各自のテナンシにクエリするのでその部分(上記の検索窓で出ている部分)は残します。視認性をあげるため改行入れてますが、入れても入れなくても構わないです。また、チュートリアルの構文はorを多用していて見辛いのでinに変えたりしています。

|
where data.additionalDetails.eventId in 
(
'sso.app.access.success', 
'sso.app.access.failure', 
'sso.session.create.success', 
'sso.authentication.failure', 
'sso.session.delete.success', 
'admin.user.create.success', 
'admin.user.activated.success', 
'admin.user.deactivated.success', 
'admin.user.update.success', 
'admin.user.delete.success', 
'admin.user.password.reset.success', 
'admin.me.password.reset.success', 
'admin.me.password.change.success', 
'admin.policy.create.success', 
'admin.rule.create.success', 
'admin.policy.update.success', 
'admin.rule.update.success', 
'admin.passwordpolicy.create.success', 
'admin.passwordpolicy.update.success', 
'admin.grant.create.success', 
'admin.grant.delete.success', 
'admin.group.create.success', 
'admin.group.add.member.success', 
'admin.group.remove.member.success', 
'admin.group.delete.success', 
'admin.app.create.success', 
'admin.app.update.success', 
'admin.app.delete.success', 
'admin.app.activated.success', 
'admin.app.deactivated.success', 
'notification.delivery.success', 
'notification.delivery.failure', 
'sso.auth.factor.initiated', 
'sso.bypasscode.create.success'
)
|
select time_format(datetime, 'yyyy-MM-dd hh:mm:ss z') as Date, 
data.additionalDetails.domainDisplayName as Domain, 
data.additionalDetails.actorName as Actor, 
data.additionalDetails.eventId as "Event Id", 
data.message as "Event Description", 
data.additionalDetails.adminResourceName as Target

次図のようになる想定です(改行ないバージョン)。

image.png

「検索」を実行すると次のようにレポートが出力されます、時間は適宜修正ください。
クエリを保存しておくことで、いつでも同様のクエリが実行可能となります。

image.png

チュートリアルにはダッシュボードにウィジェットを追加する方法とかも載っているので、毎回確認したい方は追加してみてはと考えてます。

まとめ

何らかの理由でOCIのコンソールへ不正なログインがあったかも?と思われる場合にはこちらで確認してみると良いと思います。30分くらいで書いたので色々と足りないこともあるかもしれませんので、コメント等頂ければと存じます

監査ログ・レポートはチュートリアルでの紹介のため、こちらがすべてではないと考えてますが、「怪しい動き」はある程度把握できるのではないかと考えてます。
例えばログイン試行している IP アドレスを引っ張りたい、というときにはクエリに次の文を追加すればクライアントIPも確認することができます(もちろん監査ログの方でも確認できますが)。

data.additionalDetails.clientIp as clientIp
  1. デフォルトドメインの説明 image.png

5
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?