Bu konuda sizlere elimden geldigince ASP.NET Membership Configuration islemlerini anlatmaya çalisacagim.
Öncelikle herhangi bir db hazirliyoruz üzerinde membership kullanacagimiz. Daha sonrasinda Developer Command Prompt for ... isimli komut penceremizi açiyoruz.
Gelen komut satirina aspnet_regsql yazip entera basiyoruz.
Karsimiza böyle bir wizard gelecek:
Next dedikten sonra Configure seçenegini seçip tekrar next diyoruz.
Ardindan database bilgilerimizi girip tekrar next diyoruz ve Finish’i görene kadar next ile devam ediyoruz
Daha sonra ilgili database tekrar bakalim wizard bizim için ne yapmis?
Gördügümüz üzere bir çok yeni tablo ekledi. Iste bu tablolar Microsoft’un %100 güvenli olarak hazirladigi sistemin database ayagi.
Bundan sonra projemizin web.config dosyasina bazi eklemelerde bulunacagiz.
Membership config ayarlarini bilgisayarimizin macgine.config dosyasindan kopyalacagiz. Bunun için C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.3031 9\\Config dizinindeki machine.config adli dosyayi açiyoruz. Içinden Membership ve ConnectionStrings kelimelerini aratip ilgili yerleri buluyoruz. Maksat kolaylik olsun ne de olsa .NET.
Buradaki Connection String adini asla ve asla degistirmiyoruz. LocalSqlServer olarak kalacak! Makinemizdeki(kopyaladigimiz yerdeki) membership ve CS(connection string) ile karismamasi için ilk satirlarina <clear/> yazdik.
Simdi ConnectionStrings kismindaki CSyi kendi projemize göre editleyelim. Sonrasinda tekrar membership>providers altindaki add etiketinin bazi attributeleri oynayacagiz. Bazilarini açiklayamaya çalisacagim:
Buraya kadar geldigimize göre configuration islemini basarili bir sekilde yapmisiz demektir. Sirada rol atamalari ve izinler(permission) var.
Senaryomuzun bu kisminda kendisine tanimlanmis rolü Admin olmayanlarin Administrator klasörü altindaki sayfalara erisim saglamasini engelleyecegiz.
Görüldügü gibi bir ader login sayfamiz var ve Administrator klasörü altinda bir adet default sayfamiz var içinde de "Hosgeldin Yönetici" yaziyor.
login sayfamiza hemen bir Login component atiyoruz. Maksat sadece giris islemlerini test edebilmek.
Simdi Solution içerisinden web projemiz seçili iken PROJECT menüsü altindan ASP.NET Configuration’a tiklayalim.
Tikladiktan sonra açilacak browser ile karsimiza ASP.NET Web Site Administration Tool sayfasi gelecek.
Security tabina tiklayip Users altindan Select authentication type’e tiklayip From the internet seçeneginin etkin oldugunu kontrol edelim. Diger türlü kullanici islemlerine erisemiyoruz.
Örnek için 2 tane kullanici olusturalim. Sifrelerini unutmayalim
Daha sonra yine Security tabindan Roles altindaki Create or Manage roles seçenegi ile rol olusturma sayfasina gidelim. "Admin" olarak bir rol olusturduk.
Tekrardan Users altindaki Manage users seçenegi ile ilgili herhangi bir kullaniciya Admin rolü atayalim.
Simdi izin kismina geldik.
Security >> Access Rules >> Create access rules’a tiklayalim.
Gelen sayfada önce Admin rolüne izin verecegiz.
Sonra tüm kullanicilari yasaklayacagiz.
Bu ayarlari da yaptiktan sonra projeyi tekrar login.aspx sayfasindan baslatalim ve Administrator dizinine ulasmaya çalisalim. Artik hemen default.aspx içerigini göremiyoruz. Içerigi görebilmek için Admin rolüne sahip kullanicinin giris yapmasi gerekmektedir.
Öncelikle herhangi bir db hazirliyoruz üzerinde membership kullanacagimiz. Daha sonrasinda Developer Command Prompt for ... isimli komut penceremizi açiyoruz.

Gelen komut satirina aspnet_regsql yazip entera basiyoruz.

Karsimiza böyle bir wizard gelecek:

Next dedikten sonra Configure seçenegini seçip tekrar next diyoruz.

Ardindan database bilgilerimizi girip tekrar next diyoruz ve Finish’i görene kadar next ile devam ediyoruz

Daha sonra ilgili database tekrar bakalim wizard bizim için ne yapmis?

Gördügümüz üzere bir çok yeni tablo ekledi. Iste bu tablolar Microsoft’un %100 güvenli olarak hazirladigi sistemin database ayagi.
Bundan sonra projemizin web.config dosyasina bazi eklemelerde bulunacagiz.
Membership config ayarlarini bilgisayarimizin macgine.config dosyasindan kopyalacagiz. Bunun için C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.3031 9\\Config dizinindeki machine.config adli dosyayi açiyoruz. Içinden Membership ve ConnectionStrings kelimelerini aratip ilgili yerleri buluyoruz. Maksat kolaylik olsun ne de olsa .NET.


Buradaki Connection String adini asla ve asla degistirmiyoruz. LocalSqlServer olarak kalacak! Makinemizdeki(kopyaladigimiz yerdeki) membership ve CS(connection string) ile karismamasi için ilk satirlarina <clear/> yazdik.
Simdi ConnectionStrings kismindaki CSyi kendi projemize göre editleyelim. Sonrasinda tekrar membership>providers altindaki add etiketinin bazi attributeleri oynayacagiz. Bazilarini açiklayamaya çalisacagim:
PHP:
enablePasswordRetrieval=> Parola Kurtarma
enablePasswordReset=> Parola Sifirlama
requiresQuestionAndAnswer=> Gizli Soru Cevap istensin mi
applicationName=> Ilgili uygulamanin adi
requiresUniqueEmail=> Bir eposta ile sadece 1 kayit ayari
passwordFormat=> Sifreleri nasil kaydedecegi
maxInvalidPasswordAttempts=> Max. yanlis parola girisi
minRequiredPasswordLength=> En az parola uzunlugu
minRequiredNonalphanumericCharacters=> Parolada özel sembol sayisi
passwordStrengthRegularExpression=> Sifre için belirli bir yazim kurali
Buraya kadar geldigimize göre configuration islemini basarili bir sekilde yapmisiz demektir. Sirada rol atamalari ve izinler(permission) var.
Senaryomuzun bu kisminda kendisine tanimlanmis rolü Admin olmayanlarin Administrator klasörü altindaki sayfalara erisim saglamasini engelleyecegiz.

Görüldügü gibi bir ader login sayfamiz var ve Administrator klasörü altinda bir adet default sayfamiz var içinde de "Hosgeldin Yönetici" yaziyor.
login sayfamiza hemen bir Login component atiyoruz. Maksat sadece giris islemlerini test edebilmek.

Simdi Solution içerisinden web projemiz seçili iken PROJECT menüsü altindan ASP.NET Configuration’a tiklayalim.
Tikladiktan sonra açilacak browser ile karsimiza ASP.NET Web Site Administration Tool sayfasi gelecek.
Security tabina tiklayip Users altindan Select authentication type’e tiklayip From the internet seçeneginin etkin oldugunu kontrol edelim. Diger türlü kullanici islemlerine erisemiyoruz.
Örnek için 2 tane kullanici olusturalim. Sifrelerini unutmayalim

Daha sonra yine Security tabindan Roles altindaki Create or Manage roles seçenegi ile rol olusturma sayfasina gidelim. "Admin" olarak bir rol olusturduk.
Tekrardan Users altindaki Manage users seçenegi ile ilgili herhangi bir kullaniciya Admin rolü atayalim.

Simdi izin kismina geldik.
Security >> Access Rules >> Create access rules’a tiklayalim.
Gelen sayfada önce Admin rolüne izin verecegiz.

Sonra tüm kullanicilari yasaklayacagiz.

Bu ayarlari da yaptiktan sonra projeyi tekrar login.aspx sayfasindan baslatalim ve Administrator dizinine ulasmaya çalisalim. Artik hemen default.aspx içerigini göremiyoruz. Içerigi görebilmek için Admin rolüne sahip kullanicinin giris yapmasi gerekmektedir.