Azure AD条件付きアクセス

## 条件付きアクセスとは
>条件付きアクセス ポリシーは、割り当てとアクセス制御の if then ステートメントです。 条件付きアクセス ポリシーではシグナルをまとめ、決定を行い、組織のポリシーを適用します。

要するにアクセス制御や認証に関して条件を付与して条件に合致した時のアクション、合致しなかった時のアクションを設定できるポリシー

## 主な条件付きアクセス制御要件
アクセス権を付与する時に以下の動作を要求することができる

1\.多要素認証
2\.デバイスは準拠としてマーク済みである必要があります
3\.ハイブリッドAzure AD参加済みデバイス
4\.承認されたクライアントアプリ
5\.アプリ保護ポリシー
6\.パスワードの変更
7\.使用条件
8\.カスタムコントロール

## 条件付きアクセスの条件となる対象
条件としては下記の3つ

- ユーザーまたはグループ
- クラウドアプリまたはアクション
- 条件

上記に合致した場合にアクセスの制御をするのが条件付きアクセス

## ユーザーとグループ
選択肢は下記の通り

- すべてのユーザー
- すべてのゲストと外部ユーザー
- ディレクトリロール
グローバル管理者やセキュリティ管理者などのロールに対して割り当てることができる
- ユーザーとグループ
特定のユーザーまたはグループ

## クラウドアプリまたはアクション
Microsoftクラウドアプリケーションに対して条件付きアクセスポリシーを割り当てることができる
ただしここで割り当てることができるのはクラウドアプリのみ
クライアントアプリケーションに適用することはできない
ただし、クラウドアプリに条件付きアクセスポリシーを割り当てても実質クライアントアプリに対して割り当てるような動作は可能
例えばExchangeで設定されたポリシーはOutlookを使用してアクセスしようとした時にポリシーが動作する。

## 条件付きアクセスにおける条件
ここで言う「条件」というのは下記の条件に合致しないとアクセスできない、といった条件付きアクセスを作ることができる
主に機密性の高いアプリケーションにアクセスする際に設定する
例えば場所を日本国内に絞る、という条件

- サインインリスク
- ユーザーリスク
- デバイスプラットフォーム
- 場所
- クライアントアプリ
- デバイスの状態（非推奨）
- デバイスのフィルター

### サインインリスク
#### 特殊な移動
>このリスク検出の種類では、地理的に離れた場所で行われた 2 つのサインインを識別します。少なくとも 1 つの場所は、ユーザーの過去の行動から考えて、ユーザーにそぐわない可能性がある場所でもあります。 このアルゴリズムでは、2 回のサインインの間隔や、最初の場所から 2 回目の場所にユーザーが移動するのに要する時間など、複数の要因が考慮されます。 このリスクは、別のユーザーが同じ資格情報を使用していることを示している場合があります。
>このアルゴリズムは、組織内の他のユーザーによって普通に使用される VPN や場所など、不可能な移動状況の原因になる明らかな "誤検知" を無視します。 システムには、最短で 14 日間または 10 回のログインの初期学習期間があり、その間に新しいユーザーのサインイン行動が学習されます。

複数の「地理的に離れた場所」から同一ユーザーのサインインが実行された際にリスクとして検知する

#### 異常なトークン
>これが検出されたことは、通常とは異なるトークンの有効期間や、これまでと違う場所から再生されるトークンなど、トークンに異常な特性があることを示しています。 この検出には、セッション トークンと更新トークンが含まれます。
>注: 異常なトークンは、同じリスク レベルの他の検出よりも多くのノイズが発生するように調整されます。 このトレードオフは、他の方法では見過ごされる可能性のある再生されたトークンを検出する可能性を高めるために選択されています。 これは高ノイズの検出なので、この検出によってフラグが設定されたセッションの一部が誤検知である可能性が通常よりも高くなります。 この検出によってフラグが設定されたセッションを、ユーザーからの他のサインインのコンテキストで調査することをお勧めします。 場所、アプリケーション、IP アドレス、ユーザー エージェント、またはその他の特性が、ユーザーにとって予期しないものである場合、テナント管理者はこのリスクを潜在的なトークン再生のインジケーターと見なす必要があります。

#### トークン発行者の異常
>このリスクの検出は、関連する SAML トークンの SAML トークン発行者が侵害された恐れがあることを意味しています。 トークンに含まれるクレームが、通常とは異なるか、既知の攻撃者パターンと一致しています。

