

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# AWS IoT デバイス管理ソフトウェアパッケージカタログのトラブルシューティング
<a name="software-package-catalog-troubleshooting"></a>

これは、 AWS IoT Device Management Software Package Catalog のトラブルシューティングセクションです。

## エラーメッセージの一般的なトラブルシューティング
<a name="spc-general-troubleshooting"></a>

このセクションでは、ソフトウェアパッケージのバージョンライフサイクル全体で見られる一般的なエラーを一覧表示します。

**`HeadBucket` エラー**

[`HeadBucket` API オペレーション](https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html)または [`head-bucket` CLI コマンド](https://docs.aws.amazon.com/cli/latest/reference/s3api/head-bucket.html)を呼び出して、ジョブのデプロイ中にファイルのアップロードに使用される Amazon S3 バケットを検証すると、次のエラーメッセージが表示されます。

ジョブのデプロイ中に Amazon S3 バケットを使用してファイルをアップロードする方法の詳細については、「[ファイルアップロード用の署名付き URL](create-manage-jobs.md#create-manage-jobs-presigned-URLs-upload)」を参照してください。

```
InvalidRoleException
    "Permission denied when attempting to use role %s to access bucket %s."
```

```
InvalidRequestException
    "Cross region S3 bucket is not supported for presigned url upload placeholder"
```

```
InvalidRequestException
    "S3 bucket in job document presigned url upload placeholder not found"
```

```
InvalidRequestException
    "Given S3 bucket name is invalid."
```

```
InvalidRequestException
    "Provided S3 bucket is not valid: %s. Error: %s"
```

**Amazon S3 GetObject**

無効な引数が指定されると、次のエラーメッセージが表示され、Amazon S3 `GetObject` API オペレーションが失敗します。

```
InvalidRequestException
    "Provided argument for presigned url is invalid"
```

**Amazon S3 バージョン ID サポート**

バージョニングコントロールを使用して Amazon S3 バケットへのアクセスをリクエストする場合、`versionId` を含めないと、以下のエラーが表示されることがあります。

Amazon S3 バケットでのバージョニングコントロールの使用に関する詳細については、「[Amazon S3 バケットでのバージョニングの使用](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html)」を参照してください。

```
InvalidRequestException
    "VersionId not found when attempting to access s3 url"
```

**ファイルアップロード用の署名付き URL 内のプレースホルダー**

次のエラーメッセージは、ジョブのデプロイ中に送信先の Amazon S3 バケットにファイルをアップロードするために使用される署名付き URL 内のプレースホルダーに問題があると表示されます。ジョブのデプロイ中に Amazon S3 バケットを使用してファイルをアップロードする方法と、ローカルプレースホルダーの詳細については、「[ファイルアップロード用の署名付き URL](create-manage-jobs.md#create-manage-jobs-presigned-URLs-upload)」を参照してください。

ローカルプレースホルダーが認識されない場合、以下のエラーメッセージが表示されます。

```
InvalidJobDocumentException
    "Undefined placeholder, ${...}, inside of presign url upload parameter"
```

ファイルのアップロードではなく、署名付き URL でローカルプレースホルダーを使用しようとすると、以下のエラーメッセージが表示されます。

```
InvalidJobDocumentException
    "Local placeholder, ${...}, is only valid inside of presign url upload"
```

**Amazon S3 URL のネストが誤っている**

Amazon S3 URL が別のプレースホルダー内に誤ってネストされると、次のエラーメッセージが表示されます。

```
InvalidJobDocumentException
    "${aws:%s[...]} should not be the second layer pattern."
```

**パッケージバージョンのアーティファクトネスト**

パッケージバージョンのアーティファクト署名付き URL が別のプレースホルダー内に誤ってネストされると、次のエラーメッセージが表示されます。

```
InvalidJobDocumentException
    "${aws:iot:package:[...]:artifact:s3-presigned-url} cannot be nested inside another placeholder."
```

**パッケージバージョンのアーティファクトがない**

参照されるパッケージバージョンアーティファクトが見つからない場合、次のエラーメッセージが表示されます。

```
InvalidJobDocumentException
    "Package %s version %s does not have an associated artifact to generate an S3 presigned url."
```

**ソフトウェアパッケージとパッケージバージョンのプレースホルダー**

次のエラーメッセージは、`destinationPackageVersions` パラメータまたは*パッケージバージョン*の詳細ページの *[バージョン ARN]* で参照されている複数のソフトウェアパッケージとパッケージバージョンが原因で、ソフトウェアパッケージとパッケージバージョンのジョブドキュメントプレースホルダーがジョブデプロイに必要な有効な値に解決できない場合に表示されます。

```
InvalidJobDocumentException
    "Cannot resolve empty package name and version name given multiple elements in destination package versions."
```

**空のソフトウェアパッケージとパッケージバージョンの使用**

次のエラーメッセージは、空のパッケージまたはパッケージバージョンを、ジョブドキュメントのもう 1 つのバージョンを使用せずに使用しようとすると表示されます。

```
InvalidJobDocumentException
    "Empty package name and version name have to be used in pair."
```

**ジョブドキュメントでの Null の使用**

ジョブドキュメントでパッケージバージョンとして `$null` を指定しようとすると、次のエラーメッセージが表示されます。`$null` は `CreateJob` API オペレーションを使用するときに `destinationPackageVersions` パラメータ内でのみ使用できます。

```
InvalidJobDocumentException
    "$null is not allowed to be referenced as a package version in job documents."
```

**パッケージバージョンのすべての属性**

パッケージバージョンのすべての属性を使用し、追加のテキストまたはプレースホルダーで囲もうとすると、次のエラーメッセージが表示されます。

ソフトウェアパッケージバージョンですべての属性を使用する方法の詳細については、「[AWS IoT ジョブの置換パラメータ](preparing-jobs-for-service-package-catalog.md#substitution-parameters)」を参照してください。

```
InvalidJobDocumentException
    "The package version attribute placeholder for all attributes has to be a json value by itself and not appended with other strings or nested with other placeholders."
```

**ファイルアップロード用の署名付き URL のローカルプレースホルダーの制限**

ジョブのデプロイ中にファイルアップロード用に署名付き URL で使用されるローカルプレースホルダーの数の制限を超えると、次のエラーメッセージが表示されます。

ジョブのデプロイ中にファイルのアップロードに署名付き URL を使用する方法の詳細については、「[ファイルアップロード用の署名付き URL](create-manage-jobs.md#create-manage-jobs-presigned-URLs-upload)」を参照してください。

```
InvalidJobDocumentException
    "The occurrence of local placeholder %s within S3 presigned url upload placeholder exceeds limit of %d."
```

**Amazon S3 バケットのローカルプレースホルダー**

ジョブのデプロイ中にファイルのアップロードに使用される署名付き URL プレースホルダーの Amazon S3 バケット名にローカルプレースホルダー URL を配置しようとすると、次のエラーメッセージが表示されます。

ジョブのデプロイ中にファイルのアップロードに署名付き URL を使用する方法の詳細については、「[ファイルアップロード用の署名付き URL](create-manage-jobs.md#create-manage-jobs-presigned-URLs-upload)」を参照してください。

```
InvalidJobDocumentException
    "S3 bucket name in presigned url upload is not allowed to contain any placeholders"
```

**開括弧および閉括弧**

閉括弧「\$1」なしでジョブドキュメントにパラメータまたはプレースホルダーを追加すると、次のエラーメッセージが表示されます。

```
InvalidJobDocumentException
    "One or more parameters or placeholders are not terminated."
```

**Amazon S3 署名付き URL を使用した IAM ロール**

IAM ロールのないジョブドキュメントで Amazon S3 署名付き URL を使用しようとすると、次のエラーメッセージが表示されます。

Amazon S3 署名付き URL の詳細については、「[署名付き URL の使用](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-presigned-url.html)」を参照してください。

```
InvalidRequestException
    "presignedUrlConfig role ARN is required to generate an S3 presigned url in job document."
```

**パッケージバージョンアーティファクトの Amazon S3 署名付き URL を持つ IAM ロール**

IAM ロールのないジョブドキュメントでパッケージバージョンアーティファクトを表す Amazon S3 署名付き URL を使用しようとすると、次のエラーメッセージが表示されます。

```
InvalidRequestException
    "presignedUrlConfig role ARN is required to generate an S3 presigned url in job document for package %s version %s artifact."
```

## ソフトウェア部品表エラーメッセージ
<a name="spc-sbom-validation-troubleshooting"></a>

このセクションでは、パッケージバージョンにリンクされたソフトウェア部品表 (SBOM) に関連する一般的なエラーを一覧表示します。

**SBOM 関連付けリクエストの入力検証**

`AssociateSbomWithPackageVersion` API オペレーションを使用し、`s3Location` パラメータが null の場合、次のエラーメッセージが表示されます。

```
InvalidRequestException "Associate request needs to include SBOM reference"
```

`AssociateSbomWithPackageVersion` API オペレーションの詳細については、[AssociateSbomWithPackageVersion](https://amazonaws.com/iot/latest/apireference/API_AssociateSbomWithPackageVersion.html)」を参照してください。

**SBOM 検証エラー**

このセクションでは、ソフトウェアパッケージバージョンに関連付けられている場合に、ソフトウェア部品表 (SBOM) の初期検証中に見られる一般的なエラーを一覧表示します。

`AssociateSbomWithPackageVersion` API オペレーションを使用し、`s3Location` パラメータの `bucket` が null の場合、次のエラーメッセージが表示されます。

```
InvalidRequestException "S3 bucket name for SBOM cannot be null"
```

`AssociateSbomWithPackageVersion` API オペレーションの `s3Location` パラメータの `bucket` の文字列が長すぎると、次のエラーメッセージが表示されます。

```
InvalidRequestException "S3 bucket name for SBOM is illegal. String length exceeds limit"
```

`key` パラメータが null の場合、次のエラーメッセージが表示されます。

```
InvalidRequestException "S3 key name for SBOM cannot be null"
```

`AssociateSbomWithPackageVersion` API オペレーションの `s3Location` パラメータの `key` の文字列が長すぎると、次のエラーメッセージが表示されます。

```
InvalidRequestException "S3 key name for SBOM is illegal. String length exceeds limit"
```

`AssociateSbomWithPackageVersion` API オペレーションの `s3Location` パラメータの `version` の文字列が null の場合、次のエラーメッセージが表示されます。

```
InvalidRequestException "S3 object version for SBOM cannot be null"
```

`AssociateSbomWithPackageVersion` API オペレーションの `s3Location` パラメータの `version` の文字列が長すぎると、次のエラーメッセージが表示されます。

```
InvalidRequestException "S3 object version for SBOM is illegal. String length exceeds limit"
```

Amazon S3 バケットに保存されている SBOM zip アーカイブファイルのサイズが大きすぎると、次のエラーメッセージが表示されます。

```
InvalidRequestException "S3 object file size exceeds limit"
```

`AssociateSbomWithPackageVersion` API オペレーションを使用し、進行中の SBOM 検証の現在の数が既に上限に達している場合、次のエラーメッセージが表示されます。

```
LimitExceededException "Too many ongoing SBOM validation workflows. Please wait and retry"
```

**Amazon S3 バケットの SBOM ファイルの問題にアクセスする**

Amazon S3 バケットが存在しないか、Amazon S3 バケットへのアクセスに適切なアクセス許可が付与されていないために、別のエンティティが Amazon S3 バケットにアクセスできない場合、次のエラーメッセージが表示されます。

Amazon S3 バケットにアクセスするために必要なアクセス許可ポリシーの詳細については、「[ソフトウェア部品表のストレージ](preparing-to-use-software-package-catalog.md#spc-sbom-storage)」を参照してください。

```
InvalidRequestException "SBOM not accessible by the service. Please make sure the bucket exists and S3 permission is granted."
```

Amazon S3 バケットが存在しないか、Amazon S3 バケットに保存されているコンテンツにアクセスするための適切なアクセス許可が付与されていないために、別のエンティティが `key` パラメータの SBOM zip アーカイブファイルにアクセスできない場合、次のエラーメッセージが表示されます。

```
InvalidRequestException "SBOM not accessible by the service. Please make sure the key exists and S3 permission is granted."
```

バケット、キー、バージョン ID が存在しないか、Amazon S3 バケットへのアクセスに適切なアクセス許可が付与されていないために、別のエンティティが Amazon S3 バケットにアクセスできない場合、次のエラーメッセージが表示されます。さらに、付与されたアクセス許可が Amazon S3 バケットの SBOM zip アーカイブファイルへのアクセスに不十分な場合、このエラーメッセージが表示されることがあります。

```
InvalidRequestException "SBOM not accessible by the service. Please make sure the bucket/key/version exists and S3 permission is granted."
```

バケットが別のリージョンにあるため、別のエンティティが Amazon S3 バケットにアクセスできない場合、次のエラーメッセージが表示されます。

```
InvalidRequestException "Cross-region S3 bucket for %s is not supported."
```

`AssociateSbomWithPackageVersion` API オペレーションの使用時に `bucket`、`key`、または `version` パラメータのスペルが正しくないため、別のエンティティが Amazon S3 バケットにアクセスできない場合、次のエラーメッセージが表示されます。

```
InvalidRequestException "Please make sure SBOM S3 bucket name/key length/version is valid"
```