サンプルアプリケーションの問題をトラブルシューティングする - AWS IoT Core

サンプルアプリケーションの問題をトラブルシューティングする

サンプルアプリケーションを実行しようとしたときにエラーが発生した場合は、次の点を確認してください。

証明書を確認する

証明書がアクティブでない場合、AWS IoT はその証明書を認可に使用する接続試行を受け入れません。証明書を作成するときに、[Activate] (有効化) ボタンを見落としがちです。幸いなことに、AWS IoT コンソールから証明書を有効化できます。

証明書の有効化を確認するには
  1. AWS IoT コンソールの左側のメニューで、[Secure] (安全性) を選択し、[Certificates] (証明書) を選択します。

  2. 証明書のリストで、演習用に作成した証明書を見つけ、[Status] (ステータス) 列でそのステータスを確認します。

    証明書の名前を覚えていない場合は、[Inactive] (無効) の証明書がないかを確認し、使用している証明書かどうかを確認してください。

    リストから証明書を選択し、詳細のページを開きます。詳細ページには、証明書の特定に役立つ [Create date] (作成日) が表示されます。

  3. 有効化されていない証明書を有効化するには、証明書の詳細ページから [Actions] (アクション) を選択してから、[Activate] (有効化) を選択します。

正しい証明書を見つけ、アクティブであることを確認できたにもかかわらず、サンプルアプリケーションの実行にまだ問題がある場合は、次のステップで説明するように、そのポリシーを確認します。

モノのオブジェクトを作成する の手順に従って、新しいモノと新しい証明書の作成を試みることもできます。新しいモノを作成する場合は、新しいモノの名前を付けて、新しい証明書ファイルをデバイスにダウンロードする必要があります。

証明書にアタッチされているポリシーを確認する

ポリシーは、AWS IoT でのアクションを承認します。AWS IoT への接続に使用される証明書にポリシーがない場合、または接続を許可するポリシーがない場合、証明書がアクティブであっても、接続は拒否されます。

証明書にアタッチされたポリシーを確認するには
  1. 前の項目の説明に従って証明書を見つけ、その詳細のページを開きます。

  2. 証明書の詳細ページの左側のメニューで、[Policies] (ポリシー) を選択して、証明書にアタッチされているポリシーを表示します。

  3. 証明書にポリシーが添付されていない場合は、[Actions] (アクション) メニューを選択し、[Attach policy] (ポリシーの添付) を選択してポリシーを追加します。

    先ほど AWS IoT リソースの作成 で作成したポリシーを選択します。

  4. ポリシーがアタッチされている場合は、ポリシータイルを選択してその詳細ページを開きます。

    詳細ページで、ポリシードキュメントを調べて、AWS IoT ポリシーを作成するで作成したものと同じ情報が含まれていることを確認します。

コマンドラインをチェックする

ご利用のシステム用に正しいコマンドラインを使用していることを確認してください。Linux および macOS システムで使用されるコマンドは、Windows システムで使用されるコマンドとは異なることがよくあります。

エンドポイントアドレスを確認する

入力したコマンドを確認し、コマンドのエンドポイントアドレスを AWS IoT コンソールのアドレスと照らし合わせて再確認します。

証明書ファイルのファイル名を確認する

入力したコマンドのファイル名を、certs ディレクトリ内の証明書ファイルのファイル名と比較します。

一部のシステムでは、正しく機能するためにファイル名を引用符で囲む必要がある場合があります。

SDK のインストールを確認する

SDK のインストールが完了しており、正しいことを確認します。

懸念がある場合は、デバイスに SDK を再インストールします。ほとんどの場合、それは、SDK 言語用に、AWS IoT Device SDK をインストールするというタイトルのチュートリアルのセクションを見つけて、手順を再度実行することで解決します。

AWS IoT Device SDK for JavaScript を使用している場合は、サンプルアプリケーションをインストールしてから実行してください。SDK をインストールしても、サンプルアプリケーションは自動的にはインストールされません。サンプルアプリケーションは、SDK のインストール後に手動でインストールする必要があります。