利用可能なプラン: Business、Enterprise (Accelerate ライセンス)
Miro の AWS Cloud View アプリを使うと、AWS アカウントからデータを取り込み、AWS インフラストラクチャの図を生成できます.
✏️ (Enterprise) CloudView インテグレーションは Accelerate ライセンスでのみ利用できます。詳しくは Enterprise ライセンスについて をご覧ください。
この図を生成する方法は 2 つあります:
- クロスアカウントロールの紐付け: クロスアカウントロールを使用して AWS アカウントを Miro に接続し、AWS アカウントを自動的に可視化します
- JSON ファイルのアップロード は AWS CLI(コマンドラインインターフェイス)でスクリプトを実行して生成された JSON ファイルをアップロードします
クロスアカウントロールの紐付け
Miro はクロスアカウントロールを使用して、お客様の AWS アカウントに安全にアクセスします。Miro がアクセスするために、AWS アカウント側で Miro 専用の ReadOnly ロールを作成する必要があります。作成したロールの ARN を使って Miro と AWS アカウントを接続できます。
以下の手順に従って AWS Cloud View アプリを使用します:
- Miro の ツールバー下部にあるツール、メディア、インテグレーション(+)アイコンをクリックし、AWS Cloud Viewを検索します。
- 検索結果からアプリを起動します。
- モーダルダイアログで、タブクロスアカウントロールのリンクを選択します。
クロスアカウントロールのリンク - ダイアログの手順に従って、AWS コンソールで新しいクロスアカウントロールを作成します。
- AWS でロールを作成したら、Role ARN フィールドにそのロールの ARN を入力します。
AWS で ARN フィールドを見つける場所 - 追加する新しい AWS アカウントに名前を付けます。
- 「追加してインポート」をクリックします。
- 最近追加した AWS アカウントは、アカウント一覧が表示される次の画面に表示されます。
AWS アカウントを選択 - 可視化したいアカウントを選択し、次へをクリックします。
- 可視化したいリージョンを選択します。複数のリージョンを選択すると、可視化の処理に時間がかかることがあります。
インポートするリージョンを選択 -
次の画面で、必要に応じてリソースの種類またはタグで図にフィルターを適用します。(図を作成した後は、コンテキストメニューからフィルターを適用または編集できます。)
💡 フィルターで図のサイズを小さくできます。図が小さいほど、生成が速く、操作しやすくなります。
このステップでは、次の2種類のフィルターを適用できます:
- リソース:例として「EC2 インスタンス」を選択すると、その AWS アカウント内の EC2 インスタンスのみが表示されます。
- タグ:AWS リソースにタグが付与されている場合、リソースフィルターに加えてタグ(キーと値のペア)フィルターを使用できます。例:タグキー「Owner」を検索し、値として「CheckoutStream」を選択します。
- 図を作成するには 可視化 をクリックします
AWS アカウントの図が生成されます。
Cloud View アプリで生成された AWS のインフラ構成図の例
JSON ファイルのアップロード
AWS CLI(コマンドラインインターフェイス)でスクリプトを実行し、読み取り専用の権限でクラウドリソースのデータを安全に JSON ファイルに保存できます。
AWS Cloud View を使って Miro 上で AWS インフラを可視化したら、作成された図を編集できます。接続を追加したり、付箋などの図形やオブジェクトを追加したり、AWS Cost Calculator アプリを使って新しい設計で発生するコストを確認したりできます。
JSON ファイルを使って AWS Cloud View アプリを利用するには、次の手順に従ってください:
- Miro のツールバー下部にあるツール、メディア、インテグレーション(+)アイコンをクリックし、AWS Cloud View を検索します
- アプリを起動します。
- モーダルダイアログから、AWS でスクリプトを実行するための環境をセットアップする手順に従います。
JSON ファイルのアップロード
✏️ 進める前に、お使いのマシンに Node.js と AWS CLI(コマンドラインインターフェイス)がセットアップされている必要があります。
- ターミナルで該当する AWS プロファイルを選択します。
- コマンドをコピーして、ターミナルで実行します。
コピーしたコマンドをターミナルで実行します - AWS リソースのデータを含む JSON ファイルが生成されます。
- 同じモーダルダイアログ内で JSON ファイルをアップロードします。
- Miro が AWS インフラストラクチャの図を生成します。
Cloud View アプリで生成された AWS インフラストラクチャ図の例
💡 Miro の CloudView アプリで AWS アイコンの色を直接変更できます。このオプションは 2025 年以前のアイコンでは利用できません。
よくある質問
セキュリティー
Miro にアクセス権を付与するための新しい AWS ロールを作成する際は、Cloud View モーダルで提供されるリンクを使用します。このリンクには Account ID と External ID の両方が含まれています。External ID は内部 ID と Miro が管理する秘密鍵を一方向性暗号方式で組み合わせて生成されます。これにより、各 Miro organization は固有の External ID を持ち、組織外の誰かがあなたの ID を偽ってあなたの AWS infrastructure にアクセスすることはできなくなります。
External ID は AWS によって管理される仕組みで生成されるハッシュで、接続があなたの Miro organization に限定されることを保証します。
Role ARN の割り当て
External ID に加えて、AWS 環境に接続してリソースをスキャンするには、作成したロールの Role ARN を割り当てる必要があります。Role ARN の割り当ては完全にお客様の責任であり、AWS の管理者が管理します。管理者は誰に Role ARN を割り当てるかを決定できるため、ロールへのアクセスを制御できます。同じ Role ARN を複数の Miro ユーザーに割り当てることができ、Role ARN と該当する Miro 組織の両方が割り当てられている人は AWS 環境に接続できます。ただし、このアクセスは各認証時に External ID を検証することで、その特定の Miro 組織に厳密に限定されます。
お客様のセキュリティーに関する責任
Cloud View を使用する際、AWS リソースのセキュリティーを維持するため、次の責任事項にご注意ください:
- 組織メンバーを制限する: より広いアクセスを付与する場合は、クラウドの可視化専用にアカウント内で専用の Miro 組織を作成することをおすすめします。組織メンバーの数を制限することで、権限のある特定のユーザーのみが機密性の高いクラウド情報にアクセスできるようにできます。
- Role ARN の割り当てに注意する: 大規模な Miro 組織にアクセスを付与する場合は、作成したロールの ARN をどのように割り当てるかに注意してください。アクセスが必要なユーザーにのみ ARN を割り当ててください。この判断はお客様次第です。たとえば、メンバーの少ない Miro 組織には広めにアクセスを許可し、テスト用の AWS アカウントに対しては大規模な Miro 組織に限定してアクセスを許可する、といった運用も考えられます。
これらの運用を実践し、Miro の安全なアクセスフレームワークを活用することで、Cloud View を安心して利用し、AWS リソースを管理できます。
クロスアカウントロールの紐付け
- Athena 名前付きクエリ
- Auto Scaling グループ
- CloudTrail トレイル
- CloudWatch メトリクスアラーム
- CloudWatch メトリクスストリーム
- DynamoDB テーブル
- EC2 インスタンス
- EC2 VPC
- EC2 VPC エンドポイント
- EC2 サブネット
- EC2 ルートテーブル
- EC2 インターネット ゲートウェイ
- EC2 NAT ゲートウェイ
- EC2 トランジット ゲートウェイ
- EC2 ボリューム
- EC2 ネットワーク ACL
- EC2 VPN ゲートウェイ
- EC2 ネットワーク インターフェイス
- ECS リソース
- EFS ファイルシステム
- ElastiCache クラスター
- ELBv2 ロードバランサー
- ELBv2 ターゲットグループ
- ELBv1 ロードバランサー
- EKS クラスター
- LAMBDA 関数
- Redshift クラスター
- RDS インスタンス
- RDS クラスター
- RDS Proxy
- Route 53 ホストゾーン
- S3 バケット
- SNS トピック
- SQS キュー
JSON アップロード
必要に応じてロールにカスタムポリシーを設定し、Miro のアクセスを特定のリソースやリージョンに制限できます。Miro はデフォルトでこのページに記載されているリソースをスキャンします。カスタムポリシーを設定している場合、スクリプトはアクセス権のある範囲内のみをスキャンします。
アプリをお客様のインフラに対して実行すると、アプリがリソースをスキャンしている間のみ、サービスのクォータの一部を消費します。リソースのスキャンは、新しい AWS アカウントをリンクしたとき、または AWS CLI でスクリプトを実行して JSON 出力を生成したときに行われます。通常、インフラに高負荷がかかっていない時間帯にスキャンすることをお勧めします。
代わりに、AWS CLI スクリプトで --call-rate-rps を使用して、1 秒あたりのリクエスト数を低く設定できます。例えば、--call-rate-rps 1 を指定してスクリプトを実行すると、サービスへのリクエストは 1 秒あたり 1 回に制限され、公平な利用が保たれます。
このスクリプトは指数バックオフ戦略を採用しており、失敗したリクエストを待ち時間を段階的に増やしながら再試行します。これは AWS が推奨する標準的な方法です.