2020年9月14日 のアップデートで、CloudWatch がダッシュボードの共有をサポートするようになりました。
AWSネイティブの機能だけで監視ダッシュボードを作成する場合、これまではダッシュボードの閲覧は適切なIAMポリシーの権限を持つユーザーに限定されていました。
普段オペレーションを行っているメンバー "以外"(例えば、組織の横あるいは上)に今のシステム状況を報告したい、といった場面があると思います。そうしたときにダッシュボードをサクッと提示できると便利ですよね。これまでは自分のスクリーンを共有するか、彼らにIAMユーザーを払い出すかなどの方法を採っていたと思いますが、これからはダッシュボード(を作成したAWSアカウント)に直接アクセスできない人々にも、簡単にダッシュボードをシェアできるようになりました。
ダッシュボードの共有範囲
ダッシュボードの共有範囲設定については、以下の3種類のやり方が提供されています。
- 一般公開(リンクを知っていれば誰でも閲覧可能)
- メール/パスワード ベースの認証(ダッシュボードの所有者から招待)
- SSO ベース
認証をサポートしているのが非常に良いですね。積極的に一般公開したいケースは少数派だと思いますし、ID/パスワード方式とSSOがサポートされているのは必要十分なサポートという感じがします。
ダッシュボードを共有してみる
試しに、自分の手元で作成したダッシュボードをメールベースの方式で共有してみました。
まずは共有したい CloudWatch のダッシュボードを開きます。メニューに「Share Dashboard」というUIが追加されています。
クリックすると共有の方法(Publicly/ Username and passoword/ SSO)を選択する画面に飛びます。今回は "Username and password protected dashboard" を選択しています。
上の図を見ると、CloudWatch Logs の共有を行うかどうかのチェックボックスがあります。ログはセンシティブな情報が含まれるケースも多いので、メトリックとは別に閲覧許可を設定できるようにしているのでしょう。シェアを有効化すると CloudWatch のマネジメントコンソール上では以下のような表示が出ます。ダッシュボードのURLが払い出されました。
招待された側には次のようなメールが届きます。
なお、ダッシュボードのURLはこのメールに含まれていません。管理者側からURLを教えてもらう必要があります。
ダッシュボードのURLにアクセスすると、ログインを要求する画面が出ます。
正しく入力すると、パスワード再設定を促されるので、指示に従います。
改めてアクセスすると、見慣れた CloudWatch ダッシュボードが閲覧できます。
だいたい予想通りの流れですね。すんなり共有できました。
そのた
「一般公開」の場合でしか検証していませんが、 iframe を使って別の Webサイトに共有したダッシュボードを組み込むことができました。
認証付きの場合にどうなるかは未検証ですが、例えば社内に管理者ポータルを持っているシステムがある場合など利用できるかもしれませんね。
おわりに
個人的には、この手のダッシュボードを本当に有効活用していくなら「いつでも見える場所にある」ことが重要だと思ってます。データを観察する習慣がないところにデータ活用の余地もありません。必要なときだけ見る/見せるの運用だと、好ましい習慣が根付きづらいと思います。
これまでの CloudWatch ダッシュボードでは「IAMを払い出す」というセキュリティのハードルがあったため、手軽にシェアする運用を採りづらい組織もあったと思いますが、今回のアップデートでそうした不便さが解消できるのではないかと思います。