セキュリティ・サービス(Security Services)

顧客の分離、アイデンティティ管理、認可、データ暗号化、脆弱性検出、監視などを提供するOracle Cloud Infrastructureのセキュリティ・サービスについて説明します。

次の図に、Oracle Cloud Infrastructureのセキュリティ・サービスを示します。


リージョンには2つのVCNがあり、各VCNには要塞およびプライベート・サブネットがあります。各プライベート・サブネットには、インスタンスとデータベースがあります。VCNの1つがセキュリティゾーン内にあります。もう一方のVCNにもパブリック・サブネットがあります。リージョンにはVaultとWAFもあります。

リージョンと可用性ドメイン

Oracle Cloud Infrastructureリージョンは、インフラストラクチャの最上位コンポーネントです。各リージョンは地理的に分かれた領域であり、可用性ドメインと呼ばれるフォルト分離に対応する複数の区画が含まれます。可用性ドメインはリージョンのサブコンポーネントです。独立しており、高い信頼性があります。各可用性ドメインは、完全に独立したインフラストラクチャ(建物、発電機、冷房装置およびネットワーク接続)を使用して構築されています。物理的な分離によって、自然災害やその他の災害に対して保護することができます。

同じリージョン内の可用性ドメインは、安全で高速な低レイテンシ・ネットワークによって接続されます。これにより、アプリケーションのレイテンシやパフォーマンスへの影響を最小限に抑えながら、信頼性の高いアプリケーションやワークロードを構築および実行できます。可用性ドメイン間のリンクはすべて暗号化されます。

詳細は、リージョンと可用性ドメインを参照してください。

Oracle Cloud Infrastructureには、政府組織のセキュリティおよびコンプライアンス要件を満たす特定の特性を持つリージョンも用意されています。

アイデンティティおよびアクセス管理(IAM)


この画像は、IAMポリシー、ユーザー、グループと、それらのテナンシ内のリソースに対する関係を示しています。

Oracle Cloud Infrastructure Identity and Access Managementサービスは、すべてのOracle Cloud Infrastructureリソースおよびサービスの認証および認可を提供します。様々な事業単位、チーム、個人によって共有される単一テナンシを使用する一方で、セキュリティ、分離およびガバナンスを維持することができます。

Oracle Cloud Infrastructureに参加すると、テナンシが作成されます。テナンシは、顧客に属するOracle Cloud Infrastructureリソースをすべて含む仮想構造です。テナンシの管理者は、ユーザーとグループを作成し、コンパートメントにパーティション化されるリソースに対する最小限のアクセス権をユーザーとグループに割り当てることができます。コンパートメントは、1つの論理ユニットとして管理できるリソースのグループです。これを使用すると、大きなインフラストラクチャを合理的に管理することができます。

IAMの基本概念は次のとおりです。

リソース
Oracle Cloud Infrastructureサービスと対話するときに作成して使用するクラウド・オブジェクト。たとえば、コンピュート・インスタンス、ブロック・ストレージ・ボリューム、仮想クラウド・ネットワーク(VCN )、サブネットおよびデータベースがあります。
POLICY
テナンシ内のリソースへのアクセス権を定義する認可ルールのセット。
コンパートメント
セキュリティの分離とアクセスの制御を目的とした、異なる種類のリソースのコレクション。
テナンシ
組織のリソースがすべて含まれるルート・コンパートメントです。テナンシ内では、管理者が1つ以上のコンパートメントを作成し、ユーザーおよびグループを作成して、コンパートメント内のリソースを使用できる権限をグループに付与するポリシーを割り当てることができます。
User
リソースを管理するためにアクセス権を必要とする人またはシステム。ユーザーがリソースにアクセスするためには、ユーザーをグループに追加する必要があります。ユーザーは、Oracle Cloud Infrastructureサービスの認証に使用する必要がある資格証明を1つ以上持ちます。フェデレーテッド・ユーザーもサポートされます。
グループ化
同様のアクセス権限セットを共有するユーザーのコレクション。管理者は、テナンシ内のリソースを消費または管理できるようにグループを認可するアクセス・ポリシーを付与できます。同じグループのすべてのユーザーは、同じ権限セットを継承します。
アイデンティティ・プロバイダ
フェデレーテッド・アイデンティティ・プロバイダとの信頼できる関係。Oracle Cloud Infrastructureコンソールに対して認証を試みるフェデレーテッド・ユーザーは、構成されているアイデンティティ・プロバイダにリダイレクトされます。正常に認証されると、フェデレーテッド・ユーザーはネイティブのIAMユーザーと同様にコンソールでOracle Cloud Infrastructureリソースを管理できます。

たとえば、HRアプリケーションに必要なクラウド・ネットワーク、コンピュート・インスタンス、ストレージ・ボリュームおよびデータベースのセットをホストするために、コンパートメントHR-Compartmentを作成できます。コンパートメントを使用して、あるプロジェクトまたはビジネス・ユニットのリソースを別のプロジェクトまたはビジネス・ユニットから明確に分離します。一般的な方法は、組織の主要部分ごとにコンパートメントを作成することです。

Oracle Cloud Infrastructureリソースにアクセスする顧客のすべての呼出しは、IAMサービス(つまりフェデレーテッド・プロバイダ)によって最初に認証されてから、IAMポリシーに基づいて認可されます。テナンシのコンパートメント内のインフラストラクチャ・リソース(ネットワーク、コンピュート、ストレージなど)にアクセスする権限を一連のユーザーに付与するポリシーを作成できます。このようなポリシーには柔軟性があります。また、人が読める形式で書き込まれ、理解したり監査したりするのが容易です。1つのポリシーには、次の構文に従う1つ以上のポリシー・ステートメントが含まれます。

Allow group <group_name> to <verb> <resource-type> in compartment <compartment_name>

次のポリシー例では、GroupAdminsグループが任意のグループを作成、更新または削除できます:

Allow group GroupAdmins to manage groups in tenancy

次のポリシー例では、TestNetworkAdminsグループがTestCompartmentコンパートメント内の任意のネットワークを作成、更新または削除できます:

Allow group TestNetworkAdmins to manage virtual-network-family in compartment TestCompartment

各ユーザーに、Oracle Cloud Infrastructureに対して認証するために複数の資格証明があります。ユーザーは自分の資格証明を生成してローテーションできます。また、テナンシのセキュリティ管理者は、テナンシ内のすべてのユーザーの資格証明をリセットできます。

  • コンソール・パスワード: Oracle Cloud Infrastructureコンソールでユーザーを認証するために使用されます。
  • APIキー: すべてのAPIコールは、ユーザー固有の2048ビットRSA秘密キーを使用して署名されます。ユーザーは、コンソールで公開キー・ペアを作成し、その公開キーをアップロードします。
  • 認証トークン: 認証トークンは、Oracleで生成されるトークン文字列です。Oracle Cloud Infrastructureの署名ベース認証がサポートされないサードパーティAPIで認証するために使用できます。たとえば、認証トークンを使用してSwiftクライアントで認証します。十分な複雑さを確保するために、IAMサービスはトークンを作成し、それを提供することはできません。
  • 顧客秘密キー: オブジェクト・ストレージ・サービスのS3互換APIにアクセスするために、Amazon S3クライアントによって使用されます。十分な複雑さを確保するために、IAMサービスではこのパスワードを作成し、指定することはできません。

Oracle Cloud Infrastructureは、Oracle Identity Cloud Service、Microsoft Active DirectoryおよびMicrosoft Azure Active Directoryと、Security Assertion Markup Language (SAML) 2.0プロトコルをサポートするその他のアイデンティティ・プロバイダとのフェデレーションをサポートしています。フェデレーテッド・グループは、ネイティブのIAMグループにマップされ、フェデレーテッド・ユーザーの権限を決定します。

詳細は、次を参照してください:

Identity Cloud Service

Oracle Identity Cloud Service (IDCS)では、オンプレミス、クラウド内またはモバイル・デバイスで、アプリケーションにアイデンティティ管理、シングル・サインオン(SSO)およびアイデンティティ・ガバナンス機能を提供します。

  • IAMサービスを使用して、Oracle Cloud Infrastructureサービスおよびリソースへの管理アクセスを制御します。
  • Oracle Identity Cloud Serviceを使用して、これらのクラウド・リソースで実行されているカスタム・アプリケーションを保護します。

2018年12月21日以降に作成されるテナンシは、Oracle Identity Cloud Serviceに自動的にフェデレートされ、Oracle Cloud Infrastructureでフェデレーテッド・ユーザーをプロビジョニングするように構成されます。古いテナンシは、Oracle Identity Cloud Serviceを手動でフェデレートできます。フェデレーションを使用すると、IDCSユーザーはクラウド・リソースにアクセスでき、管理者はIDCSグループのIAMポリシーを作成できます。

Oracle Identity Cloud Serviceは、OpenID ConnectおよびOAuthを使用して、他のカスタム・アプリケーションからカスタム・アプリケーションへのプログラムによるアクセスを保護するために、高度に拡張可能なマルチテナント・トークン・サービスを提供します。

  • カスタム・アプリケーションの認可を定義するには、OAuth 2.0を使用します。OAuth 2.0フレームワークは通常、承諾によるサードパーティの認可リクエストに使用されます。カスタム・アプリケーションでは、2レッグと3レッグの両方のOAuthフローを実装できます。

  • OpenID Connectを使用して、カスタム・アプリケーションの認証を外部化します。OpenID ConnectにはフェデレーテッドSSOを提供する認証プロトコルがあり、クラウド内のアイデンティティをフェデレートする手段として、OAuth 2.0認可フレームワークを使用します。カスタム・アプリケーションはOpen ID Connectフローに関与します。

詳細は、次を参照してください:

クラウド・ガード


ターゲットは、応答者をトリガーする問題をトリガーするディテクタによって監視されます。

クラウド・ガードを使用して、構成に関連するセキュリティの弱点がOracle Cloud Infrastructureリソースにないかを調べたり、オペレータやユーザーにリスクのあるアクティビティがないかを調べたりします。検出時に、Cloud Guardは修正処理を提案し、特定の処理を自動的に実行するように構成できます。例:

  • パブリックにアクセス可能な(パブリックIPアドレスを持つかパブリック・サブネット上にある)インスタンスを検出し、インスタンスを停止します。
  • パブリックにアクセス可能なオブジェクト・ストレージバケットを検出し、バケットを無効化します。
  • 疑わしいIPアドレスからのユーザー・ログインを検出し、このアドレスからのトラフィックを制限します。

Oracleでは、テナンシでCloud Guardを有効にすることをお薦めします。テナンシ全体(ルート・コンパートメントおよびすべてのサブコンパートメント)を調べるようにクラウド・ガード・ターゲットを構成することも、特定のコンパートメントのみをチェックするようにターゲットを構成することもできます

各ターゲットはディテクタ・レシピに関連付けられており、クラウド・ガードが問題を報告する原因となる特定のユーザー・アクションまたはリソース構成を定義します。Oracleには、いくつかのデフォルトのCloud Guardディテクタ・レシピが用意されており、そのまま使用することも、必要に応じてカスタマイズすることもできます。たとえば、特定のディテクタ・ルールに関連付けられたリスク・レベルや設定を変更できます。Cloud Guardによって新しいディテクタ・ルールが追加されると、Oracle管理のレシピでは自動的に有効になり、カスタム・レシピでは無効になります。

Cloud Guardレスポンダ・レシピは、ディテクタが特定した問題に対応するために実行するアクションまたはアクションのセットを定義します。また、イベントおよび通知サービスを使用して、Cloud Guardが通知対象の問題のタイプを検出するたびに通知を送信することもできます。通知は、電子メールまたはSlackを介して送信することも、関数サービスでカスタム・コードを実行することもできます。

For more information, see Cloud Guard.

脆弱性スキャン

Oracle Vulnerability Scanning Serviceは、ホストに潜在的な脆弱性がないか定期的にチェックすることで、セキュリティ状態を改善します。このサービスは、これらの脆弱性に関するメトリックと詳細を含むレポートを生成し、それぞれにリスク・レベルを割り当てます。例:

  • 意図せずに開いたままになっているポートは、クラウド・リソースに対する潜在的な攻撃ベクトルであるか、ハッカーが他の脆弱性を悪用できる可能性があります。
  • 脆弱性に対処するために更新およびパッチが必要なOSパッケージ
  • ハッカーが悪用する可能性のあるOS構成
  • ターゲットOSのCenter for Internet Security (CIS)によって公開されている業界標準のベンチマーク

Cloud Guardでこれらの脆弱性を監視することもできます。脆弱性が検出されると、Cloud Guardは修正処理を提案し、特定の処理を自動的に実行するように構成できます。

詳細は、Scanning Overviewを参照してください。

セキュリティ・ゾーン


セキュリティ・ゾーンは、コンパートメントおよびセキュリティ・ゾーン・ポリシーに関連付けられます。ポリシーに違反する操作は拒否されます。

セキュリティ・ゾーンを使用すると、コンピュートネットワーキングオブジェクト・ストレージデータベースおよびその他のリソースがOracleのセキュリティ原則およびベスト・プラクティスに準拠していることを確信できます。セキュリティ・ゾーンはコンパートメントに関連付けられますセキュリティ・ゾーンに関連付けられたコンパートメントでリソースを作成および更新すると、Oracle Cloud Infrastructureでは、これらの操作がセキュリティ・ゾーン・ポリシーに対して検証されます。セキュリティ・ゾーン・ポリシーに違反している場合、操作は拒否されます。

次に、セキュリティ・ゾーン・ポリシーの例を示します:

  • セキュリティ・ゾーンのサブネットをパブリックにすることはできません。すべてのサブネットはプライベートである必要があります。
  • セキュリティ・ゾーン内のコンピュート・インスタンスのブート・ボリュームもセキュリティ・ゾーン内に存在する必要があります。
  • セキュリティ・ゾーンのオブジェクト・ストレージ・バケットは、顧客管理のマスター暗号化キーを使用する必要があります。
  • 特定のリソース(ブロック・ボリュームやコンピュート・インスタンスなど)をセキュリティ・ゾーンから標準コンパートメントに移動することができません。

詳細は、セキュリティ・ゾーンを参照してください。

ボールト

ボールト・サービスを使用すると、次のリソースを作成および管理できます:

  • ボールト
  • KEYS
  • シークレット

ボールトには、データの保護や保護されたリソースへの接続に使用する、暗号化キーおよびシークレット資格証明が含まれます。顧客管理リソースとして、ボールト、キーおよびシークレットのアクセス権を誰が持つかを完全に制御できます。また、認可されたユーザーやサービスがボールト・リソースに対して何を実行できるかも制御します。アクセスのレベルは幅広く、特定のサービスが個々のキーを使用できるかどうかといった細かいものから、ユーザーがボールトからキーを削除してキーの使用を完全に禁止できるかどうかといった大きな影響を持つライフサイクル管理アクティビティまで多様です。

キーは、連邦情報処理標準(FIPS) 140-2セキュリティ・レベル3のセキュリティ証明を満たす、可用性の高い永続的なハードウェア・セキュリティ・モジュール(HSM)に格納されます。シークレットおよびシークレット・バージョンは、base64でエンコードされ、マスター暗号化キーを使用して暗号化されますが、HSM内には存在しません。

Vaultサービスでサポートされている主な暗号化アルゴリズムには、Advanced Encryption Standard (AES )、Rivest - Shamir - Adleman (RSA)アルゴリズム、楕円曲線デジタル署名アルゴリズム(ECDSA)などがあります。AES対称キーおよびRSA非対称キーを作成して、暗号化および復号化に使用できます。RSAまたはECDSA非対称キーを使用してデジタル・メッセージに署名することもできます。

セキュリティ・ゾーン・ポリシーでは、可能な場合、顧客管理キーを使用してリソースを暗号化する必要があります。次のサービスでは、リソース暗号化で顧客管理キーの使用がサポートされています:

  • ブロック・ボリューム
  • Container Engine for Kubernetes
  • Oracle Cloud Infrastructure Database
  • ファイル・ストレージ
  • オブジェクト・ストレージ
  • ストリーミング

詳細は、ボールトの概要を参照してください。

セキュリティ・アドバイザ

