다음을 통해 공유


방법: 미리 지정된 자격 증명을 사용한 SQL Server 액세스

업데이트: 2007년 11월

연결 문자열에 사용자 이름과 암호를 전달하면 신뢰할 수 있는 방식으로 SQL Server에 연결할 수 있습니다. 이때 미리 지정된 사용자 이름과 암호를 사용할 수 있습니다. 서버에서 미리 지정된 사용자 이름과 암호를 connectionStrings 구성 섹션의 일부로 저장한 다음 보호되는 구성을 사용하여 연결 문자열 내용을 암호화하는 방법을 사용하는 것이 좋습니다. 자세한 내용은 보호되는 구성 개요를 참조하십시오. 또한 NTFS 파일 시스템 권한을 사용하여 Web.config 파일에 대한 액세스를 제한하는 방법도 권장됩니다.

보안 정보:

응용 프로그램에서 자격 증명을 하드 코드하여 프로그램에 문자열로 삽입하면 안 됩니다. 코드 파일 또는 컴파일된 코드에 액세스할 수 있는 사용자가 이러한 자격 증명을 사용할 수도 있습니다.

보안 정보:

미리 지정된 사용자 이름에는 항상 리소스에 대한 최소 액세스 권한을 부여해야 합니다. "sa" 또는 기타 관리자 수준의 사용자 이름을 사용하지 마십시오. 또한 항상 강력한 암호를 사용해야 합니다.

Web.config 파일에 자격 증명을 저장하려면

  1. Web.config 파일에서 connectionStrings 요소에 새 add 키를 만듭니다. connectionStrings 요소는 configuration 요소의 자식으로 나타나야 합니다. 자세한 내용은 구성 섹션 스키마를 참조하십시오.

    다음 예제에서는 사용자 이름과 암호가 포함된 add 키를 보여 줍니다.

    <configuration>
      <connectionStrings>
        <add name="NorthwindConnection" 
          connectionString="Data Source=localhost; 
            Initial Catalog=Northwind;
            User Id=ApplicationUserID;
            Password=#P%19!ef2" />
      </connectionStrings>
    </configuration>
    
  2. 연습: 보호되는 구성을 사용하여 구성 정보 암호화에서와 같이 보호되는 구성을 사용하여 연결 문자열 값을 암호화합니다.

  3. 응용 프로그램에서 ConfigurationManager 클래스의 ConnectionStrings 속성으로부터 자격 증명을 읽습니다.

    다음 예제에서는 런타임에 자격 증명을 읽고 이 정보를 연결 문자열에 연결하는 방법을 보여 줍니다.

    Dim settings As ConnectionStringSettings
    settings = System.Configuration.ConfigurationManager.ConnectionStrings("NorthwindConnection")
    Dim connectionString As String = settings.ConnectionString
    
    ConnectionStringSettings settings;
    settings = System.Configuration.ConfigurationManager.ConnectionStrings["NorthwindConnection"];
    string connectionString = settings.ConnectionString;
    

참고 항목

개념

웹 응용 프로그램에서 SQL Server 액세스

데이터 액세스 보안(ADO.NET)

기타 리소스

ASP.NET 구성 설정

ASP.NET 인증