メニュー

デジタル庁GCASガイド

クラウドサービスの操作方法(AWS編)

2023/03/06 公開

本書は利用者がクラウドサービスを操作する際の利用方針や操作方法を理解するための文書である。
本件で言及する対象は、クラウド提供のサービス、クラウド提供のサービスで操作可能なコンポーネントの操作方法に限ることとし、それ以外の操作のためのログインについては本ドキュメントの対象外である。

クラウドサービスを操作する3つのパターン

以下のようにクラウド提供のサービスへのアクセスパターンを分類する。このパターンに従い運用を行い、かつ、ガバメントクラウドで提供されるゼロトラストサービスを活用することで、ブラウザからクラウドサービスにかけてのゼロトラストが達成できる。

表:01 クラウドサービスの操作方法

ユースケース認証ID操作インターフェースツール備考
クラウドサービスインフラの構築・設定(テンプレート/IaCファイルの適用時やリソースの変更)GCASユーザー(GCASの認証でSSO)IDE、コマンドラインツール、AWS Cloud9、AWS CloudShell(※)などAWS CDK
AWS Codeシリーズ、GitHubActions等(CICDを導入する場合)
・テンプレート/IaCファイルの適用時やリソースの変更時には、IaCツールであるAWS CDKなどのIaCツールを使用して実施すること。
・AWS CloudFormationやTerraformなども利用できるが、必須適用テンプレートがCDKであること、抽象化が行えること、
CSPのサポートを受けられることから、CDKで管理すると開発がスムーズである。
・IaCで管理しているコードは、AWS CodeシリーズやGitHubActionsなどのツールを、IDE等を経由して使い、CICDを行うことを推奨する。
AWS CLIテンプレート/IaCファイル、リソース、およびデータの参照時や、軽微な変更検証を行う際に利用する。
クラウドサービスインフラの構築・設定内容の参照(テンプレート/IaCファイル、リソースの設定内容及びデータの参照)GCASユーザー(GCASの認証でSSO)AWS マネジメントコンソール
(アプリランチャーやSSO用URLからアクセス)
テンプレート/IaCファイル、およびデータを視覚的に参照するとき
IDE、コマンドラインツール、AWS Cloud9、AWS CloudShell(※)などAWS CDK・マネジメントコンソールは設定内容の概観のために利用。
・テンプレート/IaCファイルは、パラメータなど設定内容も含め詳細確認用途、もしくは差分を確認する用途で利用。
AWS CLI・マネジメントコンソールではGUIとして捨象されてしまっているデータを参照したいとき。
・一括で大量の設定情報を抽出したいとき。
外部サービスとの連携(SaaS等)GCASユーザー(GCASの認証でSSO)AWS マネジメントコンソール
(アプリランチャーやSSO用URLからアクセス)
外部SaaSなどとAPIにて連携する際に利用する
AWS Systems Manager Agent+IAMロールIDE、コマンドラインツール、AWS Cloud9、AWS CloudShell(※)などAWS CLI・サーバーにSSM Agentをインストール。
・その上で、SSM Agentに対してIAMロールで必要な権限を付与し、サーバーとの連携を行う。
IAMユーザー(マシンアカウント用)原則禁止アクセスキー、シークレットアクセスキーセキュリティ上の問題から原則禁止となり、統制がかかっております。
利用しない連携方法にてご検討ください。
クラウド提供のサービス、クラウド提供のサービスで操作可能なコンポーネント以外の操作のためのログイン
(システムを、ハードウェアレイヤー、ミドルウェアレイヤー、アプリケーションレイヤー、ユーザーインターフェース(UI)レイヤー
としたとき、およそミドルウェアレイヤー以上を想定)
OSやミドルウェアのユーザー利用者認証利用システムの責任範囲であり、準拠すべきセキュリティ要件、
セキュリティポリシーに基づいて定めること
利用システムの責任範囲であり、準拠すべきセキュリティ要件、
セキュリティポリシーに基づいて定めること

※AWS CloudShellに関してはAWS CloudShell VPC environmentのみ利用可能

