.NET 4.5 とトークン ベースのセキュリティを使用して WCF サービスを実装しています。クライアント側では、myfact.CreateChannelWithIssuedToken()
以前に STS から取得したトークンを使用して呼び出しています。このチャネルを使用してサービスを呼び出すと、(WCF サービス トレースで) 次のエラーが発生します。
Cannot resolve KeyInfo for decryption: KeyInfo 'SecurityKeyIdentifier
(
IsReadOnly = False,
Count = 1,
Clause[0] = EncryptedKeyIdentifierClause(EncryptedKey = qDJDOHUxLxDP8/5baRbY6LrnIX2cYLGwC8b9xDQbEfLsYhcowtszecfWK93dFQHBNV+COHSZpKapJlzrbi12QlObuhfpB08vIxrgXCLg69w4PfAq/jzJcK3N16GHHADSE6XT0KVBXQbcwJqyrELLGAc9ve3cnn52EDg6rkVKBNg=, Method 'http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p')
) ', available tokens 'System.ServiceModel.Security.AggregateSecurityHeaderTokenResolver'.
これは、サービスが受信したセキュリティ トークンを復号化できないためだと思われますが、その理由はわかりません。証明書は LocalMachine\My ストアにあり、関連付けられた秘密キーがあります。
WCF は必要な証明書をどのように見つけますか? また、私の場合はなぜ見つけられないのでしょうか?