SAPCPサブアカウントの監査ログを取得する
はじめに
SAPCPサブアカウントのログイン履歴等のログを取得する仕組みを実装する機会があり、その際の実装方法や手順について、備忘録として記載します。
実装環境
・Neo環境
・Windows10
目次
1. 実装方法の概要
2. 実装の手順
2-1. OAuthアカウント作成
2-2. アクセストークン取得
2-3. 監査ログ取得
さいごに
参考
1. 実装方法の概要
SAPが提供しているプラットフォームAPI「The audit log retrieval API」を使用して、ログを取得します。
今回は、PC端末から「The audit log retrieval API」を実行し、対象のサブアカウントの監査ログをテキストファイルで取得する方法をご紹介します。
2. 実装の手順
大まかな実装の手順としては、「OAuthアカウント作成 →アクセストークン取得 →監査ログ取得」となります。
2-1. OAuthアカウント作成
① Cockpitにて、対象のサブアカウントへログインし、[Security] > [OAuth]を開く。
② [Platform API]タブをクリックする。
③ [Create API Client]をクリックする。
④ Audit Log Serviceのチェックボックスをクリックする。
⑤ [Save]をクリックする。
⑥ 表示される『client ID』と『client Secret』をメモしておく。
(2-2. アクセストークン取得にて使用)
⑦ [OK]をクリックする。
2-2. アクセストークン取得
① Cockpitにて、対象のサブアカウントへログインし、『HOST』と『ACCOUNT_NAME』をメモしておく。
(アクセストークン取得時に使用)
② PC端末のコマンドプロンプトを起動し、下記を実行する。
CURL -X POST -u "【OAUTH_NAME】:【OAUTH_PASSWORD】" "【ACCESS_TOKEN_URL】?grant_type=client_credentials"
項目 | 値 |
---|---|
【OAUTH_NAME】 | 2-1-⑥にてメモした『client ID』 |
【OAUTH_PASSWORD】 | 2-1-⑥にてメモした『client Secret』 |
【ACCESS_TOKEN_URL】 | https://api.【HOST】/oauth2/apitoken/v1 |
【HOST】 | 2-2-①にてメモした『HOST』 |
③ 取得した『ACCESS_TOKEN』をメモしておく。
※『ACCESS_TOKEN』の末尾が「\u003d」の場合、「=」へ置換する。
2-3. 監査ログ取得
① PC端末のコマンドプロンプトにて、下記を実行する。
・ログを整形せずに取得する場合
CURL -G -H "Authorization: Bearer 【ACCESS_TOKEN】" -H "accept: application/json" "【AUDIT_LOG_URL】"
・ログをCSV形式で取得する場合
CURL -G -H "Authorization: Bearer 【ACCESS_TOKEN】" -H "accept: application/json" "【AUDIT_LOG_URL】" | jq -r ".value[] | [.Uuid, .Category, .User, .Tenant, .Account, .Application, .Time, .Message, .InstanceId, .FormatVersion] | @csv"
項目 | 値 |
---|---|
【ACCESS_TOKEN】 | 2-2-③にてメモした『ACCESS_TOKEN』 |
【AUDIT_LOG_URL】 | https://api.【HOST】/auditlog/v1/accounts/【ACCOUNT_NAME】/AuditLogRecords |
【HOST】 | 2-2-①にてメモした『HOST』 |
【ACCOUNT_NAME】 | 2-2-①にてメモした『ACCOUNT_NAME』 |
さいごに
監査ログ取得時に、取得件数や特定時刻のログなどを指定することも可能です。
また、2-2〜2-3の処理を記載したbatファイルを指定のタイミングで実行するようにスケジューリングすることで、監査ログファイルを指定のタイミングで自動取得することができます。
参考
Author And Source
この問題について(SAPCPサブアカウントの監査ログを取得する), 我々は、より多くの情報をここで見つけました https://qiita.com/kobayashim_21/items/2d345a1a270e3e5a04db著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .