問題タブ [google-secret-manager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - ローカルの C# winform アプリから本番環境の Google Cloud Storage バケットにファイルを安全にアップロードする
作成中の Winforms C# アプリで GCPs Secret Manager を使用しようとしましたが、最初に Secret Manager にアクセスするには credentials.json が必要です。これは開発では問題ありませんが、本番環境では問題ありません。おそらく、シークレット マネージャーを使用するべきではありません。
現在、私はローカル C# winforms アプリを持っています。アプリをローカルで使用しているユーザー (管理者ではない顧客) は、Windows ファイルシステムからファイルを選択し、これらのファイルを Google Cloud Storage バケットにアップロードできます。私はサーバーをまったく持っていませんが、サーバー内にどのようなロジックが必要なのかわかりません。
コメントから、サーバーはユーザーがログインする仲介者であるべきだと思います。ユーザーはトークンを取得し、ユーザーはトークンを使用してサーバー経由で gcloud ストレージ バケットにファイルをアップロードできます。そうすれば、そもそもユーザーに credentials.json ファイルを実際に渡すことはありません。
このアーキテクチャでは、サーバーが認証されたユーザーに代わって gcloud storage バケットのアップロード呼び出しを行うため、サービス アカウントを使用する必要があると考えましたが、John Hanley から、ユーザー資格情報は安全でない環境で開始されると想定されていることがわかりました。 d 監査ログに「どのユーザーが何をしたか」の情報が必要です。
私の開発ビルドでは、credentials.json をプロジェクト ディレクトリの外に保存し、環境変数を使用してそれを指しています。これは機能しますが、この回答は、Google KMS を使用して暗号化し、アプリケーションで復号化することを示唆しています。
コメントでは、サービス アカウントの資格情報が公開される可能性があるため、これは実際には安全ではないことがわかります。
この回答によると、 dll は同等の C# コードに逆コンパイルできるため、キーの復号化に使用したものを誰でも見ることができます。
- では、本番環境で使用する必要があるアーキテクチャと、それを安全にする方法を知りたいですか?
- ユーザー情報をデータベースに保存し、認証されたユーザーにトークンを与え、gcloud ストレージ バケットにアップロードする呼び出しを行うときにこのトークンを使用する GAE インスタンスを作成することを考えています。これは本番アプリには十分ですか?
google-cloud-build - シークレット マネージャーを利用してクラウド ビルドを使用してソナー スキャナーを実行中にエラーが発生する
以下の問題について助けてください。シークレットマネージャーを利用してクラウドビルドを使用してソナースキャナーを実行していますが、問題に直面しています。そして、https://cloud.google.com/cloud-build/docs/securing-builds/use-secretsの同じ手順に従い ました ここに私のコードがあります
私が直面している問題は次のとおりです。
別のアイテムで試してみましたが、解決策が見つかりません。
あなたたちがこれについて私を助けてくれたら、私は感謝しています。ありがとうございました