0

app -engine で Google 認証に RemoteAPI を使用しています (非推奨の ClientLogin を使用)。Oauth2.0 に変更したい。私はたくさんグーグルで検索しましたが、あまり説明が見つかりませんでした。あらゆる種類の助けをいただければ幸いです。

public abstract class RemoteApiClient {

    protected void doOperationRemotely() throws IOException {
        TestProperties testProperties = TestProperties.inst();

        System.out.println("--- Starting remote operation ---");
        System.out.println("Going to connect to:"
                + testProperties.PROJECT_REMOTEAPI_APP_DOMAIN + ":"
                + testProperties.PROJECT_REMOTEAPI_APP_PORT);

        RemoteApiOptions options = new RemoteApiOptions().server(
                testProperties.PROJECT_REMOTEAPI_APP_DOMAIN,
                testProperties.PROJECT_REMOTEAPI_APP_PORT).credentials(
                testProperties.TEST_ADMIN_ACCOUNT,
                testProperties.TEST_ADMIN_PASSWORD);

        RemoteApiInstaller installer = new RemoteApiInstaller();
        installer.install(options);
        try {
            doOperation();
        } finally {
            installer.uninstall();
        }

        System.out.println("--- Remote operation completed ---");
    }

}
4

1 に答える 1

0

OAuth2 認証では、gcloud 内に 2 つの主要なソリューションがあります。

gcloud

gcloud をインストールして ( https://cloud.google.com/sdk/ )、初期化します ( https://cloud.google.com/sdk/docs/initializing )。その後、「gcloud auth login」に移動して実行する必要があります。これにより、gmail で接続されたアカウントの認証ウィンドウが表示されます。

あなたの他の魂は、Googleコンソールを介して新しいサービスアカウントを作成し、それにjsonキーを提供し、それを関数パラメーターの資格情報として渡すか、GOOGLE_APPLICATION_CREDENTIALS環境変数に設定するか、 gcloud auth activatve-service-account --key-file "を使用しますPATH_TO_JSON".

サービス アカウントを作成するためのチュートリアル: https://developers.google.com/identity/protocols/OAuth2ServiceAccount#overview

サービス アカウント (後述) に対する gcloud デフォルト認証の主な利点は、すべての Google クラウド プロダクトが一定の場所にある application_credentials.json(well_known_file) ファイルをチェックすることです。もう 1 つの利点は、1 時間以上のセッション中にトークンを更新できることです。

于 2016-05-18T06:35:15.627 に答える