HERE platform を認証します

HERE platform への認証を行い、 HERE Data SDK for C++ の操作を開始するには、アクセス トークンを取得する必要があります。 既定 のトークンプロバイダプロジェクト認証または連携資格情報を使用して受信できます。

手順については、『 Identity & Access Management 開発者ガイド 』の「 OAuth tokens 」セクションを参照してください。

資格情報を安全に保管し、開示しないでください。 資格情報が、他のユーザーがアクセスできるような方法で保存されていないことを確認してください。

デフォルトのトークンプロバイダを使用して認証します

  1. プラットフォーム資格情報を入手してください。

    手順については、『 Identity & Access Management 開発者ガイド』の「アプリケーションの登録」セクションを参照してください。

    credentials.properties ファイルが取得されます。

  2. credentials.propertiesファイルから、kKeyIdおよび kKeySecret にそれぞれ、 here.access.key.ova および here.access.key.secret を使用して、認証設定を初期化します。

    credentials.propertiesReadFromFile メソッドを使用して、ファイルから資格情報を取得することもできます。 詳細については 、関連する API のドキュメントを参照してください。

    olp::authentication::Settings settings({kKeyId, kKeySecret});
    settings.task_scheduler = task_scheduler;
    settings.network_request_handler = http_client;
    
  3. AuthenticationSettings デフォルトのトークンプロバイダを使用してオブジェクトを設定します。

    olp::client::AuthenticationSettings auth_settings;
    auth_settings.token_provider =
      olp::authentication::TokenProviderDefault(std::move(settings));
    

アクセス トークンが提供されます。

AuthenticationSettings オブジェクトを使用して OlpClientSettings オブジェクトを作成できます。 詳細については、『開発者ガイド』の関連セクションを参照してください。

プロジェクト認証を使用して認証します

  1. プラットフォーム資格情報を入手してください。

    手順については、『 Identity & Access Management 開発者ガイド』の「アプリケーションの登録」セクションを参照してください。

  2. credentials.propertiesファイルの HERE .ACCESS.KEY.BOURD および here.access.key.secret を使用して、クラスAuthenticationCredentialsをそれぞれkKeyIdおよびkKeySecretとして初期化します。

    credentials.propertiesReadFromFile メソッドを使用して、ファイルから資格情報を取得することもできます。 詳細については 、関連する API のドキュメントを参照してください。

    olp::authentication::AuthenticationCredentials credentials(kKeyId, kKeySecret);
    
  3. 認証クライアントを作成します。

    olp::authentication::AuthenticationSettings settings;
    settings.task_scheduler = task_scheduler;
    settings.network_request_handler = http_client;
    authentication::AutnhentucationClient client(settings);
    
  4. SignInProperties プロジェクト ID を使用してオブジェクトを作成します。

    authentication::SignInProperties signin_properties;
    signin_properties.scope = "<project ID>";
    
  5. SignInClient オブジェクトを作成します。

    authentication:: SignInClient(AuthenticationCredentials credentials,
                                          SignInProperties properties,
                                          SignInClientCallback callback);
    

アクセス トークンが提供されます。

AuthenticationSettings オブジェクトを使用して OlpClientSettings オブジェクトを作成できます。 詳細については、『開発者ガイド』の関連セクションを参照してください。

連合資格情報を使用して認証します

  1. プラットフォーム資格情報を入手してください。

    手順については、『 Identity & Access Management 開発者ガイド』の「アプリケーションの登録」セクションを参照してください。

    credentials.properties ファイルが取得されます。

  2. credentials.propertiesファイルの HERE .ACCESS.KEY.BOURD および here.access.key.secret を使用して、クラスAuthenticationCredentialsをそれぞれkKeyIdおよびkKeySecretとして初期化します。

    credentials.propertiesReadFromFile メソッドを使用して、ファイルから資格情報を取得することもできます。 詳細については 、関連する API のドキュメントを参照してください。

    olp::authentication::AuthenticationCredentials credentials(kKeyId, kKeySecret);
    
  3. 認証クライアントを作成します。

    olp::authentication::AuthenticationSettings settings;
    settings.task_scheduler = task_scheduler;
    settings.network_request_handler = http_client;
    authentication::AutnhentucationClient client(settings);
    
  4. フェデレーション (Facebook または ArcGIS) のプロパティを取得します。

    少なくともフェデレーションアクセス トークンが必要です。 連携プロパティの完全なリストについては、関連するドキュメントを参照してください。

  5. 連携プロパティを初期化します。

    olp::authentication::AunthenticationClient::FederatedProperties properties;
    properties.access_token = "your-access-token";
    
  6. SignInUserCallback クラスを作成します。

    詳細については AuthenticationClient 、リファレンスドキュメントを参照してください。

  7. 手順 3 で作成した認証クライアント、フェデレーション資格情報、 SignInUserCallback およびクラスを使用して、独自のトークンプロバイダを作成します。

    カスタムトークンプロバイダを呼び出して、さまざまなスレッドを形成できます。

    auto token = std::make_shared<std::string>();
    
    settings.token_provider = [token](){
    if (token->empty() || isExpired(token)) {
    std::promise<AuthenticationClient::SignInUserResponse> token_promise;
    
    auto callback = [&token_promise](AuthenticationClient::SignInUserResponse response)
       { token_promise.set(response); };
    
    authentication::AutnhentucationClient client(settings);
    client.SignInFacebook(credentials, properties, callback);
    auto response = token_promise.get_future().get();
    (*token) = response.GetResult().GetAccessToken();
    }
    return *token;
    }
    

アクセス トークンが提供されます。 デフォルトでは、有効期限は 24 時間です。 トークンの有効期限が切れても HERE platform で作業を続けるには、新しいアクセス トークンを生成します。

AuthenticationSettings オブジェクトを使用して OlpClientSettings オブジェクトを作成できます。 詳細については、『開発者ガイド』の関連セクションを参照してください。

」に一致する結果は 件です

    」に一致する結果はありません