

# IAM Access Analyzer のエラー検出結果
<a name="access-analyzer-error-findings"></a>

IAM Access Analyzer がリソースを分析すると、通常、リソースにアクセスできるユーザーを示す結果が生成されます。ただし、アナライザーで分析を完了できない問題が発生する場合があります。このような状況では、IAM Access Analyzer は代わりにエラー検出結果を生成します。

エラーの検出結果は、IAM Access Analyzer が特定のリソースまたは特定のプリンシパルとリソースのペアの分析を完了できなかったことを示しています。これらの検出結果は、適切な分析を確保するために注意が必要なリソースを特定するのに役立ちます。

## 外部アクセスのエラー検出結果
<a name="access-analyzer-error-findings-external"></a>

アカウントまたは組織外で共有されているリソースを識別する外部アクセスアナライザーは、次の 2 種類のエラー検出結果を生成できます。
+ INTERNAL\$1ERROR – リソースの分析中に IAM Access Analyzer で内部問題が発生したことを示します。これは、サービスの制限や一時的な問題が原因である可能性があります。

  ```
  {
  	"findingDetails": [
  		{
  			"externalAccessDetails": {}
  		}
  	],
  	"resource": "arn:aws:iam::941407043048:role/TestAccessAnalyzer",
  	"status": "ACTIVE",
  	"error": "INTERNAL_ERROR",
  	"createdAt": "2022-07-14T01:31:43.085000+00:00",
  	"resourceType": "AWS::IAM::Role",
  	"findingType": "ExternalAccess",
  	"resourceOwnerAccount": "941407043048",
  	"analyzedAt": "2025-03-19T06:51:46.109000+00:00",
  	"id": "4b035c7d-b7d2-40e4-a6c3-9887d1a995df",
  	"updatedAt": "2022-07-14T01:31:43.085000+00:00"
  }
  ```
+ ACCESS\$1DENIED – IAM Access Analyzer にリソースを分析するために必要なアクセス許可がないことを示します。これは通常、IAM Access Analyzer のサービスにリンクされたロール (SLR) がリソースへのアクセスを拒否された場合に発生します。

  ```
  {
  	"findingDetails": [
  		{
  			"externalAccessDetails": {}
  		}
  	],
  	"resource": "arn:aws:kms:us-west-2:941407043048:key/01cae123-b7f2-4488-9a05-0070a072ea2c",
  	"status": "ACTIVE",
  	"error": "ACCESS_DENIED",
  	"createdAt": "2022-07-14T01:31:43.104000+00:00",
  	"resourceType": "AWS::KMS::Key",
  	"findingType": "ExternalAccess",
  	"resourceOwnerAccount": "941407043048",
  	"analyzedAt": "2025-03-19T06:51:46.090000+00:00",
  	"id": "7ef6f04a-9d2c-4038-9cc0-2a5f00a4d8f8",
  	"updatedAt": "2022-07-14T01:31:43.104000+00:00"
  }
  ```

## 内部アクセスエラー検出結果
<a name="access-analyzer-error-findings-internal"></a>

アカウントまたは組織内のアクセスを識別する内部アクセスアナライザーは、次の 4 種類のエラー検出結果を生成できます。
+ PRINCIPAL\$1LIMIT\$1EXCEEDED – 3,000 を超えるプリンシパルが重要なリソースにアクセスできる場合に生成されます。このエラーは、制限する必要がある可能性のある過度に広範なアクセスを持つリソースを特定するのに役立ちます。

  環境内のリソースまたはプリンシパルを変更して、プリンシパルの数が制限を下回ると、アナライザーは次のスキャン中に通常の検出結果を生成し、エラー検出結果は解決済みとしてマークされます。

  ```
  {
  	"id": "efec28fe-b304-412f-af0f-704d0d70c79c",
  	"status": "ACTIVE",
  	"error": "PRINCIPAL_LIMIT_EXCEEDED",
  	"resource": "arn:aws:s3:::critical-data",
  	"resourceType": "AWS::S3::Bucket",
  	"resourceOwnerAccount": "111122223333",
  	"createdAt": "2023-11-30T00:56:56.437000+00:00",
  	"analyzedAt": "2024-03-06T04:11:54.406000+00:00",
  	"updatedAt": "2023-11-30T00:56:56.437000+00:00",
  	"findingType": "InternalAccess",
  	"findingDetails": [
  		{
  			"internalAccessDetails": {}
  		}
  	]
  }
  ```
