Google Cloud Armor
このドキュメントでは、Google Cloud Armor を Google Security Operations と構成して統合する際に役立つガイダンスを提供します。
前提条件
統合を構成する前に、前提条件の手順をすべて完了してください。
IAM ロールを作成して構成する
Google Cloud コンソールで、[IAM ロール] ページに移動します。
[ロールを作成] をクリックして、統合に必要な権限を持つカスタムロールを作成します。
新しいカスタムロールの場合は、タイトル、説明、一意の ID を指定します。
[ロールのリリース段階] を [一般提供] に設定します。
作成したロールに次の権限を付与します。
compute.backendBuckets.setSecurityPolicy
compute.backendServices.setSecurityPolicy
compute.regionBackendServices.setSecurityPolicy
compute.regionSecurityPolicies.create
compute.regionSecurityPolicies.get
compute.regionSecurityPolicies.list
compute.regionSecurityPolicies.update
compute.securityPolicies.create
compute.securityPolicies.get
compute.securityPolicies.list
compute.securityPolicies.update
[作成] をクリックします。
サービス アカウントを作成する
サービス アカウントを作成するには、サービス アカウントの作成の手順に沿って操作します。
サービス アカウントを作成したら、JSON ファイルとしてダウンロードします。統合パラメータを構成するときに、ダウンロードした JSON ファイルの内容を指定する必要があります。
サービス アカウントの JSON ファイルの内容ではなく、Workload Identity Federation for GKE のメールアドレスを使用するには、統合で使用するサービス アカウントに
Service Account Token Creator
ロールを割り当てます。
Cloud Armor を Google SecOps と統合する
統合を構成するには、次のパラメータを使用します。
パラメータ | |
---|---|
API Root |
必須 Cloud Armor サービスの API ルート。 デフォルト値は |
Project ID |
Optional Cloud Armor の統合に使用するプロジェクト ID。値が指定されていない場合、プロジェクト ID は [User Service Account] パラメータで指定された JSON ファイルのコンテンツから抽出されます。 |
Workload Identity Email |
Optional サービス アカウントのクライアント メールアドレス。 このパラメータまたはユーザー サービス アカウント パラメータのいずれかを構成できます。 Workload Identity Federation for GKE のメールアドレスでサービス アカウントの権限を借用するには、サービス アカウントに「サービス アカウント トークン作成者」ロールを付与します。ワークロード ID とその使用方法の詳細については、ワークロードの ID をご覧ください。 |
User Service Account |
Optional Cloud Armor サービスに使用するサービス アカウントの JSON ファイルの内容。 サービス アカウントの JSON ファイルの内容をすべて提供します。 このパラメータまたは Workload Identity メール パラメータのいずれかを構成できます。 |
Verify SSL |
Optional 選択すると、Cloud Armor サービスへの接続用の SSL 証明書が有効かどうかが検証されます。 デフォルトで選択されています。 |
操作
一部のアクションでは入力パラメータは必要ありません。
セキュリティ ポリシーにルールを追加する
Cloud Armor サービスのセキュリティ ポリシーに新しいルールを追加します。
エンティティ
このアクションはエンティティでは実行されません。
アクション入力
アクションを構成するには、次のパラメータを使用します。
パラメータ | |
---|---|
Policy Name |
必須 新しいルールを追加するセキュリティ ポリシーの名前。 |
Region |
Optional ルールを追加するポリシーのリージョン。 値が指定されていない場合、ルールはグローバル レベルのセキュリティ ポリシーに追加されます。 |
Rule JSON |
必須 追加するルールの JSON 定義。 ポリシーにルールを追加する方法の詳細については、メソッド: securityPolicies.addRule をご覧ください。 |
アクションの出力
アクションの出力タイプ | |
---|---|
ケースウォールのアタッチメント | なし |
ケースのウォールのリンク | なし |
ケースウォール テーブル | なし |
拡充テーブル | なし |
JSON の結果 | 利用可能 |
スクリプトの結果 | 利用可能 |
スクリプトの結果
スクリプトの結果名 | 値 |
---|---|
is_success | 正誤問題 |
JSON の結果
{
"kind": "compute#securityPolicy",
"id": "ID",
"creationTimestamp": "2024-04-14T05:39:05.798-07:00",
"name": "example",
"description": "Test for integration",
"rules": [
{
"kind": "compute#securityPolicyRule",
"description": "test",
"priority": 100,
"match": {
"versionedExpr": "SRC_IPS_V1",
"config": {
"srcIpRanges": [
"*"
]
}
},
"action": "allow",
"preview": false
},
{
"kind": "compute#securityPolicyRule",
"description": "Default rule, higher priority overrides it",
"priority": 2147483647,
"match": {
"versionedExpr": "SRC_IPS_V1",
"config": {
"srcIpRanges": [
"*"
]
}
},
"action": "allow",
"preview": false
}
],
"fingerprint": "A3hq2ZQYxj8=",
"selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1/securityPolicies/example",
"type": "CLOUD_ARMOR",
"labelFingerprint": "42WmSpB8rSM=",
"region": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1"
}
ケースウォール
このアクションでは、次の出力メッセージが表示されます。
出力メッセージ | メッセージの説明 |
---|---|
Successfully added a new rule to the security policy! |
アクションが成功しました。 |
Error executing action "Add a Rule to a Security Policy".
Reason: ERROR_REASON |
操作を実行できませんでした。 サーバーへの接続、入力パラメータ、認証情報、リージョン名、JSON ファイルの内容、またはポリシー名を確認します。 |
セキュリティ ポリシーを作成する
Cloud Armor サービスでセキュリティ ポリシーを作成します。
エンティティ
このアクションはエンティティでは実行されません。
アクション入力
アクションを構成するには、次のパラメータを使用します。
パラメータ | |
---|---|
Region |
Optional ポリシーを作成するリージョン。 値が指定されていない場合、グローバル レベルのセキュリティ ポリシーが作成されます。 |
Policy JSON |
必須 作成するポリシーの JSON 定義。 ポリシーの詳細については、REST リソース: securityPolicies をご覧ください。 |
アクションの出力
アクションの出力タイプ | |
---|---|
ケースウォールのアタッチメント | なし |
ケースのウォールのリンク | なし |
ケースウォール テーブル | なし |
拡充テーブル | なし |
JSON の結果 | 利用可能 |
スクリプトの結果 | 利用可能 |
スクリプトの結果
スクリプトの結果名 | 値 |
---|---|
is_success | 正誤問題 |
JSON の結果
{
"kind": "compute#securityPolicy",
"id": "ID",
"creationTimestamp": "2024-04-14T05:39:05.798-07:00",
"name": "example",
"description": "Test for integration",
"rules": [
{
"kind": "compute#securityPolicyRule",
"description": "test",
"priority": 100,
"match": {
"versionedExpr": "SRC_IPS_V1",
"config": {
"srcIpRanges": [
"*"
]
}
},
"action": "allow",
"preview": false
},
{
"kind": "compute#securityPolicyRule",
"description": "Default rule, higher priority overrides it",
"priority": 2147483647,
"match": {
"versionedExpr": "SRC_IPS_V1",
"config": {
"srcIpRanges": [
"*"
]
}
},
"action": "allow",
"preview": false
}
],
"fingerprint": "A3hq2ZQYxj8=",
"selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1/securityPolicies/example",
"type": "CLOUD_ARMOR",
"labelFingerprint": "42WmSpB8rSM=",
"region": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1"
}
ケースウォール
このアクションでは、次の出力メッセージが表示されます。
出力メッセージ | メッセージの説明 |
---|---|
Successfully created a new security policy! |
アクションが成功しました。 |
Error executing action "Create a Security Policy". Reason:
ERROR_REASON |
操作を実行できませんでした。 サーバーへの接続、入力パラメータ、認証情報、リージョン名、JSON ファイルの内容を確認します。 |
Ping
統合構成ページで提供されるパラメータを使用して、Cloud Armor サービスへの接続性をテストします。
エンティティ
このアクションはエンティティでは実行されません。
アクション入力
なし
アクションの出力
アクションの出力タイプ | |
---|---|
ケースウォールのアタッチメント | なし |
ケースのウォールのリンク | なし |
ケースウォール テーブル | なし |
拡充テーブル | なし |
JSON の結果 | なし |
スクリプトの結果 | 利用可能 |
スクリプトの結果
スクリプトの結果名 | 値 |
---|---|
is_success | 正誤問題 |
ケースウォール
このアクションでは、次の出力メッセージが表示されます。
出力メッセージ | メッセージの説明 |
---|---|
Successfully connected to the Google Cloud Armor service with
the provided connection parameters! |
アクションが成功しました。 |
Failed to connect to the Google Cloud Armor service! Error is
ERROR_REASON |
操作を実行できませんでした。 サーバーへの接続、入力パラメータ、または認証情報を確認してください。 |
セキュリティ ポリシーを更新する
Cloud Armor サービスで既存のセキュリティ ポリシーを更新します。
この操作では、ポリシーのルールを更新できません。関連するポリシーにルールを追加するには、[セキュリティ ポリシーにルールを追加する] アクションを使用します。
エンティティ
このアクションはエンティティでは実行されません。
アクション入力
アクションを構成するには、次のパラメータを使用します。
パラメータ | |
---|---|
Policy Name |
必須 新しいルールを追加するセキュリティ ポリシーの名前。 |
Region |
Optional 更新されたポリシーのリージョン。 値が指定されていない場合は、グローバル レベルのセキュリティ ポリシーが作成されます。 |
Rule JSON |
必須 更新するポリシーの JSON 定義。 ポリシーの更新の詳細については、メソッド: securityPolicies.patch をご覧ください。 この操作ではルールを更新できません。ポリシーにルールを追加するには、[セキュリティ ポリシーにルールを追加する] アクションを使用します。 |
アクションの出力
アクションの出力タイプ | |
---|---|
ケースウォールのアタッチメント | なし |
ケースのウォールのリンク | なし |
ケースウォール テーブル | なし |
拡充テーブル | なし |
JSON の結果 | 利用可能 |
スクリプトの結果 | 利用可能 |
スクリプトの結果
スクリプトの結果名 | 値 |
---|---|
is_success | 正誤問題 |
JSON の結果
{
"kind": "compute#securityPolicy",
"id": "ID",
"creationTimestamp": "2024-04-14T05:39:05.798-07:00",
"name": "example",
"description": "Test for integration",
"rules": [
{
"kind": "compute#securityPolicyRule",
"description": "test",
"priority": 100,
"match": {
"versionedExpr": "SRC_IPS_V1",
"config": {
"srcIpRanges": [
"*"
]
}
},
"action": "allow",
"preview": false
},
{
"kind": "compute#securityPolicyRule",
"description": "Default rule, higher priority overrides it",
"priority": 2147483647,
"match": {
"versionedExpr": "SRC_IPS_V1",
"config": {
"srcIpRanges": [
"*"
]
}
},
"action": "allow",
"preview": false
}
],
"fingerprint": "A3hq2ZQYxj8=",
"selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1/securityPolicies/example",
"type": "CLOUD_ARMOR",
"labelFingerprint": "42WmSpB8rSM=",
"region": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1"
}
ケースウォール
このアクションでは、次の出力メッセージが表示されます。
出力メッセージ | メッセージの説明 |
---|---|
Successfully added comment to the
identity protection detection with ID
DETECTION_ID in CrowdStrike |
アクションが成功しました。 |
Error executing action "Update a Security Policy". Reason:
ERROR_REASON |
操作を実行できませんでした。 サーバーへの接続、入力パラメータ、または認証情報を確認してください。 |
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。