私は最初にGoogle Cloud MLエンジンでネットワークを訓練しましたが、データを暗号化するために自分の暗号化キーを提供することで設定を少し安全にしようとしています。 the manualで説明したように、暗号化されていない場所に自分のカスタム暗号化キーを格納する代わりに、自分のデータをCloud Storageにコピーしました。gcloud jobsで復号鍵を提供するトレーニングを依頼する
しかし、私のセットアップ(明らかに!)が壊れました。私がMLエンジンに提出したPythonコードは、ファイルを復号化できないためです。 --decrypt-key
〜gcloud ml-engine jobs submit training
のようなオプションが必要ですが、そのようなオプションは見つかりません。私のコードがデータを解読できるようにこのキーを提供する方法?
TensorFlowのGCSクライアントライブラリはまだそれらをサポートしていないため、Chrisが述べたことに加えて、TensorFlow経由でGCSから暗号化ファイルを読み取ることができないことを指摘したいと思います。 代わりに、 'gsutil cp'(暗号化キーを提供)を使用してすべてのトレーニングワーカー用のトレーニングデータをGCSからローカルディスクにコピーし、トレーニングディスクのTensorFlowコードをローカルディスクから読み込む必要があります。 –
キーをGCKMSに保存すると、Googleのデフォルトのサーバーサイド暗号化を使用することができるので、その目的を無効にします。 Google Cloud Storageからデータが漏洩した場合、誰もそのファイルを読み取ることはできません。明らかにコードを実行している間は鍵が利用できるはずですが、[このページ](https://cloud.google.com/storage/docs/encryption)から理解しているように、鍵はメモリに保存され、操作が成功した後に消去されます。 – jthread
TL; DR:唯一の安全な解決策は、新しい仕事を提出するときに鍵を渡すことですが、明らかにそれは不可能です。 – jthread