【AZ-900】「セキュリティ、プライバシー、コンプライアンス、信用」についての整理

## 本記事の目的
* 本稿はAZ-900を受験するにあたり参考とした教材「合格対策 Microsoft認定 AZ-900:Microsoft Azure Fundamentalsテキスト&問題集」について学習した内容を、自身の備忘録としてまとめたものです。
    * 参考(amazon url)：[合格対策 Microsoft認定 AZ-900:Microsoft Azure Fundamentalsテキスト&問題集](https://www.amazon.co.jp/dp/4865942319/) 
* AZ-900は2020年11月9日に試験内容が変更されており(詳しくは[公式サイト参照](https://docs.microsoft.com/ja-jp/learn/certifications/exams/az-900))、上記本は2020年3月8日時点での内容のため、章の構成が最新状況と異なります。
* しかし、求められているスキルを確認すると、**求められる内容自体に大きな変化はない** ため、こちらの参考書は未だ有効であると判断しました。
    * 試験内容を日本語訳した記事もQiitaで作成しました。→ [【AZ-900】試験範囲の変更内容の翻訳【2020年11月9日更新内容】](https://qiita.com/picato0511/items/114693650c9eb062c0f5)
* この記事を参考にされる方は、上記背景をよくご理解の上、ご活用ください。

## Azureでのネットワークセキュリティ

* 通信の暗号化
* サブネット分離
    * 同じ仮想ネットワーク内で、webサーバー用の仮想マシンとDBサーバー用の仮想マシンをサブネットで分離するなどが可能
    * 分離したサブネット間は、ネットワークセキュリティグループ(NSG)またはAzure Firewallで通信を制限する
* Azure DDoS Protection
    * 様々なweb上のリソースやサービスをDDoSから守る
    * Azureが常時DDoS攻撃を監視しており、ユーザー側で対処すること無くリスクを軽減する

## Azure ID サービス

* Azure Active Directory(AAD)
    * クラウドに認証と承認の枠組みを提供する
        * 認証：「自分が誰であるか」を証明する手続き。例：サインイン
        * 承認：「自分に何ができるか」を確認する手続き。例：(何かしらのサービスへの)アクセス可否の判断
    * シングルサインオンの役割を果たしており、ユーザーがAADにサインインすることで、その他のサービスにもサインレスでアクセスできる
* Azure Connect
    * 企業がオンプレミスで利用している認証サービス「Active Directory」に登録されているユーザー情報をAADに同期させる
    * ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/462467/c67655e7-aa8b-82e6-9e0a-ca8a49e7cc47.png)
    * 画像引用：[Microsoft Learn：Azure AD Connectを使用してActive DirectoryをAzureADに接続する](https://docs.microsoft.com/ja-jp/learn/modules/manage-users-and-groups-in-aad/6-azure-ad-connect)
* Azure マルチファクタ認証(多要素認証)

## セキュリティツール

* Azure Security Center
    * サイバー攻撃を受ける前と受けたあとの両方のセキュリティ対策を支援
    * 事前対策：セキュリティのベストプラクティスに従い、構築した環境のセキュリティ体制を評価と改善事項を提示する。改善事項はワンクリックで修正可能
    * 事後対策：攻撃を検知すると、アラートを管理者に通知し、攻撃を修復するために必要な手順を教える
* Azure Key Vault
    * アプリケーション内で利用する個人情報やパスワード、証明書などの機密情報を安全に保存するためのサービス
    * Azure Resource Management(ARM)テンプレートも保管できる。
        * ARMテンプレートには、リソース自動作成のためにユーザー名やパスワードを含む場合があるため、大切に取り扱う必要がある
* Azure Identity Protection
    * Azureが攻撃者に狙われている場合に有効
    * AADに対する疑わしい操作（例えば匿名のIPアドレスから何度もログインを試みる操作が観測されたなど）を検出し、警告する
* Azure Information Protection
    * Officeドキュメントや電子メール の漏洩を防止する
    * ドキュメントやメールを暗号化し、無関係の第三者によるアクセスを禁止する
    * Officeアプリと連携し、コピー・貼り付け、印刷、転送等の操作を無効化するなども可能
    * Windowsのプリントコピー機能の無効化
    * Wordドキュメント内に「社外秘」というキーワードを自動で検出し、そのドキュメントを保護した上で「社外秘」などのような透かし文字を入れることができる。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/462467/76f0eeb4-a9fb-de63-b7a3-5a690b86078d.png)
Azure Security Centerを利用したリソースのセキュリティ評価
画像引用：[Azure Security Centerを使用してセキュリティ脅威から保護する](https://docs.microsoft.com/ja-jp/learn/modules/protect-against-security-threats-azure/2-protect-threats-security-center)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/462467/9707a583-d50d-61ef-7f68-f59c0823cd4b.png)
同じくAzure Security Centerを利用したセキュリティアラート
画像引用：[セキュリティ アラートを表示する](https://docs.microsoft.com/ja-jp/learn/modules/resolve-threats-with-azure-security-center/2-view-security-alerts)


## ガバナンス管理

* ロールベースのアクセスコントロール（RBAC）
    * 各ユーザーに対するアクセス権限を管理できる
    * 管理は「サブスクリプション」「リソースグループ」「リソース」の3種類が対象となる
* Azure ポリシー
    * リソースを作成する際に様々なルールや制限を設定できるため、コンプライアンス準拠が容易となる
        * 例えば「リソースの作成場所を東日本リージョンに限定する」や、「仮想マシンのストレージの種類はSSDに制限する」など
    * ポリシー定義はJSON形式で記述する
    * **ポリシー定義を割り当てる際、すでに作成済みのリソースはポリシーの適用を受けない** ので注意
* Azure Blueprints
    * サブスクリプションに対して、組織のコンプライアンスに準拠したポリシーやRBACを自動で割り当てる機能
    * 設定できる設定は以下
        * ポリシー
        * ロール
        * ARMテンプレート
        * リソースグループ
* ロック
    * リソースを「ロック」することで、不用意なリソースの削除を防ぐ
    * 「削除」：リソースの削除を禁止
    * 「読み取り専用」：削除及び変更を禁止