#### マルウェアリンクしたIPアドレス
現在は非推奨
>このリスク検出の種類は、ボット サーバーと活発に通信していることが判明している、マルウェアに感染した IP アドレスからのサインインを示します。 この検出により、ユーザーのデバイスの IP アドレスが、ボット サーバーがアクティブなときにボット サーバーと接触していた IP アドレスと照合されます。

#### 疑わしいブラウザ
>不審なブラウザー検出は、同じブラウザー内の異なる国の複数のテナントにわたる疑わしいサインイン アクティビティに基づく異常な動作を示します。

同じブラウザ内で複数の国のテナントへのサインイン

#### 通常とは異なるサインインプロパティ
>このリスク検出の種類では、過去のサインイン履歴を考慮して異常なサインインを探します。システムによって、以前のサインインに関する情報が保存され、そのユーザーになじみのないプロパティでサインインが発生したときにリスク検出がトリガーされます。 これらのプロパティには、IP、ASN、場所、デバイス、ブラウザー、テナント IP サブネットが含まれます。 新しく作成されたユーザーは、"学習モード" 期間に置かれ、そのユーザーの行動がアルゴリズムによって学習される間、見慣れないサインイン プロパティのリスク検出は停止されます。 学習モードの期間は動的であり、ユーザーのサインイン パターンに関する十分な情報をアルゴリズムが収集するためにかかる時間によって決まります。 最小期間は 5 日です。 無活動状態が長期間続いた場合、ユーザーは学習モードに戻る可能性があります。
>この検出は、基本認証 (または従来のプロトコル) に対しても実行されます。 これらのプロトコルには、クライアント ID などの最新のプロパティがないため、誤検知を減らすためのテレメトリが限られています。 お客様には、最新の認証に移行することをお勧めしています。
>通常とは異なるサインイン プロパティは、対話型サインインと非対話型サインインの両方で検出できます。この検出が非対話型サインインで行われた場合、トークン リプレイ攻撃のリスクがあるため精査を増やす必要があります。

条件としてIP、ASN、場所、デバイス、ブラウザー、テナント IP サブネット

#### 悪意のあるIPアドレス
>この検出は、悪意のある IP アドレスからのサインインを示します。 IP アドレスは、その IPアドレスまたはその他の IP 評価ソースから受信した無効な資格情報によるエラー率の高さに基づいて、悪意があるとみなされます。

#### パスワードスプレー
>パスワード スプレー攻撃とは、複数のユーザー名に対し、よく使われるパスワードを片っ端から試して不正アクセスしようとする攻撃です。 このリスク検出は、パスワード スプレー攻撃が成功したときにトリガーされます。 たとえば、攻撃者は検出されたインスタンスで正常に認証されます。

#### 検出された追加のリスク
フリーからpremiumに移行した後に検出される

>この検出は、Premium 検出のいずれかが検出されたことを示します。 Premium 検出は Azure AD Premium P2 のお客様にのみ表示されるため、P2 ライセンスをお持ちでないお客様には [検出された追加のリスク] というタイトルが付けられます。

#### 匿名IPアドレス
フリーでのサインインリスク
要するにTorブラウザとかAnonymizer VPNなどを経由してサインインされた時

#### ユーザーに対するセキュリティ侵害を管理者が確認しました
フリーでのサインインリスク
>この検出は、管理者が "危険なユーザー" UI で、または riskyUsers API を使用して、[ユーザーに対するセキュリティ侵害を確認しますか?] を選択したことを示します。 このユーザーに対するセキュリティが侵害されたことを確認した管理者を調べるには、ユーザーのリスク履歴を (UI または API 経由で) 確認します。

#### Azure AD脅威インテリジェンス
>このリスク検出の種類は、ユーザーにとって通常とは異なる、または既知の攻撃パターンと一致する、ユーザー アクティビティを示します。 この検出は、Microsoft の内部および外部の脅威インテリジェンス ソースに基づきます。

### ユーザーリスク
ユーザーリスクはユーザーそのものに関連するもの
サインインの有無は関係なし
#### プライマリ更新トークン (PRT) へのアクセス試行の可能性

