3

私は iOS 向けに開発しており、API キーとシークレットを使用して特定の API にリクエストを行う必要があります。ただし、ソース コードで公開され、リポジトリにプッシュするときにシークレットが危険にさらされることは望ましくありません。

この場合のベストプラクティスは何ですか? .gitignore に含める別のファイルに書きますか?

ありがとう

4

2 に答える 2

1

.gitignore に含める別のファイルに書きますか?

いいえ、絶対に書かないでください。
つまり、次のことを意味します。

  • リポジトリ内にそのシークレットを記述しません (gitignore する必要はありません。または、誤って追加/コミット/プッシュする心配はありません)。
  • ローカル ドライブのどこにも書き込む必要はありません (その「秘密」が保存されたコンピュータが盗まれる心配はありません)。

外部ソース (git リポジトリの外部) からそのシークレットを探してメモリにロードできるスクリプトをリポジトリに保存します。
これはgit credential-helperprocesslocalhost:portに似ており、そのスクリプトは、現在のセッションでのみ必要なときにいつでもその「秘密」を提供するために、リッスンしているプロセスを起動します。
セッションが完了すると、トレースは残りません。
これは、機密データを管理するためのベスト プラクティスです。

ファイルでコンテンツ フィルタとしてgit checkout宣言すると、そのスクリプトを自動的にトリガーできます。.gitattributes

コンテンツ フィルタ

于 2013-05-25T23:14:46.223 に答える