このドキュメントでは、 Netskope Cloud Exchangeプラットフォームの Risk Exchange モジュールを使用して AWS Verified Access v1.0.0 プラグインを設定する方法について説明します。 このプラグインは 検証済みのアクセスインスタンスにアタッチされた CloudWatch ロググループ内のログストリームからユーザーを取得します。 このプラグインは、ユーザーに対する操作をサポートしていません。
前提条件
この統合を完了するには、以下が必要です。
- Netskopeテナント(または、例えば本番環境と開発/テスト環境など、複数のテナント)。
- Netskope Cloud Exchangeテナントには、テナントプラグインとリスクエクスチェンジプラグインが既に設定済みです。
- AWS Verified Accessコンソールへの接続。
AWS Verified Accessプラグインのサポート
CRE AWS Verified Accessプラグインは、CloudWatchに存在するロググループのログストリームから、ユーザーとその詳細情報を取得します。このプラグインは、いかなる操作もサポートしていません。
| 取得したデータの種類 | ユーザー |
| サポートされているアクション | アクションなし |
マッピング
マッピングは 取得したユーザーと詳細を表示するためのものです。 プラグイン設定時にマッピングされたフィールドは、データが取得されるとレコードページに表示されます。以下は、プラグインの設定時に使用すべき推奨マッピングです。 プラグインの設定時に使用してください。
ユーザー向けプルマッピング
| プラグインフィールドラベル | 想定されるデータ型 | 推奨フィールドラベル | 総合戦略 |
|---|---|---|---|
| 電子メールアドレス | String | 電子メールアドレス | Unique |
| Username | String | Username | Overwrite |
| UUID | String | UUID | Unique |
権限
AWS Access が IAM ユーザーに検証済みの CloudWatch 権限を付与します。AWS CloudWatch ポリシーの作成セクションに記載されている手順に従ってください。
APIの詳細
使うAPI一覧
このプラグイン AWS Verified Access インスタンスにアタッチされた AWS CloudWatch ロググループからログを取得するための Python ライブラリ。
ライブラリ: AWS SDK for Python (Boto3)。
使用方法:AWS SDK for Python(Boto3)を使用して、Amazon Simple Queue Service(Amazon SQS)、Amazon Elastic Compute Cloud(Amazon EC2)、Amazon CloudWatch Logs、Amazon Simple Storage Service(Amazon S3)などのAWSサービスを作成、構成、管理します。SDKは、オブジェクト指向APIと、AWSサービスへの低レベルアクセス機能を提供します。
Creating Cloudwatch Log Client:
cloudwatch_logs = session.client(
"logs",
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.configuration["region_name"].strip(),
config=Config(proxies=self.proxy, user_agent=self.useragent),
)
Describe Log Streams:
response = cloudwatch_logs.describe_log_streams(
**describe_log_streams_params
)
Getting Log Events:
response_events = cloudwatch_logs.get_log_events(
**params
)
パフォーマンスマトリックス
以下は、下記の仕様を持つ大規模CEスタック上で1万人のユーザーをプルして実施したパフォーマンスマトリックスです。
| スタックサイズ | 大きい
RAM: 32 GB コア: 16 |
| 取得および更新されたユーザーレコードを保存するのに要した時間 | 約10分 |
ユーザーエージェント
netskope-ce-5.1.0-cre-aws-verified-access-v1.0.0
ワークフロー
- AWS Verified Access インスタンスを設定します(まだ設定していない場合)。
- CloudWatchロググループを作成します。
- ロググループをVerified Accessインスタンスにアタッチします。
- AWS Cloudwatch ポリシーを作成します。
- AWS Verified Accessプラグインを設定します。
- AWS Verified Access 用の Risk Exchange ビジネスルールを追加します。
- AWS Verified Access 用の SIEM マッピングを追加します。
- AWS Verified Access プラグインを検証します。
再生ボタンをクリックして動画をご覧ください。
検証済みアクセスインスタンスを構成する
認証済みアクセスに必要な設定を行うには、以下のリンクに記載されている手順に従ってください。
https://catalog.workshops.aws/verifiedaccessworkshop/en-US/labs/lab1
CloudWatch Logsグループを作成する
- AWSコンソールにログインしてください。
- 検索してCloudWatch .
をクリックしてください。
- Log groups .
をクリックしてください
- Create log group .
をクリックしてください
- ロググループの名前を入力し、 Saveをクリックしてください。

- 作成されたロググループを検索します。

ロググループを検証済みアクセスインスタンスにアタッチします
- AWSコンソールにログインしてください。
- 「Verified Access」を検索し、 AWS Verified Access .
をクリックしてください。
- Verified Access instance ID .
をクリックしてください
- Verified Access Instance logging configuration .
をクリックしてください
- Modify Verified Access instance logging configuration .
をクリックしてください
- ロググループのドロップダウンリストからロググループSelect 。 Modify configurationをクリックしてください。ログ グループを使用する準備ができました。

AWS CloudWatch ポリシーを作成する
- 検索ボックスに「IAM」と入力し、左側のパネルでPoliciesをクリックします。

