우리의 ASP.NET C# 웹 응용 프로그램은 jpgs, pngs, docx, txt 등과 같은 다양한 파일을 ClientBin이라는 폴더에 업로드합니다. Visual Studio 2010 .NET IDE와 함께 제공되는 Visual Studio 2010 .NET 테스트 서버에서 모든 것이 잘 작동합니다.ASP.NET C# 웹 응용 프로그램에서 업로드 폴더에 대한 권한을 부여하는 안전하고 자동화 된 방법은 무엇입니까?
그러나 IIS7 서버에 응용 프로그램을 배포하는 경우 웹 응용 프로그램에 파일 업로드 권한을 부여해야합니다. 기본적으로 IIS7을 사용하여 서버에 로그온 한 다음 jpgs, pngs, docx, txt 등과 같은 콘텐츠를 궁극적으로 포함해야하는 ClientBin 폴더의 보안 속성을 수동으로 수정합니다.
--- 성공적으로 업로드 할 웹 사용자 ---------------------------
Explorer에서 projectfolder \ ClientBin 폴더를 마우스 오른쪽 버튼으로 클릭하고 " 속성 "을 선택하고 보안 탭을 선택하십시오. 적절한 사용자 또는 그룹을 추가하려면 "추가"를 클릭하십시오. ASP.NET 계정을 강조 표시하고 원하는 액세스 상자를 선택하십시오. --- 업로드를 수동으로 만드는 수동 접근 방식 ---------------------------
- 여전히 웹을 제공하는 프로그래밍 방식 사용자가 여전히 웹 사용자에게 upload-하려고 예외 오류를 제공 ------------------
String DirectoryPath = System.IO.Path.Combine(Server.MapPath("~/ClientBin/"));
DirectorySecurity specificDirectorySecurity = Directory.GetAccessControl(DirectoryPath);
specificDirectorySecurity.AddAccessRule(new FileSystemAccessRule("Users", FileSystemRights.Modify, AccessControlType.Allow));
specificDirectorySecurity.AddAccessRule(new FileSystemAccessRule("Administrators", FileSystemRights.Modify, AccessControlType.Allow));
specificDirectorySecurity.AddAccessRule(new FileSystemAccessRule("SYSTEM", FileSystemRights.Modify, AccessControlType.Allow));
Directory.SetAccessControl(DirectoryPath, specificDirectorySecurity);
--Programmatic 접근 방식을 업로드하려고 예외 오류
: -----------------
또 다른 온라인 후 내가 Web.config의에서 다음을 입력하여이 문제를 해결 제안 프로그램 접근 --------
신원 가장 할로 문제를 해결할 수 ---- XML 구성 = "true"로는 userName = "컴퓨터 이름 \ 관리자" 암호 = "돈"
- - 프로그래밍 방식의 문제를 해결할 수있는 XML 구성 --------
그러나 신원을 true로 설정하면 보안 문제가 걱정됩니다.
프로그래밍 방식의 솔루션 일 수있는 가장 안전하고 자동화 된 방법은 무엇입니까?
감사합니다,
newemployee
결코, 이제까지, 사용자가 응용 프로그램 폴더에 물건을 업로드 할 수 있습니다.처음 업로드되고 실행 된 스크립트는 애플리케이션을 파괴합니다. –
@WiktorZychla 동의합니다. ASP.NET, IIS 또는 Windows에서 발견 된 결함 만 있으면 손상 될 수 있습니다. 바이너리를 외부 데이터 소스에 업로드하는 것이 좋습니다. – SilverlightFox