Oracle Cloud:  IPアドレス制限と多要素認証でコンソール・アクセス制御してみてみた

Oracle Cloud Infrastructure (OCI) コンソールへのアクセス制御は主に次の機能を使用します。

**・ネットワーク・ペリメータ**
ネットワーク・ペリメータに含まれるIPアドレスのみを使用して、ユーザーがログインできるようにIAMを構成することができます。これは許可リストと呼ばれ、このIPアドレスを使用したユーザーはサインインが許可されます。

**・マルチファクタ認証**
ユーザーが Oracle Cloud Infrastructure にサインインするときに、最初の要素(ユーザーが知っているもの)であるユーザー名とパスワードの入力が求められます。その後ユーザーは、登録された MFA デバイスに 2番目の検証コードを提供するよう求められます。

ということで、OCI コンソールに「IPアドレス制限」と「MFA(多要素認証)」アクセス制限を設定してみてみます。



:::note
**・ ネットワーク・ソース と ネットワーク・ペリメータの違い**
　-  [ネットワーク・ソース](https://docs.oracle.com/ja-jp/iaas/Content/Identity/Tasks/managingnetworksources.htm#intronet): 「認可」をソースIPで制御する仕組み
　-  [ネットワーク・ペリメータ](https://docs.oracle.com/ja-jp/iaas/Content/Identity/networkperimeters/overview.htm): 「認証」をソースIPで制御する仕組み
そのため、ネットワーク・ソースはポリシーに組み込まれるので、IPアドレスをアクセス制御（認可）の判断基準として使用するものであり、ログイン制御（認証）に利用されるものではありません。
例えば、「インターネットからのコンソールへのログインは許可するが、インスタンス操作は社内ネットワーク経由に限る」といったユースケースで使うことができます。
:::



# ■ IPアドレス制限設定
## ● OCIコンソール画面
[アイデンティティとセキュリティ] > [ドメイン]をクリック
![01_OCIコンソール01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/8f7f389f-c936-e87d-853f-ec2c439ea34d.jpeg)


## ● ドメイン画面
[Default（現在のドメイン）]をクリック
![02_Domain01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/28569315-e834-d081-353f-7e4c0361f280.jpeg)


## ● Defaultドメイン画面
アイデンティティ・ドメイン項目にある[セキュリティ]をクリック
![02_Domain02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/dfe78504-8969-6207-6e40-1d483b461e44.jpeg)



## ● ネットワーク・ペリメータの作成画面
「セキュリティ」項目から[ネットワーク・ペリメータ]を選択
![03_NWベリメータ01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/a70067c6-94a7-4646-3021-c374b092f300.jpeg)

## ● ネットワーク・ペリメータの作成画面
［ネットワーク・ベリメータの作成］をクリックし、次の項目を設定し、[作成]をクリック

    ・名前: ネットワーク・ペリメータの名前を入力
    ・IPアドレス: ネットワーク・ペリメータの単一または複数の正確なIPアドレス、IP範囲、またはマスクされたIPアドレスの範囲を入力

![03_NWベリメータ02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/c8fc2e73-50a2-5b5b-f30a-4fdbde8c508c.jpeg)


    ・ファクタ: ユーザーに選択させる各要素を選択
    ・登録されるファクタの最大数: ユーザーが構成できるファクタの最大数を設定
    ・信頼できるデバイスの有効化: チェックするとサインインするたびにMFAが必要になります
    ・MFAの最大失敗試行数: ユーザー・サインイン時の最大失敗試行数を設定



## ■ マルチファクタ認証(MFA)設定
## ● マルチファクタ認証(MFA)設定画面
「セキュリティ」項目から[MFA]を選択
次の項目を設定し、[変更の保存]をクリック



![04_MFA02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/c0095e86-6962-0e21-4cb8-a6e9e38b643b.jpeg)




# ■ サインオン・ポリシー追加
## ● サインオン・ポリシー画面
「セキュリティ」項目から[サインオン・ポリシー]を選択し、［サインオン・ルールの追加］をクリック
![05_サインオンルール02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/c5c0a73e-3f03-7b0b-535e-e0114f20dbc7.jpeg)

## ● サインオン・ルールの追加画面
次の項目を設定し、[サインオン・ルールの追加]をクリック
![05_サインオンルール03.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/90cd93de-deb3-e266-8c6f-f216c840f115.jpeg)

## ● サインオン・ルール画面
[サインオン・ルール優先度の編集]をクリック
![05_サインオンルール04.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/608f1f57-11f7-fca5-e500-469af4434c9d.jpeg)


## ● サインオン・ルール優先度の編集画面
デフォルトの[Default Sign-On Rule]を一番下に設定し、追加したルールの優先度が上にくるように編集
![06_サインオンルール優先度01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/0cd2946b-360a-9a87-86da-daeb1edf6d4b.jpeg)



# ■ ログイン確認
**1) ログイン画面**
新規ログインすると、セキュアな検証の有効化画面が表示されるので、[セキュアな検証の有効化]をクリック
![11_ログイン確認01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/1a0f34ed-4ff9-980a-d6ed-b1702fc38f75.jpeg)



**2) デフォルトのセキュアな検証方法の選択画面**
MFAで設定した認証方式がリストされるので選択してクリック
ここでは、[電子メール]を選択
![11_ログイン確認02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/e8407f70-1f3e-ba84-6750-5fffcae88550.jpeg)


**3) 検証コード送信**
検証コード送信されたので、受信を確認します。
ここでは、メールアドレスに送信されます。
![11_ログイン確認03.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/a954c8c6-069d-0aa0-4502-640049223fd7.jpeg)

**4) 受信メール確認**
受信したメールで、ワンタイム・パスコードを確認
![11_ログイン確認04.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/bc6c4213-b4fe-e567-343f-0c00a050c01b.jpeg)


**5) ワンタイム・パスコード入力**
コードを入力して、[電子メール・アドレスの確認]をクリック
![11_ログイン確認05.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/dac6d185-c66e-a1dd-8152-fe1db73e5e7c.jpeg)

**6) 正常に登録されました画面**
電子メール・アドレスが設定されたことを確認し、[完了]をクリック
![11_ログイン確認06.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/e96cf2d2-d61d-d33c-c266-3eb39ade9b4a.jpeg)




**7) OCIコンソールログイン完了**
![11_ログイン確認07.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/598443bd-5e13-78ad-f96a-46e0c8b33d6a.jpeg)


# ■ ログイン拒否確認
ネットワーク・ペリメータで設定したIPアドレス以外からのログインし、次の画面のようにログインできないことを確認
![12_ログイン拒否確認01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/7a9a91ca-4aa0-d7b2-e1c0-5ecf9d1d65e3.jpeg)

# ■ 参考
　・ [ネットワーク・ペリメータの管理](https://docs.oracle.com/ja-jp/iaas/Content/Identity/networkperimeters/overview.htm)
　・ [マルチファクタ認証の管理](https://docs.oracle.com/ja-jp/iaas/Content/Identity/mfa/understand-multi-factor-authentication.htm)
　・ [ネットワーク・ソース](https://docs.oracle.com/ja-jp/iaas/Content/Identity/Tasks/managingnetworksources.htm#intronet)