2

GoogleストレージjsonファイルをBigQueryにアップロードするプロジェクトを作成しようとしています(現在手動で行われているものを自動化するだけです)。Pythonでサービスアカウントを使用してGoogle Cloudを認証する方法は?

私のスクリプトは毎日実行されるので、私はこれに「サービスアカウント」を使いたいと思います。

私はサービスアカウントを使用して、私は依然として認証に苦労していることがわかりました。

誰かが私が逃したものをチェックしてポイントすることができるのだろうかと思いますか?ここで

は私がこれまで何をやったかである:https://cloud.google.com/sdk/docs/

  • ラン:に従ってpip install --upgrade google-cloud-bigquery
  • インストール済みのGoogleクラウドSDK:

    1. は、サービスアカウントのJSONのキーファイル
    2. インストールされたクライアントライブラリを作成しましたexport GOOGLE_APPLICATION_CREDENTIALS=<path_to_service_account_file>キーパスが正しく指定されている

    ここで、次のPythonスクリプトを実行しようとしているイム:

    from google.cloud import bigquery 
    bigquery_client = bigquery.Client() 
    

    私はこのエラーを取得:

    google.auth.exceptions.DefaultCredentialsError:自動的に資格情報を判断できませんでした。 GOOGLE_APPLICATION_CREDENTIALSまたは を明示的に作成してアプリケーションを再実行してください。 の詳細については、 https://developers.google.com/accounts/docs/application-default-credentialsをご覧ください。 PythonとGoogleのクラウドAPIの両方に

    イムかなり新しいが、そうpossbily

    ワンダー誰かが指摘することができれば、何かを逃した場所/何上記の私の段階で間違っていたか、セットアップについてdummysの指示をクリアするために私を指すとサービスアカウントを使用してBigqueryで簡単なスクリプトを実行していますか?

  • 答えて

    6

    を見つけることができますPythonスクリプト自体のようなもの:

    import os 
    from google.cloud.bigquery.client import Client 
    
    os.environ['GOOGLE_APPLICATION_CREDENTIALS'] = 'path_to_json_file' 
    bq_client = Client() 
    
    1

    exportを使用して環境変数を設定したのと同じコマンドラインセッションでスクリプトを実行していますか?そうでない場合は、ユーザーまたはシステム用に設定することができます(詳しくは、this questionを参照してください)。

    さらに簡単にこれらのことを処理する別のオプションは、gcloud cli toolです。あなたはどのようにアプリケーションのデフォルトクレデンシャル作業の下の2番目のオプションhereを見れば、あなたは私が普通で、この変数を設定するあなたのための資格情報を管理するためにそれを使用する方法についての情報(gcloud auth logingcloud auth application-default login

    関連する問題