GoogleCloudPlatformにてGoogleMapsAPIを利用する際にはAPIキーを取得し、アプリに反映させなければなりません。
その際に注意してほしいのが、APIキーはAPI提供事業者から、利用者個人またはプロジェクトに対して専用で割り当てられるものです。なので、APIキーを盗まれて不正に利用された場合、悪質なアカウントとして停止されたり、ユーザーの個人情報が盗まれたりする危険性が出てきます。APIキーはパスワードなどの認証情報と同じく、厳重に管理しなければなりません。
分かりやすく言うならば、
APIキーを公開してる=裸で街を歩いてる状態ということです。
GoogleMapsAPIを利用する記事はこちら
Railsで地図 投稿 地名検索 一覧表示 GoogleMapsAPI(JavaScript) gemなし
今回は、この記事でAPIキーを利用する際に、APIキーを非表示にする方法を記事にしました!!
いざ実装!!
この記事では、
<script src="https://maps.googleapis.com/maps/api/js?key=YOURAPIKEY&callback=initMap" async defer></script>
と書いていますが、
<script src="https://maps.googleapis.com/maps/api/js?key=<%= ENV['GOOGLE_MAP_KEY'] %>&callback=initMap" async defer></script>
と書き直します。
次に.env
というファイルをappと同じ階層で作成します。
GOOGLE_MAP_KEY=自分のAPIキーをここに書く!
次に、.env
ファイルと同じ階層に.gitignore
というファイルがあると思うので、
/.env
と記述すればAPIキーが非公開にされます。これで安心ですね!!
他の箇所でも応用が効く技術なので皆さんも試してみてください。