このドキュメントでは、 Netskope Cloud Exchangeプラットフォームの Log Shipper モジュールを使用して AWS S3 Events、Alerts v1.2.0 プラグインを設定する方法について説明します。 このプラグインは、Netskope テナントからアラート (DLP、マルウェア、ポリシー、侵害されたクレデンシャル、マルサイト、検疫、修復、セキュリティ評価、ウォッチリスト、UBA、CTEP、デバイス、およびコンテンツ) およびイベント (ページ、アプリケーション、監査、インフラストラクチャ、ネットワーク、インシデント、エンドポイント、およびクライアント ステータス) をNetskopeするために使用されます。
前提条件
この設定を完了するには、以下が必要です。
- Netskopeテナント(または、例えば本番環境と開発/テスト環境など、複数のテナント)。
- Netskope Cloud Exchangeテナントには、テナントプラグインとログシッパープラグインが既に設定済みです。
- IAMユーザーに対するAmazon S3バケットのアクセス許可。
- ListBucket
- CreateBucket
- ListAllMyBuckets
- GetBucketPolicy
- GetBucketPublicAccessBlock
- PutEncryptionConfiguration
- PutBucketPublicAccessBlock
- PutBucketPolicy
- GetBucketLocation
- PutObject
- 以下のホストへの接続:AWS S3バケットへのアクセス。
AWS S3イベント、アラートプラグインのサポート
このプラグインは、Netskope テナントからアラート (DLP、マルウェア、ポリシー、侵害されたクレデンシャル、マルサイト、検疫、修復、セキュリティ評価、ウォッチリスト、UBA、CTEP、デバイス、およびコンテンツ) およびイベント (ページ、アプリケーション、監査、インフラストラクチャ、ネットワーク、インシデント、エンドポイント、およびクライアント ステータス) をNetskopeするために使用されます。
| データ型 | デスクリプション |
|---|---|
| イベントサポート | はい:ページ、アプリケーション、監査、インフラストラクチャ、ネットワーク、インシデント、エンドポイント、クライアントステータス |
| アラートサポート | はい: DLP、マルウェア、ポリシー、侵害されたクレデンシャル、マルサイト、検疫、修復、セキュリティ評価、ウォッチリスト、UBA、CTEP、デバイス、およびコンテンツ |
| WebTxサポート | いいえ |
権限
Amazon S3バケットにイベントおよびアラートデータを送信するためのIAMユーザーへのアクセス許可。
- ListBucket
- CreateBucket
- ListAllMyBuckets
- GetBucketPolicy
- GetBucketPublicAccessBlock
- PutEncryptionConfiguration
- PutBucketPublicAccessBlock
- PutBucketPolicy
- GetBucketLocation
- PutObject
APIの詳細
使うAPI一覧
このプラグイン AWS S3 にファイルオブジェクトを作成するための Python ライブラリ。
LibraryAWS SDK for Python (Boto3)
使用方法:AWS SDK for Python(Boto3)を使用して、Amazon Elastic Compute Cloud(Amazon EC2)やAmazon Simple Storage Service(Amazon S3)などのAWSサービスを作成、構成、管理します。SDKは、オブジェクト指向APIと、AWSサービスへの低レベルアクセス機能を提供します。
Create a Client
s3_client = boto3.client(
"s3",
aws_access_key_id=self.aws_public_key,
aws_secret_access_key=self.aws_private_key,
aws_session_token=self.aws_session_token,
region_name=self.region_name,
config=Config(proxies=self.proxy, user_agent=self.useragent),
)
Create a Bucket
bucket = s3_client.create_bucket(
Bucket=bucket_name,
CreateBucketConfiguration=location,
)
Upload to File to the Bucket
s3_client.upload_file(
file_name,
bucket_name,
object_name,
)
Get an AWS Resource
s3_resource = boto3.resource(
"s3",
aws_access_key_id=self.aws_public_key,
aws_secret_access_key=self.aws_private_key,
region_name=self.region_name,
config=Config(proxies=self.proxy, user_agent=self. user-agent),
)
パフォーマンスマトリックス
このパフォーマンス測定値は、これらのVM仕様に基づいてテストされた大規模スタックCEに関するものです。これらの測定値は、約10KBのファイルを30秒で取り込むことを考慮に入れて追加されています。
| デスクリプション | 仕様 |
|---|---|
| スタックの詳細 | サイズ:大 RAM:32 GB CPU:16コア |
| イベント、アラートはサードパーティのSIEMに取り込まれる。 | ~ 200K EPM |
ユーザーエージェント
ユーザーエージェント: APN/1.1 (ahq9d89xj9gspapczzdb59goq)
ワークフロー
- AWS S3 バケットアクセスに必要なクレデンシャルを生成します。
- S3バケットとポリシーを作成します。
- プライベートキー、証明書ボディ、パスワードフレーズ、プロファイルARN、ロールARN、トラストアンカーARNを生成します。 AWS IAMロールAnywhereの場合。
- AWS S3イベント、アラートプラグインを設定します。
- AWS S3イベント、アラートプラグインのログシッパービジネスルールを設定します。
- AWS S3 Events、AlertsプラグインのLog Shipper SIEMマッピングを設定します。
- AWS S3イベント、アラートプラグインを検証します。
動画を見る
再生ボタンをクリックして動画をご覧ください。
AWS S3ソースバケットを作成する
このバケットは プラグインの設定時に、AWS S3 ソースバケット設定パラメータで指定されます。
- Enter Bucket Name, scroll down, and click Create Bucket. Example: netskope-ce-source-bucket.
- 「パブリックアクセスをブロックする(バケット設定)」セクションでEditをクリックします。すべてのチェックボックスのチェックを外し、 Save Changesをクリックします。確認を求められます。確認してConfirmをクリックしてください。

- S3 Bucket policyタイプとしてSelect 、ステートメントの詳細を追加して、
を生成します。 <user-arn>をユーザー ARN に置き換えます。 ソース バケットにアクセスするための<bucket-name>を上記で作成したソース バケットに置き換えます。 サンプル<user-arn>: arn:aws:iam::7111xxxxxxxx:user/xxxxxxxx, and <bucket-name>: netskope-ce-source-bucket- ポリシーの種類Select : S3 バケット ポリシー
- 効果:許可する
- Principal: <user-arn>
- アクション:
- GetBucketAcl
- GetBucketPolicy
- ARN: arn:aws:s3:::<bucket-name>
- Add Statementをクリックしてください。

- 上にスクロールして、別の文を追加してください。
- ポリシーの種類Select : S3 バケット ポリシー
- 効果:許可する
- Principal: <user-arn>
- アクション:
- PutObject
- PutObjectAcl
- ARN: arn:aws:s3:::<bucket-name>/*
- Add Statementをクリックしてください。


バケットポリシーを作成する
- On the JSON tab, enter this policy. Click Next: Tags, and click Next: Review.

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"s3:GetBucketPublicAccessBlock",
"s3:PutEncryptionConfiguration",
"s3:PutBucketPublicAccessBlock",
"s3:ListAllMyBuckets",
"s3:PutBucketPolicy",
"s3:CreateBucket",
"s3:ListBucket",
"s3:GetBucketPolicy",
"s3:GetBucketLocation"
"s3:PutObject"
],
"Resource": "*"
}
]
}
- このポリシーをユーザーに紐付けてください。IAM > Usersに移動し、ポリシーを適用するユーザーを選択してください。Add permissionsをクリックし、もう一度Add permissionsをクリックしてください。

プラグイン認証方法
IAMロールAnywhereの設定
前提条件
プラグインを認証するには、 AWS Certificate Managerサービスを有効にする必要があります。 AWS IAM Roles Anywhere認証方法。
注記
プライベート認証局、トラストアンカー、およびプロファイルは、AWS S3ソースバケットが存在するリージョンと同じリージョンに作成してください。
IAM ポリシーを作成する
これは プライベート CA 証明書を作成するために必要な権限 (トラスト アンカーとプロファイルを作成するための権限を含む) と IAM ロール Anywhere が含まれています。
- ポリシージェネレーターにアクセスし、Add Statementをクリックしてポリシーを生成してください。
- ポリシーの種類Select : IAM ポリシー
- 効果:許可する
- AWSサービス: AWSプライベート認証局
- アクション:
- 証明書認証局を作成する
- 認証局について説明します
- 証明書を取得する
- 認証局証明書を取得する
- GetCertificateAuthorityCsr
- 輸入証明書認証局証明書
- 証明書の発行
- 認証局一覧
- ARN: *
- Add Statementをクリックしてください。

- ポリシーの種類Select : IAM ポリシー
- 効果:許可する
- AWSサービス:AWS Identity and Access Management(IAM)
- アクション:
- 役割ポリシーを添付する
- CreateAccessKey
- ロールの作成
- 役割を削除
- パスロール
- ARN: *
- Add Statementをクリックしてください。

- ポリシーの種類Select : IAM ポリシー
- 効果:許可する
- AWSサービス: AWS証明書マネージャー
- アクション:
- 証明書の説明
- 輸出証明書
- 証明書を取得する
- 証明書一覧
- 証明書のタグ一覧
- 証明書のリクエスト
- ARN: *
- Add Statementをクリックしてください。

- ポリシーの種類Select : IAM ポリシー
- 効果:許可する
- AWS サービス: AWS Identity and Access Management ロールをどこでも
- アクション:
- プロフィールの作成
- CreateTrustAnchor
- プロフィールを取得する
- GetTrustAnchor
- プロフィール一覧
- リストトラストアンカー
- ARN: *
- Add Statementをクリックしてください。

- ポリシーをそのままコピーし、プライベート CA 証明書の作成に必要なポリシーを作成する次の手順で使用します。
- AWSコンソールにアクセスし、「すべてのサービス」からIAM を選択してください。左側のパネルからPoliciesをクリックし、 Create Policyをクリックします。

プライベート認証局を作成する
- Add tags if any (optional).
- Enable the checkbox in the CA permissions options section.
- Enable the checkbox in the Pricing section.
- CA証明書を作成するには、 Createをクリックしてください。


信頼の基盤を築く
- 認証局(CA)ソースとして、(前の手順で作成した) AWS Certificate Manager Private CA Select 。
- 必要に応じてタグを追加してください。
- Create a trust anchorをクリックしてください。


IAMロールを作成する
- カスタム信頼ポリシーを以下の信頼ポリシーに置き換えます。このポリシーには、Roles Anywhere サービスを使用するための権限が含まれています。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": [
"rolesanywhere.amazonaws.com"
]
},
"Action": [
"sts:AssumeRole",
"sts:TagSession",
"sts:SetSourceIdentity"
]
}
]
}
- Nextをクリックしてください。
- Netskope -ce-roleAnywhereのようなロール名を指定し、そのロールのデスクリプションを追加します。
- Create roleをクリックしてください。

プロフィールを作成する
- Enter a Profile name, like netskope-ce-profile.
- Create IAM Role セクションで作成されたロールSelect ( Netskope -ce-roleAnywhere )。

プライベート証明書をリクエストする
- passphrase. を入力してください。パスフレーズはAWS S3プラグインの設定に必要となるため、メモしておいてください。 AWS IAM Roles Anywhere認証方式。
- Generate PEM Encodingをクリックしてください。

- Certificates はすべてダウンロードしてください。二度と表示されなくなります。新しい証明書の場合は再度エクスポートする必要があります。詳細については、 AWS IAM Role Anywhereを参照してください。

AWSにデプロイされた構成
役割を作成する
EC2インスタンスにロールを割り当てる
Fargateインスタンスにロールを割り当てる
- IAM > Rolesへ移動してください。
- Search for the ExistingECSTaskRole parameter value. Otherwise, search for NetskopeCloudExchangeTaskRole-<CFN name> and select the role.

K8sインスタンスにロールを割り当てる
- K8sインスタンスを作成する際に、ServiceAccount用に作成されたロールを開きます。
- 以前作成したバケットポリシーを添付します。
AWS S3イベント、アラートプラグインを設定する
- Cloud Exchange で、 Settings > Plugin Storeに移動します。
- AWS S3 Events, and Alerts v1.2.0 (CLS)プラグインボックスを検索して選択します。

- Nextをクリックして、設定パラメータを入力してください。
- Authentication Method: 認証に使用する方法Select (AWS/AWS IAM Roles Anywhereにデプロイ済み)
- Private Key: AWSプライベートCA証明書を復号するための秘密鍵。AWS IAM Roles Anywhere認証タイプに必須です。
- Certificate Body: AWSパブリック/プライベートCA証明書の証明書本体。AWS IAM Roles Anywhere認証タイプに必須です。
- Password Phrase: CA証明書を復号するためのパスワードフレーズ。AWS IAM Roles Anywhere認証タイプに必須です。
- Profile ARN: AWSクライアント認証用のAWSプロファイルARN。AWS IAMロールの認証タイプに必須.
- Role ARN: AWSクライアント認証用のAWSロールARN。AWS IAM Roles Anywhere認証タイプに必須です。
- Trust Anchor ARN: AWSクライアント認証用のAWSトラストアンカーARN。AWS IAM Roles Anywhere認証タイプに必須です。
- AWS S3 Bucket Region Name: AWS S3バケットを取得するリージョン名。リージョン名が、プロファイルARNおよびトラストアンカーARNのリージョン名と一致していることを確認してください。
- AWS S3 Bucket Name: データオブジェクトが保存されるAWS S3バケット名。



AWS S3 イベント、アラート用のログシッパービジネスルールを設定する
- Log Shipperで、 Business Rulesに移動します。
- デフォルトでは、すべてのアラートとイベントをフィルタリングするビジネスルールが設定されています。特定の種類のアラートやイベントを除外したい場合は、 Create New Ruleをクリックして、ルール名とフィルターを追加して新しいビジネスルールを設定します。
- Saveをクリックしてください。

AWS S3 イベント、アラート用の SIEM マッピングを設定する
- SIEM Mappingsに移動してAdd SIEM Mappingをクリックしてください。
- ソースプラグイン( Netskope CLS)、宛先プラグイン(AWS S3 Events、Alerts)、ビジネスルールSelect 、 Saveをクリックします。
- SIEM マッピングが追加されると、 Netskopeテナントからのデータの取得、変換、AWS プラットフォームへの取り込みが開始されます。

AWS S3イベント、アラートプラグインを検証する
プルを検証する
Netskopeテナントから指標を取得することを検証する。
Cloud Exchange のLoggingに移動し、取得したログを検索してください。


プッシュ通知を検証する
Netskope Cloud Exchange上でプラグインのワークフローを検証します。
AWS S3 プラットフォームからのプッシュを検証するには:
- AWS S3にアクセスしてください。検索バーでBucketsを検索して選択します。
- プラグインを作成する際に、バケットを検索します。
- バケット名をクリックしてください。
注記
フォルダ構造は、alerts/feedname/year/month/day/hour/filename.gz のようになります。
Example: awsdemobucket/alerts/feedname=マルウェア/year=2023/month=11/day=30/hour=9/1701336881_139977276685128.txt



ファイルをダウンロードした後、アラート/イベントは次のようになります。


AWS S3イベント、アラートプラグインのトラブルシューティング
プラグインのアップデート後、既存のプラグイン設定で問題が発生しています。
最近AWS S3プラグインをアップデートした場合、既存のプラグイン設定を編集するとCloud Exchangeのインターフェースが空白になるという問題が発生する可能性があります。この問題は、 Cloud Exchangeバージョン 4.2.0 および 5.0.0 において、ユーザーがアップデート後にプラグインの設定を変更しようとして [構成パラメータ] ページに移動した場合に発生する可能性があります。
Cloud Exchange バージョンでできることは以下のとおりです。
バージョン4.2.0、5.0.0の場合:唯一の解決策は、現在のプラグイン設定を削除し、最初から新しい設定を行うことです。
新しいプラグインの設定中に問題が発生しています
AWS IAM Roles Anywhereを使用して新しいプラグインを作成し、400エラーが発生した場合、プラグインを保存できない根本原因は、ログを展開したときのログセクションにあります。


What to do:
ログを展開すると、トラストアンカー ARN、ロール ARN、プロファイル ARN の少なくとも 1 つに異なるアカウント ID があることが確認できます。そのため、提供されたパラメーターが同じアカウントから生成され、同じリージョンであることを確認する必要があります。






























































