2011-07-21 6 views
5

Theo mặc định, cài đặt khóa máy sẽ tự động tạo và cho mỗi ứng dụng (Tự động tạo, IsolateApps). MSDN nói rằng khóa giải mã và khóa xác thực dựa trên id ứng dụng web. Tôi đang lưu trữ hai trang ASP.NET MVC 2 trên máy chủ IIS 7 của mình nhưng phát hiện ra rằng phím máy giống nhau. Tôi đã xác minh điều này bằng cách sử dụng phản chiếu để xem thuộc tính ValidationKeyInternal và DecryptionKeyInternal. Tôi cũng đã thử nghiệm nó bằng cách tạo ra một cookie token giả mạo trên một trang web và chuyển nó sang một trang khác và cookie có thể được đọc.Tạo khóa máy tự động trong ASP.NET

Sau khi dùng thử và lỗi, tôi đã tìm thấy khóa sẽ thay đổi nếu nhận dạng hồ bơi ứng dụng thay đổi. Hai trang web có cùng khóa vì chúng đang chạy dưới ủy nhiệm dịch vụ mạng. Khi tôi thay đổi nhận dạng hồ bơi ứng dụng của một trang web, chúng bắt đầu có các khóa xác thực/mã hóa khác nhau.

Tuy nhiên, sau khi triển khai hai trang web này đến một máy chủ khác, tôi luôn nhận được cùng một phím máy ngay cả sau khi thay đổi nhận dạng nhóm ứng dụng. Hai máy chủ có cùng cấu hình phần cứng và phần mềm.

Tôi muốn biết liệu có tham chiếu đến logic thực tế về cách khóa máy được tạo trong cài đặt Tự động tạo, IsolateApps hay không. Trên web, có rất nhiều bài viết nói về việc thiết lập cùng một khóa máy trong một kịch bản trang trại. Nhưng tôi gặp phải một vấn đề ở phía đối diện. Việc tạo khóa tự động cho mỗi ứng dụng web dường như không hoạt động đúng cách. Có ai có cùng vấn đề trước đây không?

+0

Những gì bạn mô tả là không điển hình. Theo kinh nghiệm của tôi nó đã làm việc như quảng cáo. Tôi có 2 ứng dụng chạy trong cùng một ứng dụng chia sẻ hình thức auth vé. Trừ khi tôi đặt machinkey giống nhau, họ không thể chia sẻ vé. –

+0

Tôi không bao giờ nghĩ rằng điều này sẽ không hoạt động cho đến khi tôi gặp phải vấn đề. Nỗi đau là tôi cần phải tìm một lời giải thích cho những gì đã xảy ra trên hai máy chủ. – intangible02

Trả lời

0

Bạn có cài đặt web.config có thể ghi đè cài đặt IIS không? Đó có thể là một yếu tố trong điều này như thể bạn đang nói với các máy chủ để sử dụng các khóa cụ thể sau đó họ có thể làm điều đó.

+0

Nếu tôi sử dụng giao diện điều khiển quản lý IIS để thay đổi cài đặt, thay đổi sẽ được lưu lại trong web.config. Chúng nhất quán. Nó cũng có nghĩa là những gì tôi thấy trong giao diện quản lý IIS được dựa trên các kết quả tổng hợp từ hieharchy tập tin cấu hình. Nhân đây, tôi đã làm bài kiểm tra bằng cách lưu trữ dự án trong cả máy chủ web phát triển IIS và Visual Studio. – intangible02