--- title: "How do I support Microsoft IIS?" source_url: https://dev.digicert.com/trustcore-sdk/nanossl/faqs/how-do-i-support-microsoft-iis.html --- **Question:** How do I configure my TrustCore SDK build flags so that SSL authentication works correctly with Microsoft IIS (Internet Information Services)? **Answer:** Microsoft IIS allows administrators to protect websites, directories, or individual files with client certificates. Because of this flexibility, IIS does not ask a client for its certificate unless the client is accessing a protected resource. (IIS does not know what resource the client will request until after the SSL session has been established.) If a client requests a protected resource, IIS initiates a re-handshake, which includes a certificate request. To enable mutual authentication and re-handshake support, define the following build flags: - `__ENABLE_MOCANA_SSL_MUTUAL_AUTH_SUPPORT__` - `__ENALBE_MOCANA_SSL_REHANDSHAKE__` In the code, add the client certificate and its key to the TrustCore SDK certificate store that was passed as an argument when the connection was initialized (via an `SSL_*_acceptConnection` or `SSL_*_connect` call).