Which Cert is using what - Exchange onprem 2013


Hi Exchange Community,


On my Exchange-OnPrem 2013 server, I got Alerts regarding two certificates have expired and one certificate is about to expire.


I went to Exchange Admin Center --> Servers --> Certificates:

I can see those certs plus others along with their status and expire date.


I dont know what these certs are for as I took over recently on this role.
I was wondering if there is any function or cmdlet to show me which cert is using what and where each of them are being used. Is there any way?

Thanks in advance for your help.
9 Replies

@Ali Fadavinia 

You can use the following command


and you will see each certificate with which service is bound

@farismalaeb Thanks for sharing the knowledge.

I ran the command with different options but services shown there is blank via powerShell but it shows services in the UI.

can you please share a screenshot.

@farismalaeb Sure

best response confirmed by Ali Fadavinia (Contributor)

@Ali Fadavinia 

I try it in my exchange 2016 and the service shows None if the certificate is not assign with any service.

I also got some warning in my exchange regarding some expired certificate, but I ignore them as these certificate are not assign with any service or has been replaced with another new certificate.

run the following command for more infomatino and post the all result back


Get-ExchangeCertificate |where {($_.Services -notlike "none") -and ($_.Services -notlike $null)}| select thumbprint,Services,Subject


This command will show you a list of all certificate and the assigned services with them.


@farismalaeb Thanks for your help on this.


I ran the command but it did give me back any results. 


@Ali Fadavinia 

this seems silly thing from powershell,

If you use ISE to connect to exchange, the result for Service will be null,

try to use the Exchange Server Manamgement Shell in the server it self ( the Powershell that come with exchange) and run the command, you will see that the result are available.

Let me know the update.



You are right, it is working now in the Exchange Server Management Shell in the server itself.

But when I remote connect to the server via powershell it did not work.

Thanks you!

@Ali Fadavinia 

Thanks for the response.

Just to add extra details here,

I notice when i get the member Get-Member of Get-Certificate the services is not listed as a property, actually its not listed at all, and this is why you will get an empty value ($Null).

I will need to see whats going, maybe Exchange mgmt shell load more library before connect.