質問: Refile::S3.new(prefix: "store", **aws) ``` そして、git add -A, git commit -m 'change', git push heroku master という流れになると思いますが、 ここで、セキュリティに関する疑問が生じました。 上述の config/initializers/refile.rb に自分のAWSのアクセスキー及びシークレットアクセスキーを書いているわけですが、これを git push heroku master してしまうと、以下の記事にあるような不正利用につながる危険があるのでしょうか? そもそも「秘密キーを git push すると公開されて探されてしまうから危ない」的なことはよく聞きますが、どういうことかよくわかっていません。 heroku にデプロイした自分のアプリは、何か更新があるたびに git push heroku master をしていますが、これによって一回一回 GitHub に自分のアプリに関するデータが公開されているのでしょうか? だとしたら非公開にする手段はあるのでしょうか? GitHub に登録?した記憶がないのですが、git push heroku master してるってことは、GitHub に公開されているのでしょうか? ご覧の通りド素人ですので基本的なことをご教授願います。 参考:GitHub に AWS キーペアを上げると抜かれるってほんと???試してみよー!
回答: gitとGithubは全く別物です。 gitはプログラムなどの変更履歴を管理し、バージョン管理を行うシステムのことで、Githubはgitを利用して世界中の人がプログラムなどにアクセスできるようにしたウェブサービスです。 登録した覚えがないのであれば、リポジトリが見つからないなどのエラーメッセージが出てpush出来ないと思います。 また、Githubには自分の作ったものを公開しておくか、非公開にしておくか選択できるのですが、公開した状態で秘密鍵などを置いておけば他人でも秘密鍵を利用できるのでとても危ないです。 例えるなら自分の家のカギを他人でも使える状態でしょうか。 全く知らない人が自分の家の家具を持ち去ったり出来るのでとても危ないですね。