IPアドレスを使用したアクセス制御

OCIには、ネットワーク・ベースのアクセス制御を使用してアクセスを制限することで、クラウド・リソースにセキュリティ・レイヤーを追加するオプションがあります。リソースと対話する権限を持つIPアドレスまたはClassless Inter-Domain Routing (CIDR)ブロックの制限されたセットを指定できます。

ネットワーク・ソースは、定義されたIPアドレスのセットです。これらをテナンシ内の仮想クラウド・ネットワーク(VCN)のパブリックIPアドレスにすることができます。IAMポリシーでネットワーク・ソースが指定されている場合、IAMは、許可されたIPアドレスから開始されるリソースにアクセスするリクエストを検証します。指定されたIPアドレスに基づいてDevopsコード・リポジトリへのアクセスを制限するIAMポリシーを作成するには、次のステップに従います:

  1. Oracle Cloudコンソールで、ナビゲーション・メニューを開き、「アイデンティティとセキュリティ」をクリックします。「ネットワーク・ソース」で、「ネットワーク・ソースの作成」をクリックします。
  2. 名前と説明を入力します。
  3. 「ネットワーク」セクションで、使用するネットワークのタイプとそれぞれのIPアドレスを選択します。
    • パブリックIPアドレスまたはCIDRブロック範囲へのアクセスを提供するには、「パブリック・ネットワーク」を選択し、それぞれの詳細を指定します。
    • VCNのプライベートIPアドレスへのアクセスを提供するには、「仮想クラウド・ネットワーク」を選択し、許可するVCNを選択します。VCNまたはサブネットCIDRブロックのプライベートIPアドレスを入力します。指定したVCNのすべてのサブネットを許可するには、0.0.0.0/0と入力します。
  4. このネットワーク・ソースにさらにIP範囲を追加するには、「ネットワークの追加」をクリックします。
  5. 「作成」をクリックします。

必要なIPアドレスを使用してネットワークを作成した後、リストされたIPアドレスのみがDevOpsコード・リポジトリにアクセスできるようにするIAMポリシーを作成できます。条件を使用してポリシーのスコープを設定するには、IAMサービス変数を使用します。たとえば、request.networkSource.nameです。

次に、devops-repositoryをリソース・タイプとして使用して、指定されたIPアドレスのみがDevOpsコード・リポジトリにアクセスできるようにするサンプル・ポリシーを示します。前のステップで作成したネットワーク・ソース名を使用します:
Allow group <group-name> to manage devops-repository in compartment <compartment_name> where request.networkSource.name='<network-source-name>'

ポリシーで使用する動詞を変更できます。たとえば、"manage"を"inspect"に変更すると、リソースのリストのみが許可されます。詳細は、DevOps IAMポリシーを参照してください。

許可されていないIPアドレスからリポジトリにアクセスするか、リポジトリに対してGit操作を実行すると、エラーが発生することがあります。