【和訳】Azure Cloud ShellでInSpecが利用できるようになりました!
この記事は1年以上前に投稿されました。情報が古い可能性がありますので、ご注意ください。
本稿は InSpec now available in Azure Cloud Shell 2018/5/23 の和訳です。
先々週また楽しいChefConfを開催しました!新しく追加したたくさんの自動化ツールについて嬉しい発表を次々にして参りました。また、Chef Automate自体もAutomate 2.0にアップグレードしたことを発表できました。さらに、Chef Softwareを今まで以上にMicrosoft Azure Platformと緊密に統合できることを発表しました。今ではInSpecをAzure Cloud Shell の一部として利用することができます。これにより、Cloud Shellを利用している人ならだれでも、簡単に自分のブラウザから直接InSpecコンプライアンススキャンが実行できるのです!
Azure Cloud Shellは、どこからでも、クラウドでホストしている認証されたブラウザベースなシェルを通してAzureに接続することを可能にするものです。Azure Cloud Shellは、各ユーザアカウントに割り当てられ、各セッションで自動的に認証されます。Azure Portal、shell.azure.com、Azure mobile app、Azure docs (例: Azure CLI 2.0)、またはVS Code Azure Account extensionなど、複数のアクセスポイントから近代的なコマンドラインが利用できます。
Azure Cloud Shell上でInSpecを利用するのはとても簡単です!bashプロンプトからInspecを呼び出すだけでよいのです!
InSpecは、Cloud ShellのAzure Managed Service Identity システムを活用し、アクセス可能なすべてのサブスクリプション上のAzureリソースに瞬時にアクセスできるようにします。このブログで使用する例はすべてGithub https://github.com/jquick/azure_shell_inspec_demo でご覧になれます。
後述のユースケースでは、サブスクリプションIDを環境変数にエクスポートしています。
Azureリソースプロファイルで inspec exec [your profile] -t azure://[your subscription id]
を呼び出すだけで、サブスクリプション上のリソースグループをスキャンすることができます。
この例では、初めはスキャンするリソースグループの名前を間違えているので、テストは失敗します。正しいリソースグループ名を指定するなら結果を出力します。
次の例では、リソースグループ内のVMリソースにもっと詳細なスキャンにかけます。
チームが必要とする仕様に沿ってデプロイされていることを検証するために、複数のVMリソースattributesのシステムスキャンをします。InSpecスキャンの結果は、このVMリソースでコンプライアンスを実現するには修正が必要だということです。
最後の例では、Cloud ShellでInSpecを実行し、適当な権限を提供すれば、環境内のシステムのリモートスキャンもできることを表しています。
ここでは、Ubuntu 16.04 VMに対してDevSec Linux Baselineを実行しています。これは空のVMであり、Chef Cookbookで修正することができます。
始めるには
https://shell.azure.com で今すぐ Azure Cloud Shell を使い始めることができます!
Azure Cloud Shell 上で InSpec をお楽しみいただければ幸いです!近い将来、Cloud Shell に他のツールも追加していく予定です。
もっと知りたい方は:
InSpecとAzureの併用についてもっと知りたい方は、こちらをご覧ください: