Bu site emekli olmuştur. Arşiv amaçlı olarak BT AKADEMİ sponsorluğunda yayın hayatına devam etmektedir.




C#nedir?com
 
YAZAR HAKKINDA
Ali Hıdımoğlu
Ali Hıdımoğlu
http://www.csharpnedir.com/
İletişme geçmek için tıklayın.
7 Makalesi yayınlanmakta.
Yazar hakkında detaylı bilgi için tıklayın.
Yayınlanan diğer makaleleri için tıklayın.
İlgili etiketler: asp.net burada default.aspx diyelim diyerek ekleyelim karsimiza kullanici login.aspx memberpages membership sayede sayesinde sitesi tiklayarak ASP.NET Ali Hıdımoğlu
 
YAZI HAKKINDA
Türü : Makale
Serbest Köşede C#nedir?com üyelerinin hazırladıkları yazılar yayınlanır. Bu yazılar editör incelemesine girmeden yayınlanır.
Seviyesi : Orta
Kategori : ASP.NET
Yayınlanma Tarihi : 10.8.2005
Okunma Sayısı : 74268
Yorum Sayısı : 17     yorum yaz
Site İçi AramaSİTE İÇİ ARAMA
Üye Girişini AçÜye GİRİŞİ
Üye girişi için tıklayın.
Kullanıcı Adı
Şifre
 
Beni her zaman hatırla
Bir hafta boyunca kullanıcı bilgilerinizi kullanıcı çıkışı yapana kadar hatırlar. (Paylaşılan bilgisayarlarda önerilmez.)
 
Şifremi / Kullanıcı Adımı unuttum.
 
.net TV RSS Serbest KÖŞE (?)
Serbest Köşede C#nedir?com üyelerinin hazırladıkları yazılar yayınlanır. Bu yazılar editör incelemesine girmeden yayınlanır.
emre TAŞ
Silindi
emre TAŞ
yazının devamı >
emre TAŞ
silindi
emre TAŞ
yazının devamı >
emre TAŞ
silindi
emre TAŞ
yazının devamı >
emre TAŞ
silindi
emre TAŞ
yazının devamı >
emre TAŞ
silindi
emre TAŞ
yazının devamı >
Makale Gönder Bende Yazmak İstiyorum
.net TV RSSBlogroll
Turhal Temizer
Conda install environment.yml Package 18.4.2024
Turhal Temizer
Mac OS/X Removing CUDA 18.4.2024
Burak Selim Şenyurt
Kurumsal Yazılımcının Oyun Geliştirme ile İmtihanı 18.4.2024
Burak Selim Şenyurt
Matematik ve Oyun Programlama - Missile Command - Final 18.4.2024
  Diğer Herşey
Sponsorlar
BT Akademi
Medya Portakal
Video Hosting Sponsoru
Csharpnedir.com bir Ineta üyesidir
Uzman Abi
Her Yönüyle C# - Sefer Algan
Asp.Net 2.0 Kullanıcı Yönetiminde Login Kontrollerinin Kullanımı
 
Kapat
Sayfayı Yazdır Sık Kullanılanlara Ekle Arkadaşıma Gönder MySpace Del.Ico.Us Digg Facebook Google Mixx Reddit StumbleUpon
Merhaba öncelikle whidbey de bir web sitesi düzenlerken karşımıza ilk çıkan ya da gözümüze ilk takılan şey olan Login kontrollerini inceleyeceğiz. Bunun için fazla kaynak aşındırmaya gerek yok MSDN kütüphanelerinde herşeyi bulabiliriz. Ben sadece bir göz dolgunluğu olsun nasıl kullanılıyor whibey de ne yapmam gerek gibi sorulara yanıt vermesi açısından bir örnekle burada açıklamak istedim. Bunun için Asp.net Membership ile işe başlayacağız.

Bir web sitesi kuralım: IIS de bir web sitesi
  • Visual Studio da File > New Web Site diyelim
  • ASP.NET Web Site seçip oradan Browse > sol taraftan Local IIS oradan varsayılan web sitemizi seçelim.
  • Sağ üst kısımdaki 2 simgeden soldaki yani Create New Web Application butonuna tıklayalım ve membership adında bir web sitesi oluşturalım.
  • Open diyip açalım dili istediğiniz gibi seçebilirsiniz aslında bu uygulamada bir kod yazmayacağız.
Sitemizi kurduktan sonra karşımıza Default.aspx gelecek evet şimdi sitemizi ASP.NET Membership için ayarlamamız lazım işte ASP.NET 2.0 da web.config dosyasını direk düzenleyen görünüm panelini Websites > ASP.NET Configuration dan açalım.



