Upgrade to Pro — share decks privately, control downloads, hide ads and more …

GrafanaMeetup_AmazonManagedGrafanaのアクセス制御機能とマルチ...

 GrafanaMeetup_AmazonManagedGrafanaのアクセス制御機能とマルチテナント環境下でのアクセス制御について

高棹大樹

April 24, 2024
Tweet

More Decks by 高棹大樹

Other Decks in Technology

Transcript

  1. 1 Copyright (C) Nomura Research Institute, Ltd. All rights reserved.

    高棹 大樹 – Daiki Takasao NRI 金融基盤サービス部 • 金融機関様向けEKSを用いたマイクロサービス共通基盤 のインフラ担当 主な仕事 趣味 最近の困り事 • キャンプ • 筋トレ • 子供と遊ぶ(相手をしてくれる内に。。) • 飼っている猫が懐いてくれない
  2. 2 Copyright (C) Nomura Research Institute, Ltd. All rights reserved.

    はじめに ◼Grafanaをマルチテナント環境で使う際、アクセス制御しつつも開発エンジニアが自由にGrafana を触れる余地も残す(ベスト)プラクティスについてお話しさせて頂きます
  3. 3 Copyright (C) Nomura Research Institute, Ltd. All rights reserved.

    Amazon Managed Grafanaが持つアクセス制御機能 01 マルチテナント環境下でのアクセス制御プラクティス 02
  4. 4 Copyright (C) Nomura Research Institute, Ltd. All rights reserved.

    Amazon Managed Grafanaのアイデンティティ 1. Amazon Managed Grafanaが持つアクセス制御機能 ◼ユーザ ⚫ Grafanaにログインする個々人 ⚫ IAM Identity CenterもしくはSAML連携して使う前提であり、初回ログインで自動で作成される(手動でユーザを 作成する事はできない) ◼チーム ⚫ ユーザをチームに所属させて使う ⚫ 同じユーザを複数のチームに所属させる事が可能 ユーザ1 ユーザ2 Aチーム Bチーム ユーザをチームに所属させる 同一ユーザを複数チームに所属させる事が可能
  5. 5 Copyright (C) Nomura Research Institute, Ltd. All rights reserved.

    Amazon Managed Grafanaのオブジェクト 1. Amazon Managed Grafanaが持つアクセス制御機能 ◼フォルダ、ダッシュボード、パネルの階層構造を持つ フォルダA ダッシュボード パネル(グラフ等) パネル パネル ダッシュボード パネル パネル ・ ・ ・ フォルダB ダッシュボード パネル(グラフ等) パネル パネル ダッシュボード パネル パネル ・ ・ ・
  6. 6 Copyright (C) Nomura Research Institute, Ltd. All rights reserved.

    Amazon Managed Grafanaのロール 1. Amazon Managed Grafanaが持つアクセス制御機能 ◼Admin/Edit/Viewの3つのロールを持つ ◼ロールは各ユーザに1つづつ紐付く ◼ロールはチームには紐付けられない アクション Admin Edit View データソースの追加、編集、削除 ◦ × × ユーザ、チームの追加および編集 ◦ × × フォルダの追加、編集、削除 ◦ × × ダッシュボード・パネルの追加、編集、削除 ◦ ◦ × Explore機能の利用 ◦ ◦ × ダッシュボード・パネルの参照 ◦ ◦ ◦ ユーザ1 ユーザ2 Aチーム Bチーム Edit View Edit
  7. 7 Copyright (C) Nomura Research Institute, Ltd. All rights reserved.

    オブジェクト側でのアクセス制御設定 1. Amazon Managed Grafanaが持つアクセス制御機能 ◼フォルダとダッシュボードにアクセス制御設定を行う事が可能 ◼ユーザロールの権限レベルとオブジェクトの権限レベルで強い方が優先される ◼フォルダに設定したアクセス許可設定はフォルダ内のダッシュボードに継承される フォルダ ダッシュボード パネル(グラフ等) パネル パネル ダッシュボード パネル パネル アクセス許可設定 ユーザ2 View Can Edit Aチーム Can View View<EditなのでEdit権限で操作可能 ・ ・ ・ アクセス許可設定 継承 継承 アクセス許可設定
  8. 8 Copyright (C) Nomura Research Institute, Ltd. All rights reserved.

    オブジェクト側でのアクセス許可設定 1. Amazon Managed Grafanaが持つアクセス制御機能 ◼フォルダとダッシュボードに設定できるアクセス許可設定は以下の通り 特定のチーム(Aチーム or Bチーム or etc..) 特定のユーザ(ユーザ1 or ユーザ2 or etc..) Viewロールを持った全てのユーザ Editロールを持った全てのユーザ Can Admin Edit View
  9. 9 Copyright (C) Nomura Research Institute, Ltd. All rights reserved.

    Amazon Managed Grafanaが持つアクセス制御機能 01 マルチテナント環境下でのアクセス制御プラクティス 02
  10. 10 Copyright (C) Nomura Research Institute, Ltd. All rights reserved.

    実現したいこと 2.マルチテナント環境下でのアクセス制御プラクティス ◼1つGrafana(ワークスペース)上でマルチテナントのダッシュボードを一元管理したい → データソース設定や認証設定から開発エンジニアを解放 認知負荷軽減、管理の効率化 ◼他サービスのダッシュボードは参照したいけど、勝手に更新されるのはNG ◼許可無く開発エンジニアが勝手に本番環境のダッシュボードを更新するのはNG → 本番環境統制で必要(エンタープライズシステムだと特に)
  11. 11 Copyright (C) Nomura Research Institute, Ltd. All rights reserved.

    実現方法 2.マルチテナント環境下でのアクセス制御プラクティス ◼各テナントの管理単位(チーム)でGrafana内にチームとフォルダを作成 ◼開発エンジニアのユーザには一律Viewロールを付与 Aチーム用フォルダ Bチーム用フォルダ Aチーム ユーザ1 View ユーザ2 View Bチーム ユーザ3 View ユーザ4 View
  12. 12 Copyright (C) Nomura Research Institute, Ltd. All rights reserved.

    実現方法 2.マルチテナント環境下でのアクセス制御プラクティス ◼各チーム用フォルダに以下のアクセス許可設定を追加 ⚫ Viewロールを持った全てのユーザからのViewを許可 ⚫ 対応するチームからのEditを許可 ◼これで他チームのダッシュボードは参照可能にしつつも更新は防げる Aチーム用フォルダ アクセス許可設定 Aチーム Can Edit Aチーム ユーザ1 View ユーザ2 View Viewロールユーザ Can View Bチーム用フォルダ アクセス許可設定 Bチーム Can Edit Bチーム ユーザ3 View ユーザ4 View Viewロールユーザ Can View ダッシュボード ダッシュボード ダッシュボード ダッシュボード
  13. 13 Copyright (C) Nomura Research Institute, Ltd. All rights reserved.

    実現方法 2.マルチテナント環境下でのアクセス制御プラクティス ◼Adminロールを持った管理者ユーザが、チームからのユーザ追加/削除を行う事で、ユーザ単位での 本番環境用ダッシュボードへのアクセス統制が可能 Aチーム用フォルダ アクセス許可設定 Aチーム Can Edit Aチーム ユーザ1 View ユーザ2 View Viewロールユーザ Can View 管理者ユーザ Admin ダッシュボード ダッシュボード チームへの追加/削除でユーザ単位のアクセス統制が掛けられる
  14. 14 Copyright (C) Nomura Research Institute, Ltd. All rights reserved.

    まとめ ◼Grafana が持っているアクセス制御機能を使うことで、マルチテナントでもセキュアかつガバナンス を持った運用を行う事が可能! ◼チーム用フォルダ内であれば自由にダッシュボードを作成できる!