public void VerifyBadCertificateFileBehavior() { var tenantId = Guid.NewGuid().ToString(); var clientId = Guid.NewGuid().ToString(); TokenRequestContext tokenContext = new TokenRequestContext(MockScopes.Default); ClientCertificateCredential missingFileCredential = new ClientCertificateCredential(tenantId, clientId, Path.Combine(TestContext.CurrentContext.TestDirectory, "Data", "notfound.pem")); ClientCertificateCredential invalidPemCredential = new ClientCertificateCredential(tenantId, clientId, Path.Combine(TestContext.CurrentContext.TestDirectory, "Data", "cert-invalid-data.pem")); ClientCertificateCredential unknownFormatCredential = new ClientCertificateCredential(tenantId, clientId, Path.Combine(TestContext.CurrentContext.TestDirectory, "Data", "cert.unknown")); ClientCertificateCredential encryptedCredential = new ClientCertificateCredential(tenantId, clientId, Path.Combine(TestContext.CurrentContext.TestDirectory, "Data", "cert.pfx")); Assert.Throws <CredentialUnavailableException>(() => missingFileCredential.GetToken(tokenContext)); Assert.Throws <CredentialUnavailableException>(() => invalidPemCredential.GetToken(tokenContext)); Assert.Throws <CredentialUnavailableException>(() => unknownFormatCredential.GetToken(tokenContext)); Assert.Throws <CredentialUnavailableException>(() => encryptedCredential.GetToken(tokenContext)); Assert.ThrowsAsync <CredentialUnavailableException>(async() => await missingFileCredential.GetTokenAsync(tokenContext)); Assert.ThrowsAsync <CredentialUnavailableException>(async() => await invalidPemCredential.GetTokenAsync(tokenContext)); Assert.ThrowsAsync <CredentialUnavailableException>(async() => await unknownFormatCredential.GetTokenAsync(tokenContext)); Assert.ThrowsAsync <CredentialUnavailableException>(async() => await encryptedCredential.GetTokenAsync(tokenContext)); }
public override AccessToken GetToken(TokenRequestContext requestContext, CancellationToken cancellationToken) { return(_credential.GetToken(requestContext, cancellationToken)); }
public override AccessToken GetToken(TokenRequestContext requestContext, CancellationToken cancellationToken) { RefreshCertificate(); return(_credential.GetToken(requestContext, cancellationToken)); }