Tôi có một ứng dụng web, mà tôi xuất bản lên ba máy chủ web bằng cách sử dụng tùy chọn 'xuất bản'.Mã hóa WebConfig
Tôi muốn mã hóa phần kết nối của tệp cấu hình web. Lệnh dưới đây sẽ làm điều đó:
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -pef "connectionStrings" c:\inetpub\application
Tuy nhiên, tôi phải RDP (Remote Desktop) cho mỗi máy chủ và chạy lệnh trên mỗi máy chủ như bạn không thể chạy nó như thế này (từ một máy tính khách hàng):
\ servername \ c $ \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ aspnet_regiis.exe -pef "connectionStrings" \ servername \ c $ \ inetpub \ ứng dụng
có cách nào tốt hơn để làm điều này: có lẽ:
1) Execu te một dòng lệnh trên máy chủ sau khi xuất bản 2) Sử dụng một lựa chọn xây dựng trong Visual Studio cho phép bạn thực hiện một tập tin batch sau khi xuất bản xong
Tôi có thể hỏi tại sao bạn không tin tưởng máy chủ web của mình. Ngoài ra, thông thường khi bạn tạo gói triển khai, nó sẽ loại bỏ chuỗi kết nối. Tôi đã cấu hình các máy chủ IIS của tôi để xử lý điều này và thêm các chuỗi kết nối của chúng từ trong bàn điều khiển IIS. Điều này có lẽ sẽ tốt hơn so với truyền chuỗi kết nối trong tệp web.config vì nó cho phép dễ dàng hơn cho mỗi cấu hình máy/cân bằng tải. – Colton
Ứng dụng web được triển khai cho một vài máy tính khách trong Mạng cục bộ. Nếu tôi không mã hóa phần chuỗi kết nối; bất kỳ ai cũng có thể xem mật khẩu cơ sở dữ liệu đã đăng nhập. – w0051977
Đủ công bằng ... Bạn có thể sử dụng Bảo mật tích hợp không? Nếu các máy chủ được thiết lập đúng cách, điều này sẽ giảm thiểu hoàn toàn vấn đề của bạn nhưng việc thiết lập xác thực AD cho SQL có vẻ là một quá trình rất quan liêu. – Colton