2013-03-08 2 views
1

외부 파일에 액세스하려면 SQLCLR 함수를 작성해야합니다. 나는 내 데이터베이스에 trustworthy on을 부여함으로써 그것을했다. trustworthy on을주지 않고 외부 리소스에 액세스 할 수있는 다른 방법이 있습니까? SQLCLR 구현을위한 신뢰할 수있는 데이터베이스와 관련된 위험이 있습니까?SQLCLR (어셈블리) 구현을위한 신뢰할 수있는 데이터베이스와 관련된 위험이 있습니까?

답변

2

, 수행 절차 :

USE MASTER; 
CREATE ASYMMETRIC KEY '<youKeyName>' FROM EXECUTABLE FILE = '<Your dll file path>'; 
CREATE LOGIN '<yourUserName>' FROM ASYMMETRIC KEY '<yourKeyName>'; 
GRANT EXTERNAL ACCESS ASSEMBLY TO '<yourUserName>'; 
USE '<YOUR DB NAME>'; 
CREATE ASSEMBLY '<Assembly name>' FROM '<Your dll file path>' 
    WITH PERMISSION_SET = EXTERNAL_ACCESS; 

보십시오 여기

는 신뢰할 수있는 플래그를 설정하기위한 몇 가지 지침을 자세히 Microsoft의 링크입니다 이 :) -

3

위험이 있지만 데이터베이스에있는 모든 코드를 제어하면 작습니다. external_access 또는 어셈블리에 대해 안전하지 않은 권한을 사용하는 경우에는 신뢰할 수있는 것으로 설정해야합니다. 그렇지 않으면 SQL Server가 그대로 코드를 신뢰하지 않고 인스턴스 외부로 이동하지 않기 때문입니다. 액세스를 위해 데이터베이스에 외부 자원을 TRUSTWORTHY ON을 피하기 위해

Guidelines for using the TRUSTWORTHY database setting in SQL Server

+0

위의 링크에서 나는 필요한 것을 얻었습니다. –

+0

걱정하지 않아도, 내가 제공 한 정보가 귀하의 질문에 대한 대답 인 경우 대답을 수락 된 것으로 표시하십시오. 모두에게 도움이됩니다. – steoleary

관련 문제