Note: This question is specific to OAuth2 and Azure AD. I am not asking about securing SSL communications. In this case the certificate is not use to encrypt anything and is not part of any communication protocol. It is used in a similar way to a password. (Which, to my understanding, means it is not something that can be hit by a man in the middle attack.)
I am setting up my applications to authenticate with Azure AD. One of the options that Azure AD Supports is the use of a certificate in place of a Client Secret string for OAuth authentication.
One of the documentation pages seems to indicate that using a self signed certificate for this is a bad idea in production.
But I am curious why?
I upload the public key of my self signed certificate to my Application Page in Azure AD. Then the my actual application uses the private key when it authenticates with Azure AD. Both sides of the communication are known and controlled by me.
Is a self-signed certificate somehow less protection in this case?