Tôi có một ứng dụng ASP.NET WebForms sử dụng Microsoft ASP.NET Universal Providers (NuGet) cho các thành viên và vai trò. Dưới sự tin tưởng đầy đủ tất cả mọi thứ hoạt động tốt, nhưng khi tôi chỉnh sửa web.config để chỉ định tin cậy trung bình, tôi nhận được lỗi này khi tải trang truy cập thành viên:System.Web.Providers không hoạt động trong môi trường tin cậy
Loại 'System.Web.Providers.DefaultMembershipProvider' không thể được khởi tạo trong một chính sách bảo mật đáng tin cậy một phần (AllowPartiallyTrustedCallersAttribute không có mặt trên assembly đích).
Tôi đã tìm kiếm trên web và không tìm thấy nhiều thông tin về việc đây có phải là giới hạn đã biết hoặc nếu có giải pháp thay thế. Tôi đang làm việc trên ứng dụng nguồn mở Gallery Server Pro, được phân phối trong MS Web Gallery và phải hỗ trợ môi trường tin cậy trung bình.
Bất kỳ thông tin chi tiết nào?
[Chỉnh sửa] mỗi yêu cầu, đây là những thứ web.config (tôi không sử dụng hồ sơ hoặc các nhà cung cấp trạng thái phiên):
<membership defaultProvider="DefaultMembershipProvider">
<providers>
<clear />
<add name="DefaultMembershipProvider" applicationName="Gallery Server Pro" connectionStringName="GalleryDb" passwordFormat="Clear" enablePasswordRetrieval="true" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="50" minRequiredPasswordLength="2" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</providers>
</membership>
<roleManager enabled="true" cacheRolesInCookie="true" cookieProtection="Validation" defaultProvider="DefaultRoleProvider">
<providers>
<clear />
<add name="DefaultRoleProvider" applicationName="Gallery Server Pro" connectionStringName="GalleryDb" type="System.Web.Providers.DefaultRoleProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</providers>
</roleManager>
Cậu đi qua quá trình này http://msdn.microsoft.com/en-us/library/wyts434y%28v=vs.100%29.aspx? ("Cấu hình một phần Tin cậy Visible Assemblies" có vẻ thú vị) – jbl
Tôi đã thử thêm partialTrustVisibleAssemblies để web.config và có lỗi tương tự (cũng đã thử fullTrustAssemblies cho biện pháp tốt, nhưng không có may mắn). Điều này được mong đợi, tuy nhiên, bởi vì thủ thuật này được thiết kế để làm việc trên các assembly được đánh dấu với AllowPartiallyTrustedCallersAttribute, mà System.Web.Providers dường như là không. – Roger
Bạn có thể đăng thành viên của bạn | RoleManager | Hồ sơ | Thẻ Sessionstate của web.config? – Win