문제

아래 링크의 단계를 사용하여 web.config 파일의 연결 문자열을 암호화했습니다.http://www.codeproject.com/KB/database/WebFarmConnStringsNet20.aspx

그러나 애플리케이션을 호출할 때마다 다음 오류가 발생합니다.

공급자 'CustomProvider'를 사용하여 해독하지 못했습니다.제공자의 오류 메시지 :RSA 키 컨테이너를 열 수 없습니다.

암호화를 수행하는 서버는 64비트 Windows Server 2003 R2 SP2입니다.그 때문에 나는 ACL을 다음에 할당합니다. NT Authority\Network Service.그러나 여전히 작동하지 않습니다.

누군가가 이 작업을 수행하려면 무엇을 확인해야 하는지에 대한 아이디어를 갖고 있기를 바랍니다.

추신.기본 rsa 키를 사용한 경우 NetFrameworkConfigurationKey 암호화의 경우 연결 문자열에 액세스 문제가 발생하지 않습니다.

도움이 되었습니까?

해결책

글쎄요, 문제의 원인을 찾았는데, 정말 당황스러웠습니다.keyContainerName 속성에서 이름 철자를 잘못 입력했습니다.

그것은 그.그것이 문제의 원인입니다.

분명히 잘못된 keyContainerName을 제공하더라도 암호화는 작동할 것입니다. 저는 이것이 실패할 것이라고 잘못 생각했습니다.따라서 연결 문자열을 해독하고 올바른 keyContainerName으로 다시 암호화하면 제대로 작동합니다.

그런데, keyContainerName을 수정하기 전에 기존 연결 문자열을 해독해야 합니다.이제 공급자가 다르기 때문에 aspnet_regiis.exe는 잘못된 데이터에 대해 불평합니다.

다른 팁

다음을 추가하는 것을 기억하셨나요?

<configProtectedData>

web.config에?

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top