OCIセキュリティ実践

こんにちは、技術部の今野です。

クラウドセキュリティは一見複雑に思われがちですが、一番大切なのは「最小権限(Least Privilege)」と「最小公開(Least Exposure)」というシンプルな原則です。Oracle Cloud Infrastructure(OCI)に限らず、すべてのクラウドで共通する考え方です。

  • 最小権限:必要な人に、必要な分だけの権限を与える。
  • 最小公開:必要なサービスだけを外に公開し、他は徹底的に隠す。

この「最小限」を徹底すれば、万が一の時も被害を最小限に抑えられます。この記事では、OCIでこれをどう実現するか、基本的な機能と実践ポイントを解説します。

クラウドセキュリティの基本:2つのカギ🔑

クラウドでは、アクセスとネットワークの管理が特に重要です。OCIでは、以下の2つの機能が「最小限」の原則を実現するカギとなります。

  • IAM (Identity and Access Management):誰がリソースにアクセスできるかを管理します。
  • VCN (Virtual Cloud Network):どこまでネットワークを公開するかを管理します。

これらは「ゼロトラスト」という考え方の土台にもなります。OCIは最初から最低限の権限しか与えない設定なので、安心してセキュリティ対策を始められます。

1. 権限を決める:IAMで「最小権限」を実践

OCIの権限は「IAMポリシー」というルールで設定します。ポイントは、個人ではなく「グループ」に権限を付与することです。

役割ごとにグループ化

  • 職務(役割)別グループ:例えば「ネットワーク管理者」「データベース管理者」など、仕事の役割ごとにグループを作り、そこにユーザーを割り当てます。
  • 必要な権限だけ付与:そのグループに、その役割で本当に必要な最低限の権限だけを与えます。例えば、サーバーの閲覧だけなら read、操作が必要なら use、全てできる manage はごく一部の管理者のみに絞ります。

コンパートメントでリソースを分ける

コンパートメントは、リソース(サーバーやデータベースなど)を論理的に整理する「箱」です。

  • 環境やプロジェクトで分割:開発・テスト・本番環境ごと、またはプロジェクトごとにコンパートメントを分けます。
  • アクセス範囲を限定:このコンパートメントごとにグループへのアクセス権限を設定することで、「Aプロジェクトの人はBプロジェクトのリソースに触れない」といった厳密な分離が可能です。親コンパートメントの権限は子に引き継がれるので、階層構造を意識しましょう。

2. 公開範囲を決める:VCNで「最小公開」を実践

OCI上のネットワークはVCNで構築し、外部への公開範囲をコントロールします。

パブリックとプライベートの使い分け

ネットワークを「パブリックサブネット」と「プライベートサブネット」に分けて、重要なリソースを隠します。

  • パブリックサブネット(公開層):インターネットから直接アクセスが必要なWebサーバーなどを配置。
  • プライベートサブネット(非公開層):データベースやアプリケーションサーバーなど、外部から直接見せたくない機密性の高いリソースを配置。攻撃対象を最小限に抑えられます。

セキュリティルールで通信を厳しく制限

  • セキュリティリスト(サブネット単位):サブネット全体で、どの通信を許可するかを決めます。
  • ネットワークセキュリティグループ(NSG / リソース単位):サーバーやデータベースなどのリソース個別に、さらに細かく通信ルールを設定できます。

これらを組み合わせて、「本当に必要な通信だけ」を許可するように設定します。

セキュリティリストとNSG(ネットワーク・セキュリティ・グループ)の使い分けについては、こちらのVCNの基本と考え方の記事でも少し触れています。

外部への出口を最小限に

インターネットとの接続点(ゲートウェイ)も最小限に絞り、管理します。

  • インターネットゲートウェイ (IGW):公開サービスがインターネットからアクセスされるために必要ですが、公開したいものだけここを通るようにルーティングを限定します。
  • サービスゲートウェイ (SGW):OCI内のサービス(ストレージなど)とは、インターネットを通さずに安全に接続できます。これにより、機密データをインターネットに晒すリスクを減らせます。

継続的な運用と監視:作った後も安全に

セキュリティは一度設定したら終わりではありません。常にチェックし、変化に対応することが重要です。

定期的な見直し

  • 権限の棚卸し:グループメンバーシップや付与された権限が、今も適切か定期的に確認し、不要な権限はすぐに削除しましょう。異動・退職者への対応も速やかに。
  • ネットワーク設定の見直し:セキュリティルールやルーティングに不要な穴がないか定期的にチェックし、一時的に開けたポートは用が済んだら閉じましょう。

監査と通知を活用

OCIには強力な監査機能があります。

  • Auditサービス:OCIで行われたすべての操作を自動で記録します。「誰が、いつ、何をしたか」がわかるので、もしもの時に原因究明に役立ちます。
  • Events Service / Cloud Guard:おかしな設定や不審な動きがあった場合に、自動で検知して通知してくれます。これにより、問題を早期に発見し、対応できます。

もしもの時の準備(インシデント対応)

  • 対応手順の準備:トラブルが起きたときの対応手順を事前に決めておきましょう。
  • 設定変更の記録:一時的に設定を変える場合は、必ず記録を残し、作業後は元に戻すルールを徹底します。
  • 弱点の洗い出し:定期的な脆弱性診断や侵入テストで、隠れた弱点を見つけて改善することも大切です。

まとめ:OCIセキュリティの基本を実践

OCIのセキュリティは、この「最小限」の原則をいかに徹底するかにかかっています。

  1. 設計: 権限とネットワークを慎重に設計する。
  2. 実装: 最小権限・最小公開の原則に従って設定する。
  3. 運用: 定期的に見直し、監視する。
  4. 改善: 新たな脅威や要件に合わせて、継続的にセキュリティを強化する。

これらの基本原則を実践していくことで、OCI環境におけるセキュリティレベルは飛躍的に高まり、安心してクラウド上で展開できるようになります。今日からOCIセキュリティを盤石なものにし、クラウドの真のメリットを享受していきましょう。

参考リンク