I wrote a small tutorial about how to use the "cryptoapicert" configuration option in OpenVPN because I was having intermittent issues with the PKCS#11 support in OpenVPN. This option is quite powerful as it allows you to tap into the Microsoft CryptoAPI smartcard/certificate interface and grab information from that abstraction source. The tutorial also notes how to use OpenVPN with another product called the WWPass PassKey (cloud-based smart card) but that's an added bonus to the core tutorial.
Feedback appreciated! I didn't find a whole lot of in-depth documentation around the option so I hope that if there is fault with it that someone here will spot it.
https://joscor.com/2013/06/openvpn-wwpass-passkey-integration-using-microsoft-cryptoapi/