2009-05-11 4 views
0

나는 asp.net 웹 프로젝트를 진행 중이며, 내 역할을 발견하고 .mdf 파일에 저장했다. 나는이 일을해야한다 -ASP.NET SQL Server 설치 마법사

이제

https://help.maximumasp.com/SmarterTicket/Customer/KBArticle.aspx?articleid=878

, 내 질문은 : SQL Management Studio를 통해 연결을 시도에 읽는 동안 (SQLExpress입니다 2005를 사용), 나는이 기사를 발견? 완료되면 호스팅 제공 업체에 웹 사이트를 업로드 할 예정이며 최대한 원활하게 진행되기를 원합니다.

일반적으로 MDF 파일을 웹 사이트와 함께 서버로 옮기거나 SQL Server 자체에 정보를 저장하는 것이 더 좋습니까? 나는 이미 웹 사이트를위한 DB를 가지고있다. asp.net의 역할 정보를 내 자신의 DB에 통합하여 관리 할 단일 DB 만 가질 수 있을까? 읽기

감사의 ASP.NET 멤버 자격 공급자를 사용 Kolten

~

답변

1

는 사용자 credientials을 관리하는 유효한 방법입니다. MDF 파일을 업로드하면 누군가가 MDF 파일을 가져 와서 모든 사용자 세부 정보를 얻을 수있는 위험이 있습니다. 이 정보를 호스팅 환경에서 제공하는 SQL 데이터베이스에 저장하면 연결 세부 정보가 손상되지 않고 자신을 SQL Injection 공격에 노출시키지 않고 공급자가 자신을 노출하지 않는 한 일반적으로 더 안전합니다. SQL 주입 공격.

멤버십 정보는 멤버십 테이블과 이름이 충돌하지 않는 한 나머지 응용 프로그램과 동일한 데이터베이스에 저장할 수 있습니다. aspnet_regsql 명령 행에서 데이터베이스 연결 세부 사항을 지정하여 필요한 테이블을 작성할 수 있습니다.

web.config 파일에서 roleManager 및 멤버 자격 공급자를 수정해야 사용할 연결 문자열을 지정할 수 있습니다. 즉

<system.web> 
    <roleManager enabled="true" defaultProvider="AspNetSqlRoleProvider"> 
     <providers> 
     <remove name="AspNetSqlRoleProvider" /> 
     <add name="AspNetSqlRoleProvider" connectionStringName="MembershipSQLConnectionString" 
      applicationName="/" 
      type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> 
     </providers> 
    </roleManager> 
</system.web>