ASP.NET Membership yaratma
  • Önce Solution Explorer a gelip projemize sağ tıklayıp New Folder diyerek MemberPages i ekleyelim.
  • Sonra Asp.net Configuration ekranından Security > Security Setup Wizard a tıklayalım. İleri diyerek geçelim.
  • Karşımıza 2 adet security seçeneği çıkıyor bizi burada From the Internet ilgilendiriyor. Bu sayede Forms authentication metodunu uygulamış oluyoruz.
  • İleri diyerek geçelim burada belirteyim sistem Application_Data klasörüne siteyi tamamen yönetebileceğiniz bir database ekledi tabi kendi veritabanınız yerine geçmez ama bunu ilerde değiştirmeyi de göstereceğiz.
  • Açıklamalardan sonra Enable roles for this web site (Bu web sitesinde rolleri aktifle) karşımıza çıkıyor bu ilerde ele alınacağı için şimdilik seçmeden atlayalım.
  • Evet, sihirbaz sayesinde kullanıcı ekleme paneline geldik buradan yeni bir kullanıcı yaratacağız.
  • User Name : boşluk olmadan bir kullanıcı adı.
  • Password : şifre güçlü bir şifre içinde büyük küçük harf olan sayı ve özel karakter olan şifre kabul oluyor. Ve en az 8 karakter olmalı.
  • E-mail : kişisel e-mail adres.
  • Security Question ve Answer : Şifre geri istemede kullanılacak soru ve cevap.
  • Create User a tıklayın üyelik yapıldıktan sonra ileri diyerek diğer panellere geçelim.
  • Erişim için yeni kural tanımlamaya girelim. Add New Access Rule(yeni erişim kuralı) kutusundan membership(projemiz) seçelim oradan da treeview den önceden yarattığımız MemberPages i seçelim bu sayede sistemimize MemberPages klasörüne erişimi kısıtlamış olacağız
     
  • Rule Applies To (kuralları uygula) kısmının altında Anonymous User (Giriş yapmamış üye- Ziyaretçi) yi seçelim ve onun erişimini ayarlayalım.
     
  • Permissions(izinler) altından Deny(engelle) yi seçelim ve Add This Rule diyerek bu kuralı ekleyelim. Bu ayar sayesinde ziyaretçilerimizin MemberPages klasöründeki herhangi bir sayfaya erişmeye çalıştığında direk Login.aspx e gönderecek.
     
  • Bitir dedikten sonra sistem projemize bir Web.config dosyası yarattı. Solution Explorer’ı yenileyerek bu dosyayı görebiliriz.
Siteye Login kontrolünü eklemek Visual Studio dan Default.aspx e girelim. Şimdi LoginStatus kontrolünü ToolBox dan seçip Default.aspx e sürükleyelim. Bu kontrol sayesinde bir Login(giriş) linki ve giriş sağlandığında Logout(çıkış) linki elde edebileceğiz.

Not : Bu örnek de giriş panelini Login.aspx de tanımlayacağız ama siz farklı bir dosyaya login paneli eklemiş iseniz Web.config dosyası sayesinde bunu değiştirebilirsiniz.

  • Şimdi projemize Login.aspx dosyasını ekleyelim bunu özel bir klasöre değil Default.aspx in yanına ekleyelim ve tasarım ekranına geçelim.
     
  • Login kontrolünü seçip login.aspx e sürükleyelim bu kadar sisteme bir login ekledik eğer login e özel hata ayıklayıcısı koymak isterseniz Validations kısmından ValidationSummary i sürükleyin projeye ve onun özellikler panelinden ValidationGroups kısmına Login1 (sürüklediğimiz login kontrolü ismi) yazalım.


LoginView kontrolü ve Girişin onaylanması Kullanıcılarımızın online olduğunda onlara mesaj göstermek yada giriş yapmamışlarsa onlara giriş yapmalarını hatırlatmak amacıyla kullanacağımız kontrol LoginView dir.

Default.aspx i açalım ve LoginView i sürükleyelim. LoginView in sağ üst kısmında küçük bir ok vardır ona tıklayarak Edit Template e tıklayalım bu sayede kullanıcı giriş yapmışsa ya da yapmamışsa ekranda gösterilecek temayı hazırlamış olacağız. Karşımıza Anonymous Template(ziyaretçi teması) çıkacak oraya “ Giriş yapmadınız lütfen Login’e tıklayarak giriş yapınız. ” yazalım. Anonymous Template in altında LoggedInTemplate(Giriş yapıldı teması) nı seçelim oraya Login kontrolleri içerisindeki LoginName ’i sürükleyelim (bu sayede sistem otomatik giriş yapan kullanıcının UserName ini yani kullanıcı adını otomatik yerleştirecektir.) ve yanına şunu yazalım “[UserName] hoşgeldin... ” yazalım. Sonra o sağ üstteki oka tıklayarak End Template Editing(tema düzenlemesini bitir) diyelim.

Sistem çalışmadan önce Default.aspx e sağ tıklayarak Set As Start Page(giriş sayfası yap) diyelim bu ayar sayesinde projemiz çalıştırıldığında Default.aspx i açacaktır. Sistemi test etmek için Ctrl+F5 e basalım evet bu kadar kolay bu zamana kadar bir kod yazmadık ve elimizde basit bir login var aslında biraz karmaşık anlattım ama tekrar edince kolay olduğu göze çarpıyor.

CreateUser kontrolü ile kullanıcı ekleme Projemizde kullanıcı eklemek için bir sayfa tanımlayalım bu sayede sürekli Asp.net Configuration a girmeye gerek kalmayacak. Uzun sürelerde oturup SQL cümlelerini yazmak yerine ve kullanıcının şifre kontrolü yerine otomatik tanımlama özellikleri gelmiş yani şifre için oturup basit mi değil mi diye bir ton kod yazmaya gerek kalmayacak.

  • Projeye sağ tıklayarak Add New Item dan Register.aspx web form’unu ekleyelim (Dikkat! MemberPages klasörüne değil Default.aspx in yanına eklememiz gerek). Sol alt taraftan Design(tasarım) görünümüne geçip içine CreateUser kontrolünü sürükleyelim sonra Özellikler panelinden ContinueDestinationPageUrl(girişten sonraki gidilecek sayfa) kısmına ~/Default.aspx yazalım ki kayıt işlemi tamamlanınca ana sayfaya gitsin. Sonra Toolbox dan bir HyperLink sürükleyelim (kullanıcılarımız kayıt olmadan ana sayfaya geri dönmek isterse) Text özelliğine “Ana Sayfa” yazalım NavigateUrl özelliğine ise ~/Default.aspx diyelim.
     
  • Bu kadar aslında yapmamız gereken tek şey kaldı Default.aspx e bir HyperLink ekleyip Text özelliğine “Kayıt” diyelim NavigateUrl kısmına ise ~/Register.aspx diyelim bu sayede kullanıcılarımız direk kayıt sayfasına gidecektir. Elimizde bir kullanıcı ekleme sayfası oldu. Sitemizi Ctrl+F5 ile test edelim.
Kullanıcılara dosyalara erişimi kısıtlama (Sadece kayıtlı üyelere kısıtlama)



Yaptığımız MemberPages klasörüne sağ tıklayrak Add New Item den Members.aspx i ekleyelim. Tasarım görünümden içine “Merhaba Üyeler” diye bir yazı ekleyelim ve Default.aspx e bir Hyperlink ekleyerek onun Text özelliğine “Üye Sayfası” NavigateUrl özelliğine ise ~/MemberPagers/Members.aspx yazalım. Önceden configurasyonda yaptığımız ayar sayesinde MemberPages klasörüne üye girişi yapmayan kimse giremez. Deneme yapalım Ctrl+F5 e basarak çalıştıralım ve giriş yapmadan Üye Sayfası linkine tıklayalım karşımıza Login.aspx çıkacaktır.

Uğraşacağınız kısım şifre bulmaktır :) ancak neyse bu kadar kolay olacağı kimin aklına gelirdi ki. Biraz daha ileride size kendi yaptığımız database e nasıl bu kontrolleri adapte edebileceğimizi anlatacağım. Bu doküman whidbey için hazırlanmış MSDN Help Library sinden alınmıştır oraya bakarsanız daha nice şeyler yapılabilirsiniz. Şifre geri isteme, şifre değiştirme ve daha fazlasını örnek dosyada bulabilirsiniz. İyi günlerle kalın…

Ali Hıdımoğlu
e-mail : [email protected]
Makale:
Asp.Net 2.0 Kullanıcı Yönetiminde Login Kontrollerinin Kullanımı ASP.NET Ali Hıdımoğlu
  • Yazılan Yorumlar
  • Yorum Yaz
NİS
16
2009
Selam Utku, Hata sen sunucun içerisinde sanal bir dizin yaratmadığın için oluşmuş. bunun için serverının yönetim paneline girip IIS sekmesindeki ayarlardan sanal klasör yaratma seçeneklerini deneyebilirsin. Sanırım dosyayı bir klasöre attın...
MAR
17
2009
güzel bi anlatım. teşekkürler tam anlatıldığı gibi yaptım extra bişey eklemedim. hosta attığım zaman. hata alıyorum. It is an error to use a section registered as allowDefinition=MachineToApplication beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS. system.web Line 14: authentication mode=Forms Line 15: customErrors mode=Off 4 saattir araştırıyorum.çözemedim.yardım edermisiniz.
ŞUB
25
2007
<membership>br <providers>br <clear>br <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="LocalSqlServer" requiresQuestionAndAnswer="false" requiresUniqueEmail="true" passwordFormat="Hashed" minRequiredNonalphanumericCharacters="0" minRequiredPasswordLength="3">br <providers>br <membership>
ŞUB
25
2007
Şifrede alfasayısal olmayan karakter olayını web.config dosyasından düzenleyebilirsiniz. Örneğin membership providers clear add name=AspNetSqlMembershipProvider type=System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a connectionStringName=LocalSqlServer requiresQuestionAndAnswer=false requiresUniqueEmail=true passwordFormat=Hashed minRequiredNonalphanumericCharacters=0 minRequiredPasswordLength=3 providers membership
EYL
29
2006
aspx de nasıl flash kullana bilirim?
AĞU
26
2006
web site adminsitrator tool ile bütün işlemleri yaptıktan sonra sıra creat user gldiğinde passwor yazıyoruz hata veriyor minimum 7 karekter olmalı alfa nümerik karekterler yazmayın diye bu bahsettiğiniz güçlü şifreyi nasıl yazıpta succesfuly e ulaşıcaz bunun başka bir yolu yokmudur.Yeni Hesabınız için Kaydolun Kullanıcı Adı: * Parola: * Parolayı Onayla: * E-posta: * Güvenlik Sorusu: * Güvenlik Yanıtı: * Parola ve Onay Parolası eşleşmelidir. Parola uzunluğu alt sınırı: 7. Gereken alfasayısal olmayan karakterler: 1.
AĞU
22
2006
Evet bunun bir yolu var bunun için provider (sağlayıcı) ayarlarına girmeniz gerekiyor bunu Asp.netde 2.0 da varsayılan sağlayıcıyı değiştirmek makalemde değindim fakat orda şifre çeşidi hakkında bir açıklamada bulunmamışım sanırım. Şöyle anlayatım kaç defa yanlış şifre giricek diye ayarlar gibi password uzunluğunu ve numerik mi alfanumerik mi olucak ayarlayabiliyorsunuz. bunun için bana bir mail atmanızı öneririm biraz araştırıcam bu konuyu.
AĞU
22
2006
web site adminsitrator tool ile bütün işlemleri yaptıktan sonra sıra creat user gldiğinde passwor yazıyoruz hata veriyor minimum 7 karekter olmalı alfa nümerik karekterler yazmayın diye bu bahsettiğiniz güçlü şifreyi nasıl yazıpta succesfuly e ulaşıcaz bunun başka bir yolu yokmudur.
MAY
12
2006
cevabınız tek size bır sorum daha olcak cevaplarsanız sevınırım şimdi aynı aspdekı gıbı admın bir alan acak ornegın onemlı lınkler dıye ve bu ansayfaya daha oncaden olusturulmus menuile birlikte gelmesnı ıstıyorum bnu hangı kodlarla yaparım bır ornegınız varmı şimdiden cok tesekkur edrım
MAY
5
2006
Bunu yapmak için HTML bir sayfaya nasıl flash ekleniyorsa aynı yolları izlemeni tavsiye ederim asp.net sayfanın Html görünümünde. Aynı şekilde bunun componentleri de var ama bunu araştırmadım eğer raslarsam size bildiririm.
MAY
5
2006
Merhaba Ben dancers c# 2005 uygulamalara yeni baslad1m bumakalenizi uygulamd1 sagolun benim bir sorum olacak daha önceden yapt1g1m bir siteyi c# yapacag1m ama cok flash kuland1m burdada flash eklmekte zorlan1yorum suzenki bir sekilde site www.aksumusluk.com yard1mc1 olursan1z sevinirim
Sayfalar : 1 
Yorum yazabilmek için üye girişi yapmalısınız. Üye girişi için tıklayın.
Üye değilseniz Üyel Ol linkine tıklayarak üyeliğinizi hemen başlatabilirisniz.
 
  • Bu Konuda Son 10
  • Eklenen Son 10
  • Bu Konuda Geçmiş 10
Bu Konuda Yazılmış Yazılmış 10 Makale Yükleniyor
Son Eklenen 10 Makale Yükleniyor
Bu Konuda Yazılmış Geçmiş Makaleler Yükleniyor