このドキュメントでは、 Netskope Cloud Exchangeの Log Shipper モジュール用に AWS SQS プラグインを設定する方法について説明します。このプラグインは、AWS SQS プラットフォームへのアラート (DLP、マルウェア、ポリシー、侵害されたクレデンシャル、マルサイト、隔離、修復、セキュリティ評価、ウォッチリスト、CTEP、UBA) データの取り込みをサポートします。 プラグインにアクセスするには、AWS のクレデンシャルが必要です。 注:このプラグインは、AWS SQSキューへのJSON形式でのデータ取り込みをサポートしています。
前提条件
この設定を完了するには、以下が必要です。
- Netskopeテナント(または、例えば本番環境と開発/テスト環境など、複数のテナント)。
- Netskope Cloud Exchangeテナントには、テナントプラグインとログシッパープラグインが既に設定済みです。
- AWS SQSへの接続。
- 次のホストへの接続: https:// <aws_region> .console.aws.amazon.com/。例:https://us-east-1.console.aws.amazon.com/
- AWS SQSサービスへのアクセス。
AWS SQSプラグインのサポート
AWS SQS プラグインは、 Netskopeアラート データを AWS SQS キューに取り込むために使用されます。 このプラグインは、JSON形式のデータをSQSキューに送信することをサポートしています。
| イベントの種類 | サポートされていません |
| アラートの種類 | はい (DLP、マルウェア、ポリシー、侵害されたクレデンシャル、マルサイト、検疫、修復、セキュリティ評価、ウォッチリスト、CTEP、UBA) |
| ログの種類 | サポートされていません |
| WebTxサポート | サポートされていません |
マッピング
| Netskopeフィールド | AWS SQSフィールド |
|---|---|
| alert_name | 名前 |
| alert_type | タイプ |
権限
Amazon SQSキューにアラートデータを送信するためのIAMユーザーへの権限付与。SQSキューポリシーの作成に記載されている手順に従ってください。
APIの詳細
使うAPI一覧
このプラグインは使うPythonライブラリを使ってAWS SQSでデータを作成・取り込みます。
ライブラリ:AWS SDK for Python(Boto3)。
使用方法:AWS SDK for Python(Boto3)を使用して、Amazon Simple QueueなどのAWSサービスを作成、設定、管理します。Amazon SQS、Amazon Elastic Compute Cloud (Amazon EC2)、Amazon Simple Storage Service (Amazon S3)。SDKはオブジェクト指向APIとAWSサービスへの低レベルアクセスを提供します。
Creating the SQS Client :
sqs_client= boto3.client(
"sqs",
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),
)
Creating a Queue:
queue= sqs_client.create_queue(
QueueName=queue_name
)
Getting a Queue URL:
queue_url = sqs_client.get_queue_url(
QueueName=queue_name
)
Sending Messages in a Batch:
response = sqs_client.send_message_batch(
QueueUrl=queue_url, Entries=batches
)
パフォーマンスマトリックス
このパフォーマンス測定値は、下記のVM仕様でテストされた大規模スタックCEに関するものです。以下の測定値は、約10KBのファイルを21秒で取り込むことを前提として追加されています。
| スタックの詳細 | サイズ:大 RAM:32GB
CPU: 16コア |
| イベント、アラートはサードパーティのSIEMに取り込まれる。 | 200K EPM |
ユーザーエージェント
netskope-ce-5.0.1-cls-aws_sqs-v1.0.0
ワークフロー
- AWS SQSキューとキューポリシーを作成します。
- プライベートキー、証明書ボディ、パスワードフレーズ、プロファイルARN、ロールARN、トラストアンカーARNを生成します。 認証にはAWS IAM Role Anywhereを使用します。 または、別の AWS 認証構成を使用します。
- Create a Queue.
- AWS SQSアラートプラグインを設定します。
- ビジネスルールを設定します。
- SIEMマッピングを設定します。
- プラグインを検証してください。
再生ボタンをクリックして動画をご覧ください。
Create AWS SQS Queue
ここで作成されたキュー名は プラグインの設定時に「キュー名」パラメータに使用されます。
- キューを作成し、必要なポリシーを設定するには、AWSコンソールにログインしてください。

- 「すべてのサービス」からSimple Queue Serviceを検索して選択します。

- Create queue .
をクリックしてください
- タイプにはStandardを選択してください。キューの名前を入力してください。

- 必要に応じて設定情報を提供してください。

- サーバー側の暗号化を有効にし、暗号化キーのタイプとしてAmazon SQS Keyを選択します。