>このリスク検出の種類は、Microsoft Defender for Endpoint (MDE) によって検出されます。 プライマリ更新トークン (PRT) は、Windows 10、Windows Server 2016 以降のバージョン、iOS、Android デバイスでの Azure AD 認証のキー アーティファクトです。 PRT は、それらのデバイスで使用されるアプリケーション間でシングル サインオン (SSO) を有効にするために、Microsoft のファースト パーティ トークン ブローカーに対して特別に発行される JSON Web トークン (JWT) です。 攻撃者は、このリソースにアクセスして、組織への侵入や資格情報の盗難を試みる可能性があります。 これが検出されると、ユーザーが高いリスクに移行され、MDE が展開されている組織でのみ実行されます。 この検出は少なく、ほとんどの組織ではあまり見られないものです。 ただし、これが発生した場合は、リスクが高く、ユーザーを修復する必要があります

MDEで検出される
SSOを有効にした際に発行されるトークンを盗まれたと検知された時にリスク検知される

#### 異常なユーザーアクティビティ

>このリスク検出は、認証済みユーザーのアクティビティの疑わしいパターンが特定されたことを示します。 ユーザーの認証後の動作に異常がないか評価されます。 この動作は、アカウントに対して発生するアクションと、検出されたサインイン リスクに基づいています。

#### 漏洩した資格情報
フリーでのユーザーリスク

>このリスク検出の種類は、ユーザーの有効な資格情報が漏洩したことを示します。 サイバー犯罪者は、正規ユーザーの有効なパスワードを侵害した場合、その資格情報を共有することがよくあります。 この共有は、一般に、闇サイトや貼り付けサイトに公開したり、資格情報を闇市場で取引したり販売したりすることで行われます。 Microsoft の漏洩した資格情報サービスで、闇サイト、貼り付けサイト、またはその他のソースからユーザー資格情報が取得された場合は、有効な一致を見つけるために Azure AD ユーザーの現在の有効な資格情報に対してチェックされます。 漏洩した資格情報の詳細については、「一般的な質問」を参照してください。

漏洩した情報がさらに第三者に共有された時に検知される

#### Azure AD脅威インテリジェンス
フリーでのユーザーリスク

>このリスク検出の種類は、ユーザーにとって通常とは異なる、または既知の攻撃パターンと一致する、ユーザー アクティビティを示します。 この検出は、Microsoft の内部および外部の脅威インテリジェンス ソースに基づきます。

### デバイスプラットフォーム
>デバイスで実行されているオペレーティング システムによって分類されます。 

サポートされるデバイスプラットフォーム
- Android
- iOS
- Windows
- macOS
- Linux

### 場所
場所を条件とするときは含めるか除外するかを選択できる
信頼できる場所として条件にできるのはIP範囲のみ

### クライアントアプリ
特に指定していない場合でもすべてのクライアントアプリの種類に適用される

サポートされているブラウザ
- Windows10以上
edge・Chrome・firefox91以上
- Windows Server2022・2019
edge・Chrome
- iOS
edge・Safari
- Android
edge・Chrome
- macOS
edge・Chrome・Safari

ブラウザがプライベートモード、Cookieが無効になっている場合はデバイスのチェックは失敗する

Chromeのサポートについて
Windows 10 Accounts または Office Online の拡張機能をインストールする必要がある

※Windows10 accounts
https://chrome.google.com/webstore/detail/windows-accounts/ppnbnpeolgkicgegkbkbjmhlideopiji
※Offie online
https://chrome.google.com/webstore/detail/office/ndjpnladcallmjemlbaebfadecfhkepb

拡張機能を自動的に展開するにはレジストリキーの作成が必要

- パス：HKEY_LOCAL_MACHINE\Software\Policies\Google\Chrome\ExtensionInstallForcelist
- 名前 1
- 型 REG_SZ (文字列)
- Data ppnbnpeolgkicgegkbkbjmhlideopiji;https://clients2.google.com/service/update2/crx

### デバイスの状態（非推奨）
現在ではデバイスのフィルターを使用することが推奨

例：
Microsoft Azure の管理クラウド アプリにアクセスするすべてのユーザーについて、アクセス制御とブロックのために、すべてのデバイスの状態を含め、ハイブリッド Azure AD 参加済みのデバイスとデバイスは準拠としてマーク済みを除外する。

ここでの除外は「アクセスが許可される」ということ

つまり

>この例では、ハイブリッド Azure AD 参加済みデバイスまたは準拠としてマーク済みのデバイスのいずれかから、Microsoft Azure の管理へのアクセスのみを許可するポリシーが作成されます。

### デバイスのフィルター
条件をフィルター形式で選択することができる

#### 一般的なシナリオ
##### 特権リソースへのアクセスを制限します