ローカル環境(localhost)におけるRails APIのhttps対応 & Chromeデフォルト環境でエラーなく動作するための証明書作成

「ローカルの開発環境(localhost)でRails APIhttps化」してみたので手順を残す。 (正直勘違いからのスタートだったので、用途を言及できないが。。。)

Railshttps化

基本的に以下の記事をそのまま利用。記事の実装は開発環境のみで動く形になっているので、本番環境以降時に変な影響を受けることがないのが安心ポイント

Railsの開発環境でhttpsを使う - Qiita

自己署名証明書の作成

上で作成した証明書は、このままだとブラウザから見て信頼できないものになるので、Chromeでエラー(ERR_CERT_AUTHORITY_INVALID)が発生する。そのためオレオレ証明書を作成しブラウザにインポートする必要がある。 またChromeの場合、ドメイン名のチェックをCommon Name(通称CN)ではなくSubject Alternative Names(通称SAN)を参考するようになったため、 SANが含まれていない場合エラー(NET::ERR_CERT_COMMON_NAME_INVALID)が発生する。 そのためSubject Alternative Namesを含んだ自己署名サーバ証明書を利用する必要もある。

自己証明書の作成

Chromeで使えるオレオレ証明書を作成する方法 - Qiita
上の記事で紹介されているツール(self-sign-cert)を利用することで容易に署名付き証明書を作成できる(感謝)。

証明書のブラウザへのインポート

Google Chromeへ証明書ファイルをインポートするには | サポート・お申し込みガイド | GMOグローバルサイン【公式】

Mac端末での手順

作成した証明書を上の手順に従ってブラウザにインポートする。