- Create Policy .
をクリックしてください
- JSONタブをクリックし、このポリシーを入力してから、 Next .
をクリックします。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:*" ], "Resource": [ "arn:aws:logs:*:*:*" ] } ] } - 名前を入力してCreate Policyをクリックしてください。

- このポリシーをユーザーに添付してください。IAM > Usersへ移動してください。ポリシーを添付したいユーザーSelect、Add permissionsをクリックし、Add permissionsオプションを選択してください。

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

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

プラグイン認証方法
IAMロール認証(あらゆる場所で認証)
前提条件
プラグインを認証するには、 AWS Certificate Managerサービスを有効にする必要があります。 AWS IAM Roles Anywhere認証方法。
プライベート認証局、トラストアンカー、プロファイルは、検証済みアクセスインスタンスとCloudWatchロググループが存在するリージョンと同じリージョンに作成するようにしてください。
ポリシーを作成する
この には、プライベート 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証明書を作成するには、 「作成」をクリックしてください。


- アクションから、 「CA証明書のインストール」を選択してください。

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


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

- 「信頼関係を作成」アンカーをクリックしてください。

- Netskope-ce-aws-verified-trust-anchor のような 信頼アンカー名 を入力してください。

- Select AWS Certificate Manager Private CA(前段階で作成済み)を証明書発行機関(CA)ソースとして利用してください。Select AWSプライベート証明書局の前のステップで作成された証明書です。

- 必要に応じてタグを追加してください。
- 「信頼アンカーを作成」をクリックしてください。

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

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

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

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

- 「次へ」をクリックしてください。
- ロール名(例: Netskope -ce-aws-verified-access-role )とロールのデスクトップリプションを指定してください。

- 「役割の作成」をクリックします。作成した役割を検索し、役割名をクリックします。

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

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

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

- Netskope -ce-aws-verified-access-profileのようなプロファイル名を入力してください。

- 「IAMロールの作成」で作成したロールSelect 。

- インラインポリシーを削除してください。

- 「プロフィールを作成」をクリックしてください。

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

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

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

- 完全修飾ドメイン名フィールドに、 Netskopeのようにドメイン名を入力してください。
- 鍵アルゴリズムとしてRSA 2048 Select 。

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

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

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

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

- すべてダウンロード 証明書 二度と表示されなくなるからです。新しい証明書の場合は、再度エクスポートする必要があります。

証明書本体である証明書プライベートキーは、AWS Verified Access Plugin 使う AWS IAM Roles Anywhere 認証方式の設定に必要となります。 詳細については、 AWS IAM Role Anywhereを参照してください。
AWS認証
役割を作成する
- AWSコンソールでIAMサービスに移動してください。
- 「役割を作成」をクリックします。

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

- 「AWS Cloudwatch ポリシーの作成」で作成したアクセス許可ポリシーSelect 。

- 「次へ」をクリックしてください。
- ロール名 ( aws-verified-access-instance-roleなど) とデスク リプションを入力します。
- 「役割の作成」をクリックします。


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


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

- Select 上で作成した「役割作成」で作成した役割を。 (Netskope-ce-instance-role)
- 「IAMロールの追加」または「IAMロールの変更」をクリックします。EC2インスタンスとキューは同じリージョンにある必要があることに注意してください。

K8sインスタンスにロールを割り当てる
- K8sインスタンスを作成する際に、ServiceAccount用に作成されたロールを開きます。
- 「AWS Cloudwatch ポリシーの作成」で作成したポリシーを添付します。
AWS Verified Accessプラグインを設定する
- Cloud Exchangeで Settings > Pluginsに行ってください。AWS Verified Access v1.0.0 (CRE)プラグインボックスを検索して選択します。

- 構成名を入力し、必要に応じて同期間隔を変更してください。

- Nextをクリックしてください。Select 「AWSにデプロイ済み」とは、インスタンスがAWSにデプロイされている場合です。

- 設定パラメータを入力してください:
- 認証方法:認証に使用する方法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認証タイプに必須です。
- リージョン名:Verified Accessサービスが稼働しているリージョン。リージョン名が、プロファイルARNおよびトラストアンカーARNのリージョン名と一致していることを確認してください。
- CloudWatchロググループ名:Verified Accessログからユーザーの詳細を取得するためのロググループ名。ロググループ名を取得するには、 CloudWatch > Log Groupsにアクセスしてください。
- 初期範囲(日数):データの同期にかかる日数。プラグインが実行されるたびに、指定された日付のデータが同期されます。
注記
- 「認証方法」で「AWSにデプロイ」を選択した場合、初期範囲、CloudWatchロググループ名、リージョンのみが必須項目となります。
- ユーザーがAWSインスタンス以外の場所でプラグインを設定する場合は、 「IAMロールのどこでも設定」セクションで説明されている手順に従って設定パラメータを生成する必要があります。

- Nextをクリックしてください。エンティティのドロップダウンからエンティティをSelectしてください。エンティティフィールドはスキーマエディタのページから作成するか、フィールドのドロップダウンから +Add Field オプションを使って作成できます。 フィールドマッピングを提供してください。推奨されるマッピングについては、「マッピング」セクションを参照してください。