デジタル庁が提供するテンプレート/IaCファイルの適用

デジタル庁が提供する必須適用テンプレートなどのテンプレート/IaCファイルはAWS CDKで提供されるため、テンプレートの適用はAWS CDKを用いて実施すること。
適用したテンプレート/IaCファイルの参照はAWS マネジメントコンソールやAWS CLIなど任意の方法で実施できる。
テンプレート/IaCファイルについては、GCASアカウントを取得の上、GCASガイド(メンバー専用ページ)で公開されているガバメントクラウドテンプレート(メンバー専用ページ→ガバメントクラウドテンプレート/ポリシー→ガバメントクラウドテンプレート/ポリシーのダウンロードページ)を参照すること。
ただし、必須適用テンプレートはService Catalog上から適用することも可能である。詳細については、技術マニュアル「必須適用テンプレートについて(AWS編)」を参照。

テンプレート/IaCファイル、リソースの設定内容及びデータの参照

リソースの参照はAWSマネジメントコンソールでGUIにて確認をすることや、AWS CLIなどで設定内容を確認、もしくはAWS CDKやAWS CloudFormationなどの設定ファイルをコードで確認するなど、任意の方法で実施できる。

クラウドサービスの操作に活用できるツール

AWS CDK、AWSマネジメントコンソール、AWS CLI、AWS CloudShell VPC environment、それぞれのアクセス、ログイン、各種設定、参照、操作方法について以下で示す。

AWS Cloud Development Kit(AWS CDK)

AWS CDKはコードを用いてインフラを定義することができるIaCツールである。言語はJavaScript、TypeScript、Python、Java、C#が一般公開されており、開発者プレビューではGoがサポートされている。

 

AWSマネジメントコンソール

AWSマネジメントコンソールは、ユーザーや権限に加え、AWSの提供するマネジメントサービス、インスタンスやネットワークおよびストレージを作成して管理するための直感的なグラフィカル・インタフェースである。

[AWSドキュメント:AWS Management Console とは]
https://docs.aws.amazon.com/ja_jp/awsconsolehelpdocs/latest/gsg/learn-whats-new.htmlOpens in new tab

[AWSドキュメント:AWS マネジメントコンソールでサポートされているブラウザはどれですか?]
https://aws.amazon.com/jp/premiumsupport/knowledge-center/browsers-management-console/Opens in new tab

AWSマネジメントコンソールへのアクセス方法について、以下に説明する。

GCASシングルサインオン機能を利用したログイン方法

  • AWSアクセスポータルへの直接ログイン
    AWSアクセスポータル(図1)のURL情報が共有されている場合は、URLにアクセスすることでへ直接ログイン可能である。このURLはAWS Organizations単位で異なる。AWSアクセスポータルでログイン先のAWSアカウントとアクセス許可セットを選択後、AWSマネジメントコンソールにログイン可能である。

図:01 AWSアクセスポータル画面
図:01 AWSアクセスポータル画面

  • Google アプリランチャー画面のアイコン
    利用者は、ブラウザから https://www.google.comOpens in new tab へアクセスし、GCASアカウントを利用して「ログイン」をクリックする。ブラウザ右側にある、Googleアプリのランチャーを選択し、AWSなどの名称で表示されているアイコンと名称を確認し(図02)、クリックすることでIdCポータルへ遷移する。IdCポータルでログイン先のAWSアカウントとアクセス許可セットを選択後、AWSマネジメントコンソールにログイン可能である。

図:02 Googleアプリのランチャー画面

  • GCAS システム管理画面 に表示されるログインボタン
    GCASアカウント保有者がアクセス可能なCSP環境がGCASの「システム」管理画面から確認できる。システム一覧からアクセス先のシステム名を選択し、遷移した画面から「CSP環境」のタブを選択して、アクセスしたい環境をさらに選択すると、SSOリンクの欄にアクセス先のURLが表示されている(図03)。このURLへのアクセスでIdCポータルへ遷移する。IdCポータルでログイン先のAWSアカウントとアクセス許可セットを選択後、AWSマネジメントコンソールにログイン可能である。

