概要
Amplifyのチュートリアルでバックエンドの構築して数日経つとバックエンドとの通信ができなくなっていました。どうやら、Amplifyで設定するAppSyncの証明書の期限がデフォルトで7日間となっており、7日を過ぎるとAPIコールができないということが、この原因でした。なので、今回は証明書の更新方法を記載します。
手順
早速、AppSyncの証明書の期限更新手順を記載します。まず、Amplifyで設定したデフォルトのGraphQL(AppSync) APIキーの有効期限は7日間です。私は、DBから値が取って来れなくなっていたので、その原因を調べていたところ、APIコール時にUnauthorizedExceptionというエラーが返ってきていることに気がつきました。AWSマネージメントコンソールからAppSyncのAPIを確認しても証明書の期限が切れていることがわかるので確認してみてください。
更新手順
以下のコマンドでAPIキーの証明書期限を更新できます。
コマンドを実行するディレクトリは、色々amplifyとかを設定したディレクトリです。
amplify api update
色々と出力がコンソールに返ってきますが、下の問いがでたら、日数を入力してください。
そのまま何も入力せずにEnterを押すとデフォルトで7日間に設定されてしまいます。
✔ After how many days from now the API key should expire (1-365):ここに数字を入れる
これで更新が完了したので、APIコールしてみてください。動いたかと思います。
また、この証明書の更新方法だと最大でも365日で期限切れになり、その度に手動での更新になってしまうので、どのようにこれを管理すれば良いかは別途考える必要がありそうです。
おわりに
- 今回は、Amplifyで設定するAppSyncの証明書期限が7日で切れてしまうということで、その証明書の更新方法について記載しました。
- とあるプロジェクトで必要なので、AppSyncを勉強中です。