- Saveをクリックしてください。新しいプラグインはリスクエクスチェンジプラグインのページに表示されます。

AWS Verified Access のリスクエクスチェンジビジネスルールを追加する
- Risk ExchangeでBusiness Rulesに移動してください。
- Create New Ruleをクリックしてください。
- ルール名を入力し、プラグインの設定時にフィールドがマッピングされたエンティティを選択してから、必要に応じてフィルターを指定してください。

- Save .
をクリックしてください
AWS Verified Access のリスク交換アクションを追加する
AWS Verified Access プラグインは、以下のアクションタイプをサポートしています。
No Action
この操作はユーザーに対して何らの操作も実行しませんが、[アラート生成] トグルボタンが有効になっている場合は、Ticket Orchestrator でアラートを生成することができます。
NOTE: AWS Verified Access CloudWatchロググループから取得したユーザーレコードのNetskope関連アクションを設定するには、Netskopeガイドを参照してください。Netskopeでサポートされているその他のアクションを設定するには、リスクエクスチェンジプラグインガイドを参照してください。
このアクションを設定するには:
- Risk ExchangeでActionsに移動し、 Add Action Configurationをクリックします。
- ビジネスルール、プラグイン設定をSelectし、「アクションなし」ドロップダウンから「アクションなし」を選択します。アラート生成アクションを実行する前に承認が必要な場合は、「承認が必要」トグルをオンにしてください。Saveをクリックしてください。
- ユーザーが既にレコードに存在する場合は、手動で同期を実行します。生成されたアラートを検証するには、 Ticket Orchestrator Module > Alerts .
にアクセスしてください。
- Save .
をクリックしてください
AWS Verified Accessプラグインを検証する
Cloud Exchangeで検証する
ロググループからユーザーを取得することを検証する。
- Cloud Exchange のLoggingに移動してください。プラグインのログを検索してください。

- Risk ExchangeでRecordsに移動し、AWS Verified Accessプラグインの設定時に選択したエンティティを選択して、プルされたユーザーを表示します。

データは、検証済みのアクセスインスタンスにアタッチされた CloudWatch ロググループ内のログストリームから取得されます。CloudWatch > Log groups > awsverifiedaccesslogsへ移動してください。ログストリームが利用可能になり、これらのログストリームに含まれるユーザーが取得されます。

AWS Verified Accessプラグインのトラブルシューティング
CRE AWS Verified Accessプラグインの設定ができません。
AWS Verified Accessプラグインを設定できない場合、以下のいずれかの理由が考えられます。
- 認証方法「IAMロール Anywhere」の場合、証明書とその他の構成パラメーターは同じリージョンに存在していなくても構いません。
- 認証方法IAMロールAnywhereの場合、ロールARN、トラストアンカーARN、プロファイルARNの作成時に手順が欠落しています。
- Netskope CEがAWSにデプロイされている場合AWSにデプロイされた認証方法では、適切なロールがEC2インスタンスにアタッチされません。
- 設定パラメータに無効な値が指定されています。
- IAM 権限は、AWS プラットフォームではユーザーに提供されません。
これらの問題を解決するには、以下の手順に従ってください。
- 証明書およびその他の構成パラメータが同じリージョンで作成されていることを確認してください。
- 手順を一つも漏らさずに、IAM Role Anywhereの設定手順を必ず実行してください。
- EC2インスタンスに適切なロールを割り当てるには、「ロール割り当て」セクションの手順に従ってください。
- 設定パラメータには有効な値が指定されていることを確認してください。ログページに移動して、ログメッセージを確認してください。
- 構成パラメータが作成されたユーザーに、IAM権限を付与します。
CRE AWS Verified Access からユーザーを取得/表示できません
AWS Verified Accessからユーザーを取得できない場合、以下のいずれかの理由が考えられます。
- ロググループにユーザーが存在しません。
- ロールまたはEC2インスタンスに適切なポリシーが適用されていません。
- ロググループにはログは生成されません。
- ユーザーは取得されますが、レコードではカンマ区切りの値で1行に表示されます。
これらの問題を解決するには、以下の手順に従ってください。
- AWS コンソールで、 CloudWatch > Log groupsに移動します。プラグイン設定で指定されているロググループSelect 。 そこにユーザーが存在するかどうかを確認してください。
- AWS CloudWatch ポリシーの作成と IAM ロールの作成の手順に従って、ポリシーを正しく適用してください。
- 作成された検証済みアクセス設定とロググループへの添付ファイルを確認してください。添付ファイルを検証するには、「検証済みアクセスインスタンスを使用してロググループを添付する」の手順に従ってください。
- エンティティ内に作成されたフィールドが一意であることを確認してください。
制限
AWSではVerified Accessインスタンスにアタッチできるロググループは1つだけなので、ユーザー情報は一度に1つのロググループからしか取得できません。別のロググループからユーザー情報を取得する必要がある場合は、ロググループ名を更新したり、別のロググループ名で新しいプラグインを設定したりできます。

