Fabric access with client certificate auth fails

0

We're using Fabric secure cluster and need client certificate for CI/CD tools.

I've created both Cluster primary certificate and client certificate with this script https://gist.github.com/kagarlickij/d63a4061a1066d3a85abcc658f0856f5

so both have been uploaded to the same Kay vault and both have been installed to local keystore on my machine.

I've added client certificate to my Fabric security settings (Authentication type = Admin client, Authorization method = Certificate thumbprint).

The problem is that I can connect (I'm using Connect-ServiceFabricCluster in PowerShell) to Fabric cluster with Cluster primary certificate but can't with Client certificate. I'm getting this error: Connect-ServiceFabricCluster : FABRIC_E_SERVER_AUTHENTICATION_FAILED: 0x800b0109

Please advice what can be done?

azure-service-fabric
asked on Stack Overflow Aug 1, 2017 by kagarlickij

2 Answers

1

Based on this link the corresponding error code for 0x800b0109 is:

A certificate chain processed, but terminated in a root certificate which is not trusted by the trust provider.

You're using a self-signed certificate as client cert. I'm not sure it's supported as explained in the Service Fabric Security documentation, moreover you'll have to make sure the SSL certificate has been added inside your local Store.

Client X.509 certificates

Client certificates typically are not issued by a third-party CA. Instead, the Personal store of the current user location typically contains client certificates placed there by a root authority, with an Intended Purposes value of Client Authentication. The client can use this certificate when mutual authentication is required. Note

All management operations on a Service Fabric cluster require server certificates. Client certificates cannot be used for management.

answered on Stack Overflow Sep 27, 2017 by sebbrochet
0

I had the same issue managing my cluster through powershell, I only had 1 cert on the cluster (the one azure generates when creating the cluster) and I believe it is a client cert since I have to select it in my browser when managing the cluster.

Ultimately I had to add the self signed cert to my Root certificate store (in addition to my personal store where I already had it) to get the powershell module to stop complaining about it.

answered on Stack Overflow May 12, 2020 by Josh • edited May 12, 2020 by Josh

User contributions licensed under CC BY-SA 3.0