図:03 GCAS上のSSOリンク表示画面

  • AWSマネジメントコンソールへの直接ログイン
    ルートユーザーおよびIAMユーザーは次のURLのAWSマネジメントコンソールにアクセスし、多要素認証後、ログインできる。
    https://console.aws.amazon.comOpens in new tab
     

AWSコマンドラインインターフェイス(AWS CLI)

AWS CloudShell

AWS CloudShellはブラウザベースのシェル環境である。Bash、PowerShell、Z shellなどを使用してAWS CLI コマンドを実行することができる。
[AWSドキュメント:AWS CloudShellとは]
https://docs.aws.amazon.com/ja_jp/cloudshell/latest/userguide/welcome.htmlOpens in new tab

AWS CloudShellはインターネット接続の制限ができないため、データを許可やログ取得なく環境の外部に送出できる仕様となっている。
そのためセキュリティ・ガバナンスの理由で統制がとれず、原則として使用を禁止しているが、AWS CloudShell VPC environmentのみ使用を許容している。
AWS CloudShell VPC environmentとはインターネット接続が制限できる利用システム側のVPC内でAWS CloudShellを起動できるものである。
[AWSドキュメント:Amazon VPCでのAWS CloudShellの使用]
https://docs.aws.amazon.com/ja_jp/cloudshell/latest/userguide/using-cshell-in-vpc.htmlOpens in new tab

AWS CloudShell VPC environmentの利用方法については以下のAWS公式ドキュメントを参照すること。
[AWSドキュメント:CloudShell の VPC 環境を作成する]
https://docs.aws.amazon.com/ja_jp/cloudshell/latest/userguide/creating-vpc-environment.htmlOpens in new tab

なお、運用にあたり制限事項があるため、以下のAWS公式ドキュメント内「運用上の制約」を参照すること。
[AWSドキュメント:Amazon VPCでのAWS CloudShellの使用]
https://docs.aws.amazon.com/ja_jp/cloudshell/latest/userguide/using-cshell-in-vpc.htmlOpens in new tab

AWS CloudShell VPC environmentを利用するにあたり、以下の留意事項を必ず確認の上、利用システムの責任において適切に対応しセキュリティを確保すること。

  • AWS CloudShell起動時にはプライベートサブネットを選択すること。パブリックサブネットの使用を希望する場合はインターネット接続が可能となるため、セキュリティに留意すること。
  • プライベートサブネットからのインターネット接続方式については適切に対処すること。
  • ファイルのアップロード、およびダウンロード機能が使用不可のため、データ授受方法については適切に対処すること。
  • OSのログ取得機能がないため、ログイン履歴取得、通信ログ取得等のOS操作を確認できる仕組みを実装すること。

改訂履歴

改訂年月日改訂理由
2023年03月06日新規作成
2023年03月27日CDK、CLIの利用方法、クラウドサービスのアクセス方法について、記載内容の拡充と用語の揺らぎの修正
2023年06月30日必須適用テンプレートのAWS Service Catalog利用に伴う修正
2023年11月27日AWSコマンドラインインターフェイス(AWS CLI)について、記載内容の修正
2024年3月1日AWSマネジメントコンソールについてSSO前後でアクセス方法を記載し、内容を修正
AWS CLIの利用についてアクセスキーの利用の原則禁止を追記
2024年3月29日GCASシングルサインオン機能利用開始後についてログイン方法を修正
2024年5月23日GCASシングルサインオン機能利用開始後のログイン方法について記載内容を修正
2024年7月19日クラウドサービスの操作方法及びテンプレート等について記載内容を修正
2024年10月31日GCASシングルサインオン機能利用開始に伴い以前のログイン方法についての記載を削除
2025年2月14日クラウドサービスを操作する3つのパターンについて、AWS CloudShellの記載内容を修正
AWS CloudShell VPC environmentの利用方法を追記
2025年07月25日テンプレートの名称変更に伴う修正