ライブラリからのクラウドランの秘密マネージャ統合への移行


秘密のマネージャーは、私が最後に書いたので、クラウドランで使いやすいです.その書き込みの時点で、クラウドランで秘密を使用する最良の方法は、秘密マネージャAPIを統合するためにあなたのサービスにコードを追加することでした.今すぐ雲ランあなたのためです!
このポストでは、クラウド・ランニングのダイレクト・シークレット・マネージャーの統合を使用するために、Secret Managerクライアント・ライブラリを使用することから、「ロイヤルティ・チェッカー」サービスを移行します.(この執筆時点ではまだ統合されています.

沿って続く準備をする
あなたはまだ前回から設定されている場合は、ちょうどCloud Shellを開き、我々がオフに左に続けてください.
そうでなければ、コードを削除する感じを楽しむためにここを続けてください.

コードを変更する
秘密のマネージャとの直接の統合は、コードをより簡単にします:
  • クライアントライブラリ
  • を初期化するコードを削除する
  • はコードを削除して、最初の要求
  • の秘密を取得します
  • SECRET_NAMEの変数をSECRET_VALUEに変更し、サービスは環境変数からの秘密への直接アクセスを行います.
  • これらの変更の後、サービスは46行のコードによって縮小され、秘密マネージャでは依存関係がなくなりました.
    < div >
    < H >

    サービスの再配備
    <高橋潤子>
    秘密の統合を新しいオールインワン展開コマンドと組み合わせるでしょう
    <> P >
    クラスをハイライト表示する
    gcloud beta run deploy loyalty \
      --source . \
      --remove-env-vars SECRET_NAME \
      --update-secrets SECRET_VALUE=you-know-who:1
    
    < div >
    <ウル>
  • フラグは、現在のディレクトリ内のdockerfileをチェックして、別のコマンドなしでコンテナイメージを構築するためにフードの下でクラウドビルドを使用するようにgcloudに指示します.(詳細はdeploying from source codeについて読んでください.
  • フラグは、私たちのコードの秘密をロードする必要がない参照を削除します.
  • フラグは、既存の秘密を混乱させることなく、新しい秘密をサービスと統合します.(他の秘密を同時に削除するには--sourceを使用します).
  • < ull >
    クラウドランの秘密フラグについての良いことの一つは、リソース名全体の「リソースID」部分を使う方法です.秘密は通常「--remove-env-vars」として参照されます、しかし、同じプロジェクトの秘密を参照する必要があるすべては--update-secretsですp >
    < H >

    いいえiam更新?
    <高橋潤子>
    iam設定を変更する必要はありません.最後に我々は専用のサービスアカウントを設定し、秘密にアクセスできました.クライアントライブラリのための、あるいはこの直接的な統合のための設定も同じです.p >
    < H >

    次の手順
    <高橋潤子>
    あなたは、あなたのサービスの秘密を「リフレッシュする」ことができたいならば、documentation to learn how to mount your secrets as a volumeをチェックしてください.このポストの環境変数メソッドは、インスタンスが起動されて更新されないときに設定されます.p >
    すべてのコードは、Google w/Apache 2のライセンス