2016-10-01 9 views

答えて

1

プラットフォームによって異なりますが、おそらく多少意見がありますが、一般的に、環境変数は多くのシナリオで秘密を保存するのに適しています。

たとえば、アプリケーションにSQLインジェクション、ローカルファイルの包含、またはその他のアプリケーションレベルの脆弱性があると、データベースやファイルに保存されている秘密が簡単に侵害される可能性があります。環境変数を使用すると、同じ攻撃が行われない可能性があります。たとえば、ローカルファイルを使用して環境変数を取得することはできません。

また、環境変数を使用すると、バージョン管理の問題に役立ちます。秘密をVCSにチェックインしないようにしてください。それは、関連する人々が生産におけるこれらの秘密を知ることができるようにするだけで、秘密をより良い環境で管理することを可能にするかもしれません。

しかし、サーバーが完全に侵入した場合、攻撃者はもちろん環境変数を検査することもできます。しかし、あなたのサーバーがそのレベルまで侵害されていれば、とにかくあなたは失われてしまいます。

秘密を保存するためのより良い方法の例がおそらくリストされていますが、それらは使用している環境とテクノロジスタックに固有のものです。たとえばAzureでは、Key VaultがAmazonの場合、Key Management Service(KMS)などの機能がよりよくなることがあります。

関連する問題