+ リソースレベルのエラー (INTERNAL\$1ERROR または ACCESS\$1DENIED) – 外部アクセスエラーと同様に、内部の問題またはアクセス許可の問題が原因でアナライザーが特定のリソースを分析できなかったことを示します。リソースレベルのエラーが発生すると、アナライザーは通常の検出結果ではなく、リソースに対して単一のエラー検出結果を生成します。

  ```
  {
  	"id": "efec28fe-b304-412f-af0f-704d0d70c79c",
  	"status": "ACTIVE",
  	"error": "INTERNAL_ERROR", // can be INTERNAL_ERROR or ACCESS_DENIED
  	"resource": "arn:aws:s3:::critical-data",
  	"resourceType": "AWS::S3::Bucket",
  	"resourceOwnerAccount": "111122223333",
  	"createdAt": "2023-11-30T00:56:56.437000+00:00",
  	"analyzedAt": "2024-03-06T04:11:54.406000+00:00",
  	"updatedAt": "2023-11-30T00:56:56.437000+00:00",
  	"findingType": "InternalAccess",
  	"findingDetails": [
  		{
  			"internalAccessDetails": {}
  		}
  	]
  }
  ```
+ プリンシパルレベルのエラー (INTERNAL\$1ERROR または ACCESS\$1DENIED) – アナライザーが特定のリソースに対する特定のプリンシパルのアクセスを分析できなかったことを示します。リソースレベルのエラーとは異なり、リソースには一部のプリンシパルに対する通常の検出結果と他のプリンシパルに対するエラー検出結果の両方を含めることができます。

  ```
  {
  	"id": "efec28fe-b304-412f-af0f-704d0d70c79c",
  	"status": "ACTIVE",
  	"error": "INTERNAL_ERROR", // can be INTERNAL_ERROR or ACCESS_DENIED
  	"resource": "arn:aws:s3:::critical-data",
  	"resourceType": "AWS::S3::Bucket",
  	"resourceOwnerAccount": "111122223333",
  	"createdAt": "2023-11-30T00:56:56.437000+00:00",
  	"analyzedAt": "2024-03-06T04:11:54.406000+00:00",
  	"updatedAt": "2023-11-30T00:56:56.437000+00:00",
  	"findingType": "InternalAccess", 
  	"findingDetails": [
  		{
  			"internalAccessDetails": {
  				"principal": {
  					"AWS": "arn:aws:iam::111122223333:role/MyRole_1"
  				},
  				"principalOwnerAccount": "111122223333",
  				"principalType": "IAM_ROLE",
  				"accessType": "INTRA_ACCOUNT"
  			}
  		}
  	]
  }
  ```
+ PRINCIPAL\$1ERRORS\$1LIMIT\$1EXCEEDED – 1 つのリソースに対してプリンシパルレベルのエラー検出結果が多すぎる場合に生成されます。これは、同じリソースの通常の検出結果と一緒に表示される可能性のあるリソースレベルのエラー検出結果です。

  ```
  {
  	"id": "efec28fe-b304-412f-af0f-704d0d70c79c",
  	"status": "ACTIVE",
  	"error": "PRINCIPAL_ERRORS_LIMIT_EXCEEDED",
  	"resource": "arn:aws:s3:::critical-data",
  	"resourceType": "AWS::S3::Bucket",
  	"resourceOwnerAccount": "111122223333",
  	"createdAt": "2023-11-30T00:56:56.437000+00:00",
  	"analyzedAt": "2024-03-06T04:11:54.406000+00:00",
  	"updatedAt": "2023-11-30T00:56:56.437000+00:00",
  	"findingType": "InternalAccess",
  	"resourceControlPolicyRestriction": "NOT_APPLICABLE",
  	"serviceControlPolicyRestriction": "NOT_APPLICABLE",
  	"findingDetails": [
  		{
  			"internalAccessDetails": {}
  		}
  	]
  }
  ```

## エラー検出結果の解決
<a name="access-analyzer-error-findings-resolve"></a>

IAM Access Analyzer によるリソースの分析を妨げていた問題を解決すると、エラーの検出結果は解決された検出結果に変更されるのではなく、完全に削除されます。

エラーの検出結果を解決するには、エラータイプに基づいて次のアプローチを検討してください。
+ ACCESS\$1DENIED エラーの場合、IAM Access Analyzer のサービスにリンクされたロールに、リソースにアクセスするために必要なアクセス許可があることを確認します。
+ PRINCIPAL\$1LIMIT\$1EXCEEDED エラーについては、リソースのアクセスポリシーを確認し、アクセスをより少ないプリンシパルに制限することを検討してください。
+ INTERNAL\$1ERROR の検出結果については、後続の分析サイクルを待つか、問題が解決しない場合は AWS サポートに連絡する必要があります。
+ PRINCIPAL\$1ERRORS\$1LIMIT\$1EXCEEDED の場合、影響を受けるリソースのアクセスパターンを確認し、必要に応じて簡素化します。

根本的な問題に対処するための変更を行った後、IAM Access Analyzer は次のスキャンサイクル中にリソースの分析を再度試みます。