スマートフォンアプリの運用設計をするにあたり、証明書の運用サイクルを確認したので下記にまとめます。
iOS
- ビルド証明書(配布証明書)
有効期限は1年(development)、もしくは3年(Distribution)。MacのキーチェーンでCSRを作成し、Developer Consoleにアップして、落としてきて、Xcodeでごにょごにょすることで作成できる。 AdHocの場合も証明書管理は必要(cf. https://qiita.com/isaac-otao/items/126bced83d9af86c7ce5) - ProvisioningProfile
有効期限は1年。Developer Consoleからダウンロードする。ProvisioningProfileはBundleIDとビルド証明書をひもづけるためのもの。基本的に1アプリごとに1ProvisionigProfileを作成することが多い。
Android
- keystore
CSRを作成し、Android Studioでkeystoreを作成する。 通常、有効期限は25年なので証明書の更新を行なうことはそうそうない。
iOS,Android共に、証明書自体の有効期限が切れてもアプリ自体が使えなくなることはない(※iOSのEnterpriseライセンスの場合は、アプリが起動しなくなる)。障害発生など緊急でビルドが必要になるケースに備えて、有効期限が切れるタイミングで証明書は予め作り直しておいたほうが安心