基本的に、証明書を開く手順があります。
CREATE PROCEDURE [dbo].[SP_OPENCCKEY] WITH EXECUTE AS OWNER AS
OPEN SYMMETRIC KEY CCKEY
DECRYPTION BY CERTIFICATE CERTCC;
いいえ、ユーザーに直接開かせたくありません。
したがって、その証明書を使用してクレジットカードデータの一部を復号化するビューを返そうとしていますが、次のようにしています:
public List<VW_CREDITCARDS> ListCreditCardByPersonID(int PersonId)
{
EntityMgr ent = new EntityMgr ();
ent.ExecuteFunction("SP_OPENCCKEY");
return ent.VW_CREDITCARDS.Where(p => p.PES_IDPERSON== PersonId).ToList();
}
何らかの理由で、結果が NULL を返しています (おそらく EF がキーを開いていないため)。
いくつかのヒント?