セキュリティ・アドバイザは、Oracleのセキュリティ原則およびベスト・プラクティスに適合するクラウド・リソースの作成に役立ちます。また、リソースがセキュリティ・ゾーン・ポリシーによって適用される要件を満たしていることも確認されます。たとえば、Vaultサービスを使用して、顧客管理のマスター暗号化キーで暗号化されたリソースをすばやく作成できます。

たとえば、セキュリティ・アドバイザを使用すると、次のリソースを作成できます:

  • オブジェクト・ストレージバケット 
  • ファイル・ストレージファイル・システム 
  • コンピュートインスタンス(コンピュート) (および関連するブート・ボリューム)
  • ブロック・ボリューム・ブロック・ストレージ・ ボリューム 

詳細は、セキュリティ・アドバイザの概要を参照してください。

Bastion

Oracle Cloud Infrastructure Bastionでは、パブリック・エンドポイントを持たないターゲット・リソースへのアクセスが制限され、時間が制限されます。


クライアントは、SSHクライアントまたはSSHトンネルを使用して要塞のセッションに接続します。2つのセッションは、プライベート・サブネット内のインスタンスとデータベースに接続します。プライベート・サブネットを含むVCNには、サービス・ゲートウェイがあります。

Through the configuration of a bastion, you can let authorized users connect to target resources on private endpoints by way of Secure Shell (SSH) sessions. When connected, users can interact with the target resource by using any software or protocol supported by SSH. For example, you can issue Remote Desktop Protocol (RDP) commands or connect to a database by using Oracle Net Services. Targets can include resources like compute instances , DB systems , and Autonomous Transaction Processing databases.

ベースはパブリック・サブネットに存在し、ユーザーをプライベート・サブネット内のターゲット・リソースに接続するために必要なネットワーク・インフラストラクチャを確立します。IAMサービスとの統合により、ユーザー認証および認可が提供されます。要塞では、要塞によってホストされるセッションに接続できるIPアドレスを指定することで、追加のセキュリティ・レイヤーが提供されます。

詳細は、要塞を参照してください。

Webアプリケーション・ファイアウォール

Oracle Cloud Infrastructure Web Application Firewall (WAF)は、悪意のある好ましくないインターネット・トラフィックからアプリケーションを保護する、Payment Card Industry (PCI)に準拠したクラウドベースのセキュリティ・サービスです。WAFは、インターネットに直接接続されているエンドポイントを保護することにより、アプリケーション全体に一貫性のあるルールを適用できます。

クロスサイト・スクリプティング(XSS)やSQLインジェクション、OWASPが定義したその他の脆弱性を含むインターネットの脅威に対して保護ルールを作成および管理するには、WAFを使用します。必要なボットが入ることは許可しながら、不要なボットを減らすことができます。ModSecurity Rule Languageを使用して、カスタム保護ルールを定義し、WAF構成に適用することもできます。

WAFを使用して、様々な条件を満たすリクエストに対して明示的なアクションを定義するアクセス・ルールを作成します。たとえば、アクセス・ルールでは、地理情報またはリクエストの署名に基づいてリクエストを制限できます。条件に一致するすべてのリクエストのCAPTCHAをログに記録して許可、検出、ブロック、リダイレクト、バイパスまたは表示するようにルール・アクションを設定できます。

詳細は、「Webアプリケーション・ファイアウォールの概要」を参照してください。

監査

Oracle Cloud Infrastructure Auditサービスでは、顧客のテナンシ内のリソースへのすべてのAPIコール、およびコンソールからのログイン・アクティビティが記録されます。監査サービスを使用してテナンシ内のすべてのユーザー・アクティビティを監視することで、セキュリティおよびコンプライアンスの目標を達成できます。コンソール、SDKおよびコマンドライン(CLI)のコールはすべてAPIを経由するため、これらのソースからのすべてのアクティビティが含まれます。監査レコードは、認証されたフィルタ可能な問合せAPIを介して入手するか、Oracle Cloud Infrastructure Object Storageからバッチ・ファイルとして取得できます。監査ログの内容には、発生したアクティビティ、アクティビティを開始したユーザー、リクエストの日時、リクエストのソースIP、ユーザー・エージェントおよびHTTPヘッダーが含まれます。

詳細は、「監査の概要」を参照してください。