EgressView は AI 洞察タブの AI プロバイダーとして Amazon Bedrock を利用できます。 Bedrock は キーレスです。EgressView は AWS 認証情報を保存しません。認証は AWS SDK for JavaScript v3 の default credential provider chain に完全委譲し、 設定 UI では AWS リージョンとモデル / 推論プロファイル ID だけを設定します。
AIは読み取り専用です。上限付きの接続集計、端末一覧、network node要約を送信します。 認証情報、端末メモ、生ログ、管理IPは送信しません。
BedrockはOllamaのようなlocal providerではありません。分析requestはEgressView hostを出て、 選択model/profileのrouting境界に従ってAWSで処理されます。AWSの標準的なBedrockデータ保護では、 model providerは利用者のprompt/応答へアクセスせず、入出力はbase modelの学習に使われません。 ただしmodelによってはprovider data sharingを含む別のdata-retention modeがあり得るため、有効化前に 利用modelの最新条件を確認してください。このためEgressViewはBedrockにも明示的なcloud同意を必須とします。
AWS公式のBedrock data protectionと model data-retention modeも確認してください。
AWS SDK(@aws-sdk/client-bedrock-runtime と @aws-sdk/client-bedrock)は通常
依存として同梱されるため、npm install の時点で Bedrock サポートも入ります
(追加インストール不要)。
EgressView は独自の認証探索順を持たず、AWS SDK v3 の標準 chain(概ね 環境変数 → SSO キャッシュ → Web Identity → 共有 config/credentials → EC2/ECS/EKS メタデータ)に 委譲します。最初に解決できた認証情報を使い、有効期限付きの一時認証情報の更新は SDK に任せます。
AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY、または共有認証ファイル
(~/.aws/credentials、aws configure で設定)を用意します。aws sso login を実行し、ポータルセッション
から一時認証情報を解決できるようにします。SSO ポータルセッションが失効すると
EgressView は自動復旧できません。再度 aws sso login してください。 それまで
接続確認は認証エラーを表示します。bedrock:InvokeModel。
Converse API は bedrock:InvokeModel で認可されます。bedrock:InvokeModel も必要です。bedrock:ListFoundationModels と
bedrock:ListInferenceProfiles はモデル候補の取得に使います。discovery は
fail-open で、無くてもモデル / プロファイル ID を直接入力できます。なお一覧取得
の成功は bedrock:InvokeModel の付与を意味しないため、接続確認では最小の生成
呼び出しも行います。実行ロールには、実際に使う推論プロファイルと基盤モデルだけを許可します。次は
jp.プロファイルを使う場合の骨格です。ACCOUNT_ID、PROFILE_ID、MODEL_IDを実値へ
置き換え、destination regionは選択したプロファイルの現在の構成に合わせてください。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "InvokeConfiguredProfile",
"Effect": "Allow",
"Action": "bedrock:InvokeModel",
"Resource": "arn:aws:bedrock:ap-northeast-1:ACCOUNT_ID:inference-profile/PROFILE_ID"
},
{
"Sid": "InvokeOnlyThroughConfiguredProfile",
"Effect": "Allow",
"Action": "bedrock:InvokeModel",
"Resource": [
"arn:aws:bedrock:ap-northeast-1::foundation-model/MODEL_ID",
"arn:aws:bedrock:ap-northeast-3::foundation-model/MODEL_ID"
],
"Condition": {
"StringEquals": {
"bedrock:InferenceProfileArn": "arn:aws:bedrock:ap-northeast-1:ACCOUNT_ID:inference-profile/PROFILE_ID"
}
}
},
{
"Sid": "DiscoverModelsAndProfiles",
"Effect": "Allow",
"Action": [
"bedrock:ListFoundationModels",
"bedrock:ListInferenceProfiles"
],
"Resource": "*"
}
]
}
GetInferenceProfileのmodelsに返るARNを使うと、destination regionの手入力ミスを避けられます。
AWS公式の地理profile IAM例と
照合し、profile変更時はpolicyも見直してください。
Guardrailsを使う場合だけ、対象guardrail ARNへのbedrock:ApplyGuardrailと、設定画面で
自動検出する場合だけbedrock:ListGuardrails(Resource: "*")を追加します。モデルIDを
直接入力する運用ならdiscovery statementは削除できます。Marketplace購読権限は常設しません。
AWS Marketplace 提供のサードパーティモデル(例: Anthropic Claude)は、呼び出す
前に アカウントで一度サブスクリプションを確立する必要があります。未確立の間は、
bedrock:InvokeModel を Resource: "*" で付与していても、次のように失敗します。
AccessDeniedException ... not authorized to perform the required AWS Marketplace actions (aws-marketplace:ViewSubscriptions, aws-marketplace:Subscribe)
aws-marketplace:* 権限はサブスク確立時にだけ必要で、確立後はサブスクが
アカウント全体に永続するため bedrock:InvokeModel だけで動作します。AWS 純正
モデル(例: Amazon Nova)は Marketplace サブスク不要です。
サブスクは一度だけ確立し、実行ロールは最小権限に戻します。
方法A(推奨)— 管理者がサブスク、サービスロールは触らない。
aws-marketplace:ViewSubscriptions と aws-marketplace:Subscribe を持つ
ユーザー/プリンシパルが、対象モデルを一度呼び出す(Bedrock コンソールの playground、
AWS Marketplace コンソール、または CLI)。以後アカウント全体で有効になります。
方法B — サービスロールに一時付与して、後で削除する。
{ "Sid": "BedrockMarketplaceSubscribe", "Effect": "Allow",
"Action": ["aws-marketplace:ViewSubscriptions", "aws-marketplace:Subscribe"],
"Resource": "*" }
aws bedrock-runtime converse ...)。反映に約2分かかることがあります。
jp./apac. プロファイルは複数の宛先リージョン(jp. なら東京+大阪)に
ルーティングし各リージョンでサブスクが要るため、安定して成功するまで数回叩く。BedrockMarketplaceSubscribe の Statement を削除して最小権限に戻す。
サブスクは残るので、bedrock:InvokeModel だけで生成は動き続けます。再サブスク: 後で未サブスクの別モデルへ切り替える場合は、そのモデルに対し 再度サブスクが必要です(方法A/B を再実施、または管理者がサブスク)。権限削除は 恒久的なロックアウトではなく、新モデル導入時に一度だけ再サブスクが要るという意味です。
組織の制限: AWS Organizations の SCP や Private Marketplace で サブスク自体がブロックされている場合、
aws-marketplace:Subscribeを持つユーザー でも完了できません。組織/調達(procurement)管理者がサブスクを許可するか、対象 製品を Private Marketplace に追加する必要があります。
設定 → AI 洞察 で Amazon Bedrock を選び、次を設定します。
ap-northeast-1(東京)、us-east-1。JP に限らず、どの CRIS も選択できます。
| 選択 | プロファイル接頭辞 | データのルーティング |
|---|---|---|
| Global | global. |
全 commercial リージョン(地理境界なし) |
| US | us. |
US 地理内のリージョン |
| EU | eu. |
EU 地理内のリージョン |
| APAC | apac. |
APAC 地理内のリージョン |
| Japan | jp. |
東京(ap-northeast-1)・大阪(ap-northeast-3)=日本内処理 |
| Australia | au. |
Australia 地理内のリージョン |
地理プロファイルは推論リクエスト全体をその地理内に保ちます。Global は任意の
commercial リージョンへルーティングされ得る(レジデンシー保証なし)ため、レイテンシ・
スループット・データレジデンシーの要件で選んでください。日本内データレジデンシー
用途では jp. プロファイル(例
jp.anthropic.claude-sonnet-4-5-20250929-v1:0)を使います。
可用性は AWS の提供状況に依存します。 すべてのモデルがすべての地理でプロファイルを 持つわけではありません(例: Japan CRIS は特定の Claude モデルから提供開始)。特定地理 での処理が必須なら、その地理にプロファイルがあるモデルに限られます。
Bedrock の生成に Amazon Bedrock Guardrail を適用できます。設定 → AI 洞察 で
Bedrock Guardrails を使うを有効化し、guardrail の ID/ARN とバージョン
(既定 DRAFT)を入力します。有効時は Converse の guardrailConfig に渡されます。
bedrock:ApplyGuardrail(cross-Region guardrail profile 使用時は全 destination
region の profile object への bedrock:ApplyGuardrail)が必要です。
⚠ Guardrails は日本内処理を保証しません。 日本限定(
jp.)の guardrail profile は存在しません。APAC の guardrail profile(apac.guardrail.v1:0)は APAC 全域へルーティングされ、東京 source でもシンガポール・ムンバイ・ソウル・ シドニー等で評価され得ます。したがってjp.モデル推論プロファイルを使っていても、 cross-Region guardrail を有効化すると同じ入出力内容が日本外へ送られ得ます。 分類フラグ付きの入出力は不正利用検知のため最大30日保持され得ます。日本内データレジデンシーが必須の場合は、Guardrails を OFF にするか、 cross-Region guardrail profile ではなく呼び出しリージョン内(例 ap-northeast-1)の single-Region guardrail を使ってください。
Bedrockのアカウント/リージョン設定で、Converseの呼び出しをCloudWatch Logs、S3、または 両方へ保存できます。これはEgressViewのアプリ設定ではなくAWS側の設定です。有効にすると AIへ送った本文と回答も記録対象になり、EgressViewの場合はIP、ホスト名、端末名、MACを含み 得ます。 先に保存期間、閲覧ロール、KMS暗号化、S3 lifecycleを決めてください。 詳細はAWS公式のmodel invocation logging手順を参照してください。
AWS/Bedrockのdelivery failure metricsへalarmを設定し、テスト呼び出しが届くことを確認する。秘密情報の長期保存を避ける場合は本文loggingを有効にせず、標準のCloudWatch runtime metricsで 呼び出し数、latency、token、errorだけを監視します。logging停止後も既存ログは自動削除されない ため、保存先側のretention/lifecycleが必要です。
EC2等をprivate subnetで動かす場合、最低限com.amazonaws.REGION.bedrock-runtimeのinterface
endpointを作成し、Private DNSを有効にするとEgressViewのコード変更なしでConverseをprivate
経路へ流せます。モデル/Guardrail discoveryもprivate経路にする場合は
com.amazonaws.REGION.bedrockも作成します。
AWS公式のPrivateLink手順も参照してください。
bedrock:InvokeModel、利用model/profileを絞る。bedrock-runtime.REGION.amazonaws.comがprivate IPへ解決されることを確認する。既定のstandard modeは指数backoffとjitterを使い、通常運用に推奨です。throttlingが継続し、
初回requestも遅延し得ることを許容できる単一workloadだけadaptiveを検討します。
AWS SDK retry behaviorでは
standardが既定、adaptiveは特定用途向けと説明されています。
AWS_RETRY_MODE=standard
AWS_MAX_ATTEMPTS=3
adaptiveは全workload向けの高速化設定ではありません。EgressView自身の30秒timeoutと単一実行制限は
維持されるため、attempt数を増やしすぎるとSDK retry完了前にtimeoutします。変更後はCloudWatchの
throttling、latency、errorを比較し、改善がなければstandardへ戻してください。
Bedrock の場合、保存して接続確認ボタンは次を行います。
bedrock:InvokeModel が実際に機能するか
検証します(通信・端末・脅威データは送信しません)。認証・権限・throttling・timeout・非対応モデル / リージョンの問題は短いエラーメッセージ として表示されます。
成功したConverse応答のusageをschema v7へappend-onlyで記録し、AI洞察スタートページに
今月・先月のtoken数と概算USDを表示します。会話履歴の各回答にもprovider、model、token、
概算料金を表示します。日本語UIはUSD 0.0012、英語UIは$0.0012表記です。
これはAWS請求額ではありません。呼び出し時点の内蔵料金表による概算で、Guardrails、 prompt caching、税、為替、契約割引等を含みません。未知modelはtokenだけを記録して料金を 推測しません。詳細はAI洞察設定ガイドを参照してください。