AWSの認証、アクセス許可、対応リージョン 🔗
AWSサービスをSplunk Observability Cloudに接続するには、以下の手順が必要です:
Splunk Observability Cloud および AWS アカウントの管理者権限。
AWS 認証権限. 外部 ID(推奨) または セキュリティトークン を使用して認証できます。
外部IDを使ってAWSで認証する(推奨) 🔗
AWSでは、ポリシーを作成し、それをIAMアイデンティティまたはAWSリソースにアタッチすることでアクセスを管理します。ポリシーとは、ID やリソースとアクセス許可を関連付ける JSON オブジェクトです。ユーザー (この場合は Splunk Observability Cloud のアカウント) がリクエストを行うと、AWS は関連付けられたポリシーを評価し、リクエストが許可されるか拒否されるかを決定します。
ほとんどのAWSリージョンでは、External ID を使用して認証します。以下の手順に従ってください:
Splunk Observability Cloud 用の外部 ID です。外部 ID は、Splunk Observability Cloud と AWS アカウント間の信頼関係を確立するために使用されるランダムな文字列です。Splunk Observability Cloud で新しい AWS インテグレーションを作成する際に自動的に生成されます。
外部 ID の作成方法については、AWS ドキュメントの How to use external ID when giving access to your AWS resources to third party を参照してください。
APIを使用して外部IDを作成することもできます。外部AWS IDの作成 を参照してください。
AWS IAMポリシーを作成する 🔗
Splunk Observability Cloud は、サポートされているすべての AWS サービスからデータを収集するための IAM ポリシーを参照しています。
新しいAWS IAMポリシーを作成するには、以下の手順に従います:
アマゾン ウェブ サービスアカウントにログインし、Identity and Access Management (IAM) サービスを探します。
新しいポリシーを作成します。JSON タブで、プレースホルダ JSON を適切な AWS IAM ポリシー JSON に置き換えます。ガイド付きセットアップは Prepare AWS Account ステップでこのポリシーを提供します。ポリシーの例 も参照してください。
指示に従ってプロセスを完了し、ポリシーを作成します。
疑問があれば、AWSのドキュメントを確認してください。
AWS IAMロールを作成する 🔗
AWS IAMポリシーを作成した後、アマゾン ウェブ サービスコンソールで以下のステップを実行することで、そのポリシーを特定のロールに割り当てる必要があります:
Roles に移動し、Create Role に移動し、Another AWS account を信頼されるエンティティのタイプとして選択します。
ガイド付きセットアップで表示されたアカウントID、またはAPIコールのレスポンスから
sfxAwsAccountArn
内の数値をコピーし、アカウントID フィールドに貼り付けます。外部IDを求める を選択します。ガイド付きセットアップで表示された外部ID、またはAPIコールのレスポンスから
externalId
、外部ID フィールドにコピー&ペーストします。次:権限 へ進みます。ポリシー名 で、前のステップで作成したポリシーを選択します。
指示に従って、新しいAWS IAMロールに名前を付けて作成します。
AWS IAM ロールを作成すると、AWS との接続を確立するために使用する Role ARN
が生成されます。作成された ARN ロールをコピーし、ガイドセットアップの Role ARN フィールドに貼り付けます。
疑問があれば、AWSのドキュメントを確認してください。
セキュリティトークンを使ってAWSで認証する 🔗
GovCloud または China リージョン では、AWS Console で作成する Access key ID と Secret access key を組み合わせた Secure token を使用して認証するオプションを選択します。
ユーザーの新しいアクセス許可を作成しているときに、アクセスキーの練習を求めるプロンプトが表示されたら、Third-party service を選択します。
必要なアクセス許可 🔗
注意
このセクションで説明する権限のリストは頻繁に更新されます。AWSサービスをSplunk Observability Cloudに接続してしばらく経つ場合は、更新する必要がある可能性があります。
これらはAWSのデータを収集するために必要なアクセス許可です:
Splunk Observability Cloud で必要なアクセス許可 🔗
使用するサービスにかかわらず、以下のアクセス許可が必要です:
organizations:DescribeOrganization
Amazon のコストと使用メトリクスが有効になっている場合にのみ必要です。ec2:DescribeRegions
。インテグレーションで設定されたリージョンがAWSアカウントで有効になっているかどうかを確認するために使用します。iam:ListAccountAliases
。AWS MTSのアカウントエイリアスの同期に使用されます。
Tag and property sync permissions:
tag:GetResources
cloudformation:ListResources
cloudformation:GetResource
タグとプロパティの同期は、統合で設定されたサービスに対して常に有効化されます。サービスによっては、Splunk Observability Cloudはサービス固有のAPIを使用するか、Resource Groups Tagging APIやCloud Control APIなどの汎用APIを使用します。
注釈
Resource Groups Tagging APIを使用するには、tag:GetResources
の権限で十分です。Cloud Control APIを使用する場合は、cloudformation:ListResources
と cloudformation:GetResource
の権限と、AWS/KinesisAnalyticsの kinesisanalytics:DescribeApplication
、kinesisanalytics:ListApplications
、kinesisanalytics:ListTagsForResource
などのサービス固有の権限を提供する必要があります。
Permissions for data polling using the CloudWatch API 🔗
必須アクセス許可 の他に、Splunk Observability Cloud が CloudWatch API を使用して AWS メトリクスを収集できるようにするために、以下のアクセス許可を含めます:
cloudwatch:GetMetricData
cloudwatch:ListMetrics
例:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloudwatch:GetMetricData",
"cloudwatch:ListMetrics",
"ec2:DescribeRegions",
"organizations:DescribeOrganization",
"tag:GetResources",
"cloudformation:ListResources",
"cloudformation:GetResource"
],
"Resource": "*"
}
]
}
Version
ポリシー要素はポリシー言語のバージョンを定義することに注意してください。詳しくはAmazonのドキュメント IAM JSONポリシー要素:バージョン を参照してください。
注釈
To ensure that API Gateway charts are fully populated, you need to explicity enable detailed CloudWatch metrics. Refer to Amazon API Gateway dimensions and metrics for further guidance.
Splunk が管理する Metric Streams に対するパーミッション 🔗
注釈
AWS が管理する Metric Streams を使用している場合、これらのパーミッションは必要ありません。詳細については、Splunk Observability Cloud と AWS が管理するメトリクスストリームを接続する を参照してください。
AWS CloudWatch のメトリクスを収集するために Splunk が管理する Metric Streams を使用する場合は、Splunk Observability Cloud に必要なパーミッションと、これらのパーミッションが必要です:
"cloudwatch:DeleteMetricStream"
"cloudwatch:GetMetricStream"
"cloudwatch:ListMetricStreams"
"cloudwatch:ListMetrics"
"cloudwatch:PutMetricStream"
"cloudwatch:StartMetricStreams"
"cloudwatch:StopMetricStreams"
"iam:PassRole"
これらのアクセス許可には、MetricStream
フレーズと iam:PassRole
アクセス許可が含まれます。 iam:PassRole
アクセス許可は arn:aws:iam::*:role/splunk-metric-streams*
パターンにマッチするリソースに制限されていることに注意してください。
例:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloudwatch:GetMetricStream"
"cloudwatch:ListMetricStreams",
"cloudwatch:PutMetricStream",
"cloudwatch:DeleteMetricStream",
"cloudwatch:StartMetricStreams",
"cloudwatch:StopMetricStreams",
"ec2:DescribeRegions",
"organizations:DescribeOrganization",
"tag:GetResources"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"iam:PassRole"
],
"Resource": "arn:aws:iam::*:role/splunk-metric-streams*"
}
]
}
Version
ポリシー要素はポリシー言語のバージョンを定義することに注意してください。詳しくはAmazonのドキュメント IAM JSONポリシー要素:バージョン を参照してください。
Permissions for AWS-managed Metric Streams 🔗
If you’re using AWS-managed Metric Streams, you don’t need any additional permissions other than those required to use Splunk Observability Cloud.
タグとプロパティコレクションのアクセス許可 🔗
必須アクセス許可に加えて、Splunk Observability Cloud が特定の AWS タグとプロパティを収集できるように、AWS IAM ポリシーに使用するサービスの特定のアクセス許可を含める必要があります。Infrastructure Monitoring を使用して、これらのタグとプロパティに基づいてメトリクスをフィルターリングできるようになります 。
これらは、Splunk Observability Cloud が AWS タグとプロパティを収集できるようにするためのアクセス許可です:
"airflow:ListEnvironments"
"airflow:GetEnvironment"
"apigateway:GET"
"autoscaling:DescribeAutoScalingGroups"
"cloudformation:ListResources"
"cloudformation:GetResource"
"cloudfront:GetDistributionConfig"
"cloudfront:ListDistributions"
"cloudfront:ListTagsForResource"
"directconnect:DescribeConnections"
"dynamodb:DescribeTable"
"dynamodb:ListTables"
"dynamodb:ListTagsOfResource"
"ec2:DescribeInstances"
"ec2:DescribeInstanceStatus"
"ec2:DescribeNatGateways"
"ec2:DescribeRegions"
"ec2:DescribeReservedInstances"
"ec2:DescribeReservedInstancesModifications"
"ec2:DescribeTags"
"ec2:DescribeVolumes"
"ecs:DescribeClusters"
"ecs:DescribeServices"
"ecs:DescribeTasks"
"ecs:ListClusters"
"ecs:ListServices"
"ecs:ListTagsForResource"
"ecs:ListTaskDefinitions"
"ecs:ListTasks"
"elasticache:DescribeCacheClusters"
"elasticloadbalancing:DescribeLoadBalancerAttributes"
"elasticloadbalancing:DescribeLoadBalancers"
"elasticloadbalancing:DescribeTags"
"elasticloadbalancing:DescribeTargetGroups"
"elasticmapreduce:DescribeCluster"
"elasticmapreduce:ListClusters"
"es:DescribeElasticsearchDomain"
"es:ListDomainNames"
"kafka:DescribeCluster"
"kafka:DescribeClusterV2"
"kafka:ListClusters"
"kafka:ListClustersV2"
"kinesis:DescribeStream"
"kinesis:ListShards"
"kinesis:ListStreams"
"kinesis:ListTagsForStream"
"kinesisanalytics:DescribeApplication"
"kinesisanalytics:ListApplications"
"kinesisanalytics:ListTagsForResource"
"lambda:GetAlias"
"lambda:ListFunctions"
"lambda:ListTags"
"network-firewall:ListFirewalls"
"network-firewall:DescribeFirewall"
"rds:DescribeDBClusters"
"rds:DescribeDBInstances"
"rds:ListTagsForResource"
"redshift:DescribeClusters"
"redshift:DescribeLoggingStatus"
"s3:GetBucketLocation"
"s3:GetBucketTagging"
"s3:ListAllMyBuckets"
"s3:ListBucket"
"states:ListActivities"
"states:ListStateMachines"
"sqs:GetQueueAttributes"
"sqs:ListQueues"
"sqs:ListQueueTags"
"tag:GetResources"
"workspaces:DescribeWorkspaces"
注釈
Cassandraアクセス許可は別のオブジェクトとして宣言されます。以下の例を参照してください。
AWS IAM ポリシー JSON の Action
配列に、各サービスに関連する "<service>:<permission>"
ペアを追加します。例:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"airflow:ListEnvironments",
"airflow:GetEnvironment",
"apigateway:GET",
"autoscaling:DescribeAutoScalingGroups",
"cloudformation:ListResources",
"cloudformation:GetResource",
"cloudfront:GetDistributionConfig",
"cloudfront:ListDistributions",
"cloudfront:ListTagsForResource",
"cloudwatch:GetMetricData",
"cloudwatch:ListMetrics",
"directconnect:DescribeConnections",
"dynamodb:DescribeTable",
"dynamodb:ListTables",
"dynamodb:ListTagsOfResource",
"ec2:DescribeInstances",
"ec2:DescribeInstanceStatus",
"ec2:DescribeNatGateways",
"ec2:DescribeRegions",
"ec2:DescribeReservedInstances",
"ec2:DescribeReservedInstancesModifications",
"ec2:DescribeTags",
"ec2:DescribeVolumes",
"ecs:DescribeClusters",
"ecs:DescribeServices",
"ecs:DescribeTasks",
"ecs:ListClusters",
"ecs:ListServices",
"ecs:ListTagsForResource",
"ecs:ListTaskDefinitions",
"ecs:ListTasks",
"eks:DescribeCluster",
"eks:ListClusters",
"elasticache:DescribeCacheClusters",
"elasticloadbalancing:DescribeLoadBalancerAttributes",
"elasticloadbalancing:DescribeLoadBalancers",
"elasticloadbalancing:DescribeTags",
"elasticloadbalancing:DescribeTargetGroups",
"elasticmapreduce:DescribeCluster",
"elasticmapreduce:ListClusters",
"es:DescribeElasticsearchDomain",
"es:ListDomainNames",
"kafka:DescribeCluster",
"kafka:DescribeClusterV2",
"kafka:ListClusters",
"kafka:ListClustersV2",
"kinesis:DescribeStream",
"kinesis:ListShards",
"kinesis:ListStreams",
"kinesis:ListTagsForStream",
"kinesisanalytics:DescribeApplication",
"kinesisanalytics:ListApplications",
"kinesisanalytics:ListTagsForResource",
"lambda:GetAlias",
"lambda:ListFunctions",
"lambda:ListTags",
"logs:DeleteSubscriptionFilter",
"logs:DescribeLogGroups",
"logs:DescribeSubscriptionFilters",
"logs:PutSubscriptionFilter",
"network-firewall:ListFirewalls",
"network-firewall:DescribeFirewall",
"organizations:DescribeOrganization",
"rds:DescribeDBInstances",
"rds:DescribeDBClusters",
"rds:ListTagsForResource",
"redshift:DescribeClusters",
"redshift:DescribeLoggingStatus",
"s3:GetBucketLocation",
"s3:GetBucketLogging",
"s3:GetBucketNotification",
"s3:GetBucketTagging",
"s3:ListAllMyBuckets",
"s3:ListBucket",
"s3:PutBucketNotification",
"sqs:GetQueueAttributes",
"sqs:ListQueues",
"sqs:ListQueueTags",
"states:ListActivities",
"states:ListStateMachines",
"tag:GetResources",
"workspaces:DescribeWorkspaces"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"cassandra:Select"
],
"Resource": [
"arn:aws:cassandra:*:*:/keyspace/system/table/local",
"arn:aws:cassandra:*:*:/keyspace/system/table/peers",
"arn:aws:cassandra:*:*:/keyspace/system_schema/*",
"arn:aws:cassandra:*:*:/keyspace/system_schema_mcs/table/tags",
"arn:aws:cassandra:*:*:/keyspace/system_schema_mcs/table/tables",
"arn:aws:cassandra:*:*:/keyspace/system_schema_mcs/table/columns"
]
}
]
}
Version
ポリシー要素はポリシー言語のバージョンを定義することに注意してください。詳しくはAmazonのドキュメント IAM JSONポリシー要素:バージョン を参照してください。
利用状況の収集とレポートのアクセス許可 🔗
Splunk Observability Cloud が AWS 利用データとレポートを収集できるようにするには、これらのアクセス許可を含めます:
"ec2:DescribeRegions"
"organizations:DescribeOrganization"
AWS権限に関する問題のトラブルシューティング 🔗
権限関連の問題が発生した場合は、AWS 組織サービス制御ポリシーと IAM エンティティの権限境界を確認してください。どちらも、Splunk Observability Cloud が AWS アカウントへの接続に使用する AWS ポリシーに制限を課している可能性があります。
詳しくはAWSの公式ドキュメントをご覧ください:
Tip
Search for specific troubleshooting at AWS』 knowledge center.
対応AWSリージョン 🔗
特定のオプションリージョンを有効化したい場合は、インテグレーションに追加する前に行う必要があります。最初にAWSコンソールで必要なオプションリージョンを有効化していることを確認してください。通常のリージョンはデフォルトでAWSで有効化されています。
UI ガイド付きセットアップ を使用してインテグレーションを作成する場合、どの AWS リージョンと連携するかを選択するようプロンプトが表示されます。
API を使用して おり、API 呼び出しで空のリストを提供する場合、Splunk Observability Cloud はすべての通常リージョンをアクティブにします。AWS ポリシーに
ec2:DescribeRegions
権限を追加すると、AWS アカウントで有効化したオプションのリージョンも Splunk Observability Cloud で有効化されます。空のリージョンリストの設定は API 経由で可能ですが、AWS アカウントで新しいリージョンが有効化されるたびに予期せぬコスト増につながる可能性があるため、非常に推奨されません。
注釈
空のリージョンリストで設定された既存のインテグレーションを編集すると、ポリシーに ec2:DescribeRegions
権限が含まれている場合、UI ガイド付きセットアップは自動的にリージョンリストに AWS アカウントで有効になっているリージョンを入力します。そうでない場合は、通常の AWS リージョンがリストに入力されます。以前に UI ガイド付きセットアップを使用してインテグレーションを作成し、デフォルトのすべてのリージョン設定を使用した場合、それに応じて移行されます。この移行は、編集したインテグレーションについて現在収集しているデータには影響しません。
Splunk Observability Cloud は以下の AWS リージョンをサポートしています:
通常 🔗
ap-northeast-1
:アジア太平洋(東京)ap-northeast-2
:アジア太平洋(ソウル)ap-northeast-3
:アジア太平洋(大阪)ap-south-1
:アジア太平洋地域(ムンバイ)ap-southeast-1
:アジア・パシフィック(シンガポール)ap-southeast-2
:アジア太平洋(シドニー)ca-central-1
:カナダ(中部)eu-central-1
:ヨーロッパ(フランクフルト)eu-north-1
:ヨーロッパ(ストックホルム)eu-west-1
:ヨーロッパ(アイルランド)eu-west-2
:ヨーロッパ(ロンドン)eu-west-3
:ヨーロッパ(パリ)sa-east-1
:南米(サンパウロ)us-east-1
:米国東部(バージニア州北部)us-east-2
:米国東部(オハイオ州)us-west-1
:米国西部(カリフォルニア州北部)us-west-2
:米国西部(オレゴン州)
オプション 🔗
af-south-1
:アフリカ(ケープタウン)ap-east-1
:アジア太平洋(香港)ap-south-2
:アジア太平洋(ハイデラバード)ap-southeast-3
:アジア太平洋地域(ジャカルタ)ap-southeast-4
:アジア太平洋地域(メルボルン)eu-central-2
:ヨーロッパ (チューリッヒ)eu-south-1
:ヨーロッパ (ミラノ)eu-south-2
:ヨーロッパ(スペイン)me-central-1
:中東(UAE)me-south-1
:中東(バーレーン)
GovCloud 🔗
us-gov-east-1
:AWS GovCloud (米国東部)us-gov-west-1
:AWS GovCloud (米国西部)
The following applies to GovCloud regions:
GovCloudリージョンでのメトリクス同期は、AWSがサポートする名前空間に限定されます。GovCloudリージョンで利用可能な特定の名前空間については、AWSの公式ドキュメント Services in AWS GovCloud (US) Regions で確認してください。
AWSは現在、タグを取得するためのFIPS準拠のエンドポイントを提供していません。AWS GovCloudインフラストラクチャでタグを設定する場合は、機密情報を含めないようにしてください。Splunk Observability CloudのAWSタグはプレフィックス
aws_tag
で識別されます。
中国 🔗
cn-north-1
:中国(北京)cn-northwest-1
:中国(寧夏)