2011-07-08 19 views
3

ストアドプロシージャの実行時に特定のユーザー名で対称キーを使用することに関するアクセス許可の問題があります。SQL Server 2008で対称キーが見つかりません

GRANT CONTROL ON CERTIFICATE::myCert TO myUser 
GRANT VIEW DEFINITION ON SYMMETRIC KEY::myKey TO myUser 

を実行しているにもかかわらず、私はまだ同じエラーを取得:

Cannot find the symmetric key 'myKey', because it does not exist or you do not have permission.

マスターキー、証明書および対称鍵は、ユーザー名が関連するデータベースの下に設定しました。

Windows認証でSPを実行すると問題なく動作します。私が見逃している何

OPEN SYMMETRIC KEY myKey DECRYPTION 
BY CERTIFICATE myCert 

INSERT INTO sp_Password 
(billEncryptPassword) 
VALUES(ENCRYPTBYKEY(KEY_GUID('myKey'),@billEncryptPassword)) 

RETURN @@IDENTITY  
CLOSE SYMMETRIC KEY myKey 

はここでストアドプロシージャの?

+0

誰でもこのことについての提案を得ましたか? – ComfortablyNumb

答えて

0

これはSysAdminとして実行しているときでも同じ問題が発生しています。

私は現在、正常に動作するすべてのオープンキーを閉じています。私はむしろ私が開いていたものだけを閉じてしまうだろう。

閉じるすべてのSYMMETRIC KEYS;

---補遺は

私は、DES暗号化対AES_256でこれを試してみましたが、AES_256は私の側で働いていました。

+1

私はログインにsysadminサーバの役割を追加することによってそれを稼働させることができましたが、ログインがウェブサイト接続であると想定されるため、これが本当の修正であるかどうかはわかりません。 – ComfortablyNumb

+0

同じ問題がありました。 GRANTは何もしませんでしたが、sysadminロールを追加するとGRANTが解決します。もっとエレガントなものを発見したことはありますか? –

+1

あなたは本当にsysadminに昇格するべきではありません。それはハック(そしてそれで危険なもの)でしょう。私はこれをAES_256を使って動作させることができました。 – PseudoToad

0

その後、CLOSE MASTER KEYが不足しています。これは、その後の暗号化/復号化を邪魔しています。

関連する問題