Sen HttpModule kullanmak da deneyebilirsiniz: - Bu link size verecektir : - Açıkçası şu DbTables yapıyı gerekir - istek istenecek hangi sayfada olduğunu bilemez böylece örnek uygulamasında kodunu değiştirme iyi bir başlangıç
Şimdi
bu kaba size aşağıdaki set verecekti tablo ifadeleri oluşturmak:
- her kullanıcının bir veya daha fazla UserRoles
- her sayfa olacak CONFIGUR olacak mümkün
Bazı DDL SQL fikri etrafında UserRole başına erişilmesini: temelde
CREATE TABLE [User](
[UserId] [int] IDENTITY(1,1) NOT NULL,
[FirstName] [varchar](100) NOT NULL,
[SecondName] [varchar](100) NULL,
[LastName] [varchar](100) NOT NULL,
[DomainName] [varchar](100) NOT NULL,
[UserRoleId] [int] NOT NULL,
[Password] [nvarchar](100) NOT NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[UserRole](
[UsersRoleId] [int] IDENTITY(1,1) NOT NULL,
[RoleId] [int] NOT NULL,
[UserId] [int] NOT NULL
) ON [PRIMARY]
CREATE TABLE [ga].[Roles](
[RoleId] [int] IDENTITY(1,1) NOT NULL,
[RoleName] [varchar](50) NOT NULL,
[RoleDefinition] [varchar](1000) NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[Page](
[PageId] [int] IDENTITY(1,1) NOT NULL,
[PageName] [varchar](200) NOT NULL,
[PageDescription] [varchar](max) NOT NULL,
[PageTitle] [varchar](50) NOT NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[PagePerUserRole](
[PageForRoleId] [int] IDENTITY(1,1) NOT NULL,
[UserRoleId] [int] NOT NULL,
[PageId] [int] NOT NULL
) ON [PRIMARY]
GO
VEYA CustomBaseClass
aynı ama kullanımı bazı çok erken olaya erişimi olup olmadığını kontrol ediyorum asp.net sayfa yaşam döngüsü - OnInit
Bu daha alışılmamış bir yoldur - ancak karmaşık kimlik doğrulama mekanizması kullanarak bir uygulama yazdım (3-yazılım sistemi kullanarak) ve üretimde bir süre çalıştığı görülmektedir;
Sitemdeki yerleşik giriş kontrollerini kullanmalı mıyım yoksa rolleri mevcut koda göre kullanabilir miyim? – Caveatrob