我创建了一个在本地计算机上运行的服务。本地计算机安装了一些证书,用于授权,因此获取访问令牌。 以前所有这些都是在本地机器上进行的。
GetCertificateFromStore();
AuthenticationResult result = _authContext.AcquireTokenAsync(string ResourceId,ClientAssertionCertificate certificateCredential).Result;
if (result != null)
{
AccessToken = result.AccessToken;
return true;
}
return false;
GetCertificateFromStore()设置certificateCredential = new ClientAssertionCertificate(ClientId,certificate);
现在我想将此证书传递给某个web api并将访问令牌从那里返回到本地计算机。我可以通过证书,但在web api方面,通过证书显示未找到私钥错误。
// Below is the code I am using to call api for accessing and returning access token
client.PostAsJsonAsync(ApiConfigHelper.getAzureAccessToken, certificateCredential).ContinueWith(task =>
{
if (task.Status == TaskStatus.RanToCompletion)
{
var response = task.Result;
if (response.IsSuccessStatusCode)
{
// token = response.Content.ReadAsAsync<string>().Result;
token = response.Content.ReadAsStringAsync().Result;
}
}
});
upload.Wait();
X.509证书中不存在私钥。是我的例外。
我需要知道我可以将证书传递给某个api以获取访问令牌。
由于 Subham