- 要件に応じて、アクセス ポリシー、リドライブ許可ポリシー、配信不能キュー、およびタグをSelect 。 「作成」をクリックしてください。


- キューが正常に作成されました。

SQSキューポリシーを作成する
- IAMを検索し、左側のパネルでPoliciesをクリックします。

- Create policy .
をクリックしてください
- JSONタブをクリックし、以下のポリシーを入力してください。Next: TagsをクリックしてからNext: Reviewクリックしてください。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "sqs:GetQueueUrl", "sqs:SendMessage", "sqs:CreateQueue" ], "Resource": "arn:aws:sqs:*:XXXXXXXXXXX:*" }, { "Sid": "VisualEditor1", "Effect": "Allow", "Action": "sqs:ListQueues", "Resource": "*" } ] } - 名前を入力してCreate Policyをクリックしてください。

- このポリシーをユーザーに添付してください。IAM > Usersへ移動してください。権限を付与したいユーザーSelect 、 Add permissionsをクリックしてから、「権限オプションの追加」をクリックします。

- 「権限」でAttach policies directly Select 、 前の手順でソースキュー用に作成したものを検索して選択します。

- Nextをクリックしてから、 Add permissionsをクリックしてください。このポリシーはユーザーに紐付けられます。

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

- 上にスクロールして、別の文を追加してください。
- ポリシーの種類Select : IAM ポリシー
- 効果:許可する
- AWSサービス:AWS Identity and Access Management(IAM)
- アクション:
- 役割ポリシーを添付する
- CreateAccessKey
- ロールの作成
- 役割を削除
- パスロール
- ARN: *
- 「ステートメントの追加」をクリックしてください。

- 上にスクロールして、別の文を追加してください。
- ポリシーの種類Select : IAM ポリシー
- 効果:許可する
- AWSサービス: AWS証明書マネージャー
- アクション:
- 証明書の説明
- 輸出証明書
- 証明書を取得する
- 証明書一覧
- 証明書のタグ一覧
- 証明書のリクエスト
- ARN: *
- 「ステートメントの追加」をクリックしてください。

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

- 「ポリシーの生成」をクリックしてください。

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

- ポリシーを JSON タブにコピーし、 [次へ:タグ]をクリックしてから、 [次へ:レビュー
をクリックします。
- 名前( Netskope -ce-rolesAnywhere-ポリシーなど)を入力し、 「変更を保存」をクリックします。

プライベート認証局を作成する
- AWSコンソールにログインしてください。
- 証明書マネージャーを検索します。

- AWSプライベートCAをクリックします。
- 「プライベートCAを作成」をクリックしてください。

- モードオプションで「汎用」を選択してください。
- CAタイプのオプションでは、 「ルート」を選択してください。

- ここで 組織(O)が登場します。

- キーアルゴリズムのオプションで、 RSA 2048を選択してください。


- タグを追加 該当する場合(任意)。
- CA権限オプションセクションのチェックボックスをオンにしてください。
- 価格設定セクションのチェックボックスをオンにしてください。
- CA証明書を作成するには、 「作成」をクリックしてください。


- 「アクション」から「インストール」を選択します。

- 「確認してインストール」をクリックしてください。


信頼の基盤を築く
- IAMサービスを検索し、アクセス管理の下にある「ロール」に移動し、「ロールAnywhere」までスクロールダウンして「管理」を選択します。

- 「信頼関係を作成」アンカー
をクリックします。
- Netskope-ce-trust-anchor のような 信頼アンカー名 を入力してください。

- 認証局 (CA) ソースとして、 AWS Certificate Manager プライベート CA (前の手順で作成済み) Select 。
- 必要に応じてタグを追加してください。
- 「信頼アンカーを作成」をクリックしてください。


- 作成したトラストアンカーをクリックし、トラストアンカーARNをコピーします。

IAMロールを作成する
- AWSコンソールでIAMサービスに移動してください。
- アクセス管理サブメニューの「役割」をクリックします。
- 「役割の作成」をクリックします。

- 「Trusted entity」タイプで「 Custom Trust policy」を選択してください。

- Policy Generatorへ移動してください。
- カスタム信頼ポリシーを以下の信頼ポリシーに置き換えてください。このポリシーには、ロールどこでもサービスを使用するためのアクセス許可が含まれています。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "rolesanywhere.amazonaws.com" ] }, "Action": [ "sts:AssumeRole", "sts:TagSession", "sts:SetSourceIdentity" ] } ] }
- 「次へ」をクリックしてください。
- [アクセス許可ポリシー] で、「SQS キュー ポリシーの作成」で作成したポリシーを選択します。

- 「次へ」をクリックしてください。
- ロール名 ( AWS-SQS-Roleなど) とロールのデスクリプションを指定します。

- 「役割の作成」をクリックします。
- ロールARNをメモしてください これは、認証方法「AWS IAM Roles Anywhere」のプラグイン設定パラメータ「ロールARN」で必要となるためです。

プロフィールを作成する
- アクセス管理の下にある「役割」 Select 。
- 「Roles Anywhere」までスクロールダウンして、 「管理」をクリックします。

- セットアップ手順を展開してください。
- ステップ2:役割の設定をクリックします。
- 「プロファイルの設定」をクリックしてください。

- Netskope -ce-profileのようにプロファイル名を入力してください。
- 「IAMロールの作成」で作成したロールSelect Netskope -ce-roleAnywhere 。

- インラインポリシーを削除します。
- 「プロフィールを作成」をクリックしてください。



- 作成したプロファイルSelect 、プロファイルARNをコピーします。

プライベート証明書をリクエストする
- AWS Certificate Manager > 証明書のリクエストに移動します。
- Select プライベート証明書をリクエストしてください。

- 「次へ」をクリックしてください。
- 前の手順で作成した認証局Select 。

- 完全修飾ドメイン名フィールドに、 Netskope -ce.comのようにドメイン名を入力してください。
- SelectRSA 2048をキーアルゴリズムとして使います。

- 必要に応じてタグを追加してください。
- 証明書の更新権限を承認してください。
- リクエストをクリックしてください。

- AWS Certificate Manager のナビゲーション ペインから「証明書の一覧」に移動します。
- 以前に作成した証明書Select 。

- エクスポートをクリックしてください。

- パスフレーズを入力してください。AWS Security Lakeプラグインの設定に必要となるため、パスフレーズをメモしておいてください。 AWS IAM Roles Anywhere認証方式。
- 「PEMエンコーディングを生成」をクリックしてください。

- すべてダウンロード 証明書 二度と表示されなくなるからです。新しい証明書の場合は、再度エクスポートする必要があります。
詳細については、AWS IAM Role Anywhere を参照してください。
AWS認証
役割を作成する
- AWSコンソールでIAMサービスに移動してください。
- 「役割を作成」をクリックします。

- AWSサービスSelect 。
- [使うケース] で[EC2]を選択します。
- 「次へ」をクリックしてください。

- 「AWS SQS ポリシーの作成」で作成したアクセス許可ポリシーSelect 。
- 「次へ」をクリックしてください。

- ロール名( AWS-SQS-Roleなど)を入力し、デスクリプションを追加します。

- 「役割の作成」をクリックします。

EC2インスタンスにロールを割り当てる
- EC2インスタンスのコンソールにログインしてください。
- 「インスタンス」 の下にある 「インスタンス」 をクリックします。


- 「アクション」>「セキュリティ」>「IAMロールの変更」に移動します。

- Select 上で作成した「役割作成」で作成した役割を。 (Netskope-ce-instance-role)
- 「IAMロールの追加」または「IAMロールの変更」をクリックしてください。

K8sインスタンスにロールを割り当てる
- K8sインスタンスを作成する際に、ServiceAccount用に作成されたロールを開きます。
- 「AWS SQS ポリシーの作成」で作成したポリシーを添付します。
AWS SQSプラグインを設定する
- Cloud Exchange で、 Settings > Pluginsに移動します。
- AWS SQSプラグインを検索して選択し、プラグイン作成ダイアログを開きます。

- 構成名を入力してください。JSONデータの送信のみがサポートされているため、変換切り替えボタンを無効にしてください。

- Nextをクリックしてください。
- Enter values for these parameters:
- 認証方法:認証に使用する方法Select (AWS/AWS IAMロールAnywhereにデプロイ)
- 秘密鍵:AWSプライベートCA証明書を復号化するための秘密鍵。AWS IAM Roles Anywhere認証タイプに必須です。
- 証明書本体:AWSパブリック/プライベートCA証明書の証明書本体。AWS IAM Roles Anywhere認証タイプに必須です。
- パスワードフレーズ:CA証明書を復号するためのパスワードフレーズ。AWS IAM Roles Anywhere認証タイプに必須です。
- プロファイルARN:AWSクライアント認証用のAWSプロファイルARN。AWS IAM Roles Anywhere認証タイプに必須です。
- ロールARN:AWSクライアント認証用のAWSロールARN。AWS IAM Roles Anywhere認証タイプに必須です。
- トラストアンカーARN:AWSクライアント認証用のAWSトラストアンカーARN。AWS IAM Roles Anywhere認証タイプに必須です。
- AWS SQSリージョン名: AWSキューを取得するAWS SQSリージョン名。リージョン名が、プロファイルARNおよびトラストアンカーARNのリージョン名と一致していることを確認してください。
- AWS SQSキュー名:データオブジェクトが格納されるAWS SQSキュー名。
- Saveをクリックしてください。新しいプラグインはLog Shipper > Pluginsページで利用可能になります。

AWS SQS 用のログシッパービジネスルールを設定する
- ビジネスルールページに移動してください。
- デフォルトでは、すべてのアラートとイベントをフィルタリングするビジネスルールが設定されています。特定の種類のアラートをフィルターで除外する場合は、[新しいルールの作成] をクリックし、ルール名とフィルターを追加して新しいビジネス ルールを構成します。


AWS SQS 用のログシッパー SIEM マッピングを設定する
- Log Shipper > SIEM Mappingsに移動してAdd SIEM Mappingをクリックしてください。
- Sourceプラグイン(CLS Netskope)、Destinationプラグイン(CLS AWS SQS)、ビジネスルールをSelectし、Saveをクリックします。

- SIEM マッピングが追加されると、 Netskopeテナントからのデータの取得、変換、AWS SQS キューへの取り込みが開始されます。

AWS SQSプラグインを検証する
プルを検証する
Netskopeテナントから指標が取得されていることを確認するには、Netskope CEのログ記録画面に移動してください。抽出されたログを検索してください。
プッシュ通知を検証する
Netskope Cloud Exchangeでプラグインのワークフローを検証するには:
- ログ記録に移動し、フィルターメッセージに「insted」が含まれるようにして、取り込まれたイベントを検索します。
- 取り込まれたログはフィルタリングされます。

AWS SQSキューへのプッシュを検証するには:
- AWSコンソールにアクセスしてください。検索バーでQueueを検索し、 Simple Queue Serviceをクリックします。

- プラグインを作成する際に、キューを検索します。 プラグインを作成する際に。
- キュー名をクリックし、次にSend and receive messagesをクリックします。

- 下にスクロールしてPoll for messagesをクリックしてください。

- 共有されたすべてのデータは以下の通りに表示されます。

特定のアラートは使う 検索メッセージ のテキストボックスから除外できます。 アラートの詳細を表示するには、IDをクリックしてください。アラートの名前とタイプのマッピングを確認するには、「属性」タブをクリックしてください。

トラブルシューティング
CLS AWS SQSプラグインの設定に失敗しました。
CLS AWS SQSプラグインの設定ができない場合、以下のいずれかの理由が考えられます。
- 認証方法としてIAM Role Anywhereを使用する場合、証明書やその他の構成パラメータが同じリージョンに存在しない可能性があります。
- Netskope CEがAWSにデプロイされている場合、 AWSにデプロイされた認証方法では、適切なロールがEC2インスタンスにアタッチされません。
- Invalid values provided to the configuration parameters.
- IAM 権限が AWS プラットフォームでユーザーに提供されていません。
これらの問題を解決するには、以下の手順に従ってください。
- 証明書およびその他の構成パラメータが同じリージョンで作成されていることを確認してください。
- EC2インスタンスに適切なロールを割り当てるには、「ロール割り当て」セクションの手順に従ってください。
- 設定パラメータには有効な値が指定されていることを確認してください。ログページに移動して、ログメッセージを確認してください。
- ユーザーにIAM権限を付与します 構成パラメータが作成されます。
AWS SQSキューにアラートを送信できません。
AWS SQSキューにアラートをプッシュできない場合は、 CLS AWS SQSプラグインの設定後にキューがAWS SQSから削除されたことが原因である可能性があります。
この問題を解決するには、プラグインの設定を新しいキュー名で更新してください。
AWS SQSキューでアラートが見つかりません。
AWS SQSキューでアラートが見つからない場合は、AWS SQSキューのデフォルトのメッセージ保持期間が4日間であることが原因である可能性があります。アラートがメッセージ保持期間よりも古い場合、アラートは自動的に削除されます。
この問題を解決するには、以下の手順に従ってください。
- AWS コンソールに移動し、「クレデンシャル」と入力してログインします。

- 「すべてのサービス」から「シンプルキューサービス」 Selectか、検索バーで「シンプルキューサービス」を検索してください。
- リストからキューSelect 、「編集」ボタンをクリックしてください。
- 設定画面で、必要に応じてメッセージ保持期間を更新してください。


