ローカル環境(localhost)におけるRails APIのhttps対応 & Chromeデフォルト環境でエラーなく動作するための証明書作成
「ローカルの開発環境(localhost)でRails APIをhttps化」してみたので手順を残す。 (正直勘違いからのスタートだったので、用途を言及できないが。。。)
Railsのhttps化
基本的に以下の記事をそのまま利用。記事の実装は開発環境のみで動く形になっているので、本番環境以降時に変な影響を受けることがないのが安心ポイント
自己署名証明書の作成
上で作成した証明書は、このままだとブラウザから見て信頼できないものになるので、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グローバルサイン【公式】
作成した証明書を上の手順に従ってブラウザにインポートする。