: Eğer Linq gibi bir şey kullanıyorsanız
select * from route where [email protected] and [email protected]
Böyle bir yeniden kullanılabilir fonksiyonlu gibi kullanıcı kısıtlama uygulayarak çok daha iyi bir güvenlik modeli yapabilir TEKRARLAMAYIN TEKRARLAMAYINIZ
Düzenleme: UserId saklamak - zorunda değilsiniz. Sürece kullanıcı elbette kaydedilir olarak her an MembershipProvider adresinden elde edebilirsiniz:
MembershipUser user = Membership.GetUser();
Guid UserID = user.ProviderUserKey;
geliyor bana sen ASP.NET üyelik sağlayıcısı uygulamak gerekiyor gibi. http://odetocode.com/articles/427.aspx
Ayrıca Scott Guthrie iyi bir dizi: Bir kullanıcının kim doğrulamak için kullanın form kimlik doğrulaması: Genel olarak http://weblogs.asp.net/scottgu/archive/2006/02/24/ASP.NET-2.0-Membership_2C00_-Roles_2C00_-Forms-Authentication_2C00_-and-Security-Resources-.aspx
, bu yaklaşım bu kaynağın bir okuma var. Bu, güvenliğin Kimlik Doğrulama tarafıdır. Yani, kullanıcının belirledikleri kişi, genellikle kullanıcı adı ve parola ile belirlenir.
Güvenlik ikinci kısmı, kullanıcının kim olduğunu öğrendikten sonra gerçekleşen Yetkilendirme'dir. Bu temel olarak, kimliği doğrulanmış bir kullanıcının hangi kaynaklara erişebildiğini belirlemekten oluşur. Olgun sistemi aşağıdaki varlıkları içerecektir: Eğer kullanıcıya doğrudan kaynak vermek veya olabilir 854 (a Kaynak) routeid için bir kullanıcı erişimi vermek için, Böylece
User: may contain extended profile information captured on registration
Resource: a page or other resource that can be restricted.
Group: a group of users who can access resources due to their group membership (groups are granted resource access)
Role: a type of user such as Administrator/Developer/Salesperson.
için acceses olmalıdır birden çok kullanıcı varsa Bu kaynak ve bu kullanıcılar doğal bir grup oluşturur, daha sonra bu grubu oluşturur, kaynağı gruba verir ve kullanıcıyı gruba ekler.
Sonra bir kaynak kimliği eklenen User.Resources erişebilir veya sağlayıcı modeli kullanılarak mevcut çok iyi şeyler vardır
if(!User.IsInRole("RoleName"))
{
//redirect to access denied page
}
kullanarak tüm sayfayı koruyabilir.
Düzenleme: Something kullanıcılar hakkında profil bilgileri depolamak için karar farkında olmak: ProfileProvider varsayılan uygulaması özellikle iyi değil. Scott Guthrie bir tablo tabanlı sağlayıcıya iyi makale yazdı daha iyi: http://weblogs.asp.net/scottgu/archive/2006/01/10/435038.aspx
Oturum açmak için ASP.NET Üye Gönderme sağlayıcısı kullanıyorum. Ama özel bilgiler hakkında biraz bilgi görmek güzel. :-) Daha fazla okumak için gidiyor .. – janhartmann
İyi şeyler: Burada da iyi bir örnek kod var: http://asp.dotnetheaven.com/aspnet/doc/security/membership.aspx#auth –
UserId saklamakla ilgili olarak , cevabımın en üstündeki Düzenle'ye bakın. –