12#include "azure/identity/detail/client_credential_core.hpp"
15#include <azure/core/credentials/token_credential_options.hpp>
16#include <azure/core/http/http.hpp>
17#include <azure/core/internal/http/pipeline.hpp>
22namespace Azure {
namespace Identity {
24 class ClientAssertionCredentialImpl;
43 std::string
AuthorityHost = _detail::DefaultOptionValues::GetAuthorityHost();
59 std::string m_serviceConnectionId;
60 std::string m_systemAccessToken;
61 std::unique_ptr<Azure::Core::Http::_internal::HttpPipeline> m_httpPipeline;
62 std::string m_oidcRequestUrl;
63 std::unique_ptr<_detail::ClientAssertionCredentialImpl> m_clientAssertionCredentialImpl;
65 std::string GetAssertion(Core::Context
const& context)
const;
66 Azure::Core::Http::Request CreateOidcRequestMessage()
const;
67 std::string GetOidcTokenResponse(
68 std::unique_ptr<Azure::Core::Http::RawResponse>
const& response,
69 std::string responseBody)
const;
87 std::string serviceConnectionId,
88 std::string systemAccessToken,
106 Core::Credentials::TokenRequestContext
const& tokenRequestContext,
107 Core::Context
const& context)
const override;
Credential which authenticates using an Azure Pipelines service connection.
Definition azure_pipelines_credential.hpp:57
Core::Credentials::AccessToken GetToken(Core::Credentials::TokenRequestContext const &tokenRequestContext, Core::Context const &context) const override
Gets an authentication token.
~AzurePipelinesCredential() override
Destructs AzurePipelinesCredential.
AzurePipelinesCredential(std::string tenantId, std::string clientId, std::string serviceConnectionId, std::string systemAccessToken, AzurePipelinesCredentialOptions const &options={})
Constructs an Azure Pipelines Credential.
Client Assertion Credential and options.
Options for Azure Pipelines credential.
Definition azure_pipelines_credential.hpp:32
std::string AuthorityHost
Authentication authority URL.
Definition azure_pipelines_credential.hpp:43
std::vector< std::string > AdditionallyAllowedTenants
For multi-tenant applications, specifies additional tenants for which the credential may acquire toke...
Definition azure_pipelines_credential.hpp:50