• 27-12-2019, 16:03:43
    #1
    Üyeliği durduruldu
    merhaba arkadaşlar ne kadar cevap verecek bir arkadaşın olmadığını bilsem de bir ümit konuyu açayım dedim. ben bir web sitesi yapıyorum .net üzerinde login işlemini vs yapabildim ama bu authentication mevzusunu bir türlü yapamadım mesela sahibindene giriş yaptığımızda yine aynı ana sayfa açılıyor ama sağ üstte giriş yap butonu olmuyor üyenin bilgileri vs geliyor bu mevzu authenticationdan oluyormuş yardım edebilecek bir abim/kardeşim varsa çok mutlu olurum. iyi forumlar
  • 27-12-2019, 16:06:28
    #2
    Session, Cookie bu kavramları araştırdınız mı hocam
  • 27-12-2019, 16:07:17
    #3
    Soruyu tam anlamadım ama muhtemelen session kullanımını arıyorsun hocam. O konuya bir bakmanı öneririm.
  • 27-12-2019, 16:07:41
    #4
    Bana ulaş sana akşam 15 dakika eğitim vereyim dostum. Çok kolay olduğunu göreceksin.

    Not: Login işlemlerinde session kullanmak yanlış bir yol.
  • 27-12-2019, 16:09:50
    #5
    Selam, mantık şöyle işliyor araştırıp kendin yapabilirsin bence Eğer giriş yapıldıysa kullanıcı adını bir session oluştur (ipucu: Session.Add("k_adi", kullaniciadi --- Ya da Session["k_adi"]=kullaniciadi).

    Header, giriş yap butonu gözüken yerde ya da nerede istersen session var mı diye kontrol ettir [İpucu: if(Session["k_adi"]==NULL){ Giriş yap gözüksün } else { } ]. Kolay gelsin
  • 27-12-2019, 16:12:56
    #6
    Üyeliği durduruldu
    Blacksheep adlı üyeden alıntı: mesajı görüntüle
    Session, Cookie bu kavramları araştırdınız mı hocam
    Powere78 adlı üyeden alıntı: mesajı görüntüle
    Soruyu tam anlamadım ama muhtemelen session kullanımını arıyorsun hocam. O konuya bir bakmanı öneririm.
    alikarakoc93 adlı üyeden alıntı: mesajı görüntüle
    Bana ulaş sana akşam 15 dakika eğitim vereyim dostum. Çok kolay olduğunu göreceksin.

    Not: Login işlemlerinde session kullanmak yanlış bir yol.
    mertkilic0111 adlı üyeden alıntı: mesajı görüntüle
    Selam, mantık şöyle işliyor araştırıp kendin yapabilirsin bence Eğer giriş yapıldıysa kullanıcı adını bir session oluştur (ipucu: Session.Add("k_adi", kullaniciadi --- Ya da Session["k_adi"]=kullaniciadi).

    Header, giriş yap butonu gözüken yerde ya da nerede istersen session var mı diye kontrol ettir [İpucu: if(Session["k_adi"]==NULL){ Giriş yap gözüksün } else { } ]. Kolay gelsin
    arkadaşlar teşekkür ederim dediklerinize bakacağım şimdi çok teşekkür ediyorum sizlere.
  • 27-12-2019, 16:21:59
    #7
    Kimlik doğrulama veya yönetimden onay bekliyor.
    alikarakoc93 adlı üyeden alıntı: mesajı görüntüle
    Bana ulaş sana akşam 15 dakika eğitim vereyim dostum. Çok kolay olduğunu göreceksin.

    Not: Login işlemlerinde session kullanmak yanlış bir yol.
    Session kullanmak nasıl yanlış bir yol çok merak ediyorum?
  • 27-12-2019, 16:22:17
    #8
    Merhaba, Authentication üye girişi/rol yetkilendirme gibi işlemleri yapmanızı sağlar. Genellikle custom authentication kullanılır. Kimse standart şablondaki fonksiyonları doldurmakla uğraşmıyor
    Çok basit olarak şöyle anlatayım;
    WebConfig dosyasında <system.Web> etiketinin içine;
    <authentication mode="Forms">
    <forms loginUrl="~/Login/" timeout="4800" /> //burada ~/Login yazan kısım, kullanıcının üye girişi yapacağı adresi belirtir.
    </authentication>
    Üye girişi yaptırdığınız controller dosyasında;
    public ActionResult Giris(){
    //... üye girişi doğrulamaları
    if(true)//kullanıcı bilgileri doğruysa
    FormsAuthentication.SetAuthCookie("kullanıcı adı", "beni hatırla");//Kullanıcı adını cookie olarak set etti.
    }
    else{
    //kullanıcı bilgileri hatalı.
    }
    View dosyası:
    @{
    if( HttpContext.User.Identity.IsAuthenticated){//kullanıcı giriş yaptıysa
    string userName = HttpContext.User.Identity.IsAuthenticated.Name; //Giriş yapılan kullanıcı adı.
    }
    Çıkış yapması için;
    public ActionResult Giris(){
    
    FormsAuthentication.SignOut();// çıkış yapıldı.
    Peki hangi sayfaya üye olanlar girebilir? Bunu nasıl zorunlu hale getirebiliriz? Ya da tam tersi kullanıcı girişi zorunlu olmayan sayfaları nasıl belirleyebiliriz?
    Bunun çözümü basit, Authentication yapısının kullandığı bir Attribute var. Controller bazlı, fonksiyon bazlı ya da genel olarak erişim ayarlaması yapabiliriz.
    Controller bazlı bir örnek yapalım:
    [Authorize] //Bu kontroller'a yapılan tüm başvurularda, kullanıcının üye girişi yapmış olması gerekir.
       public class HomeController : Controller
    {
    }
    [AllowAnonymous] //Bu kontroller'a yapılan başvurularda üye girişi yapılmış olması gerekmemektedir. Erişime açıktır.
    public class BlogController:Controller
    {
    }

    Yukarıdaki örneği kendi projenize uyarlarsanız, diğer (Session vb.)işlemlerle uğraşmanıza gerek kalmaz.

    İyi forumlar...
  • 27-12-2019, 16:41:36
    #9
    Üyeliği durduruldu
    umutulukurt adlı üyeden alıntı: mesajı görüntüle
    Merhaba, Authentication üye girişi/rol yetkilendirme gibi işlemleri yapmanızı sağlar. Genellikle custom authentication kullanılır. Kimse standart şablondaki fonksiyonları doldurmakla uğraşmıyor
    Çok basit olarak şöyle anlatayım;
    WebConfig dosyasında <system.Web> etiketinin içine;
    <authentication mode="Forms">
    <forms loginUrl="~/Login/" timeout="4800" /> //burada ~/Login yazan kısım, kullanıcının üye girişi yapacağı adresi belirtir.
    </authentication>
    Üye girişi yaptırdığınız controller dosyasında;
    public ActionResult Giris(){
    //... üye girişi doğrulamaları
    if(true)//kullanıcı bilgileri doğruysa
    FormsAuthentication.SetAuthCookie("kullanıcı adı", "beni hatırla");//Kullanıcı adını cookie olarak set etti.
    }
    else{
    //kullanıcı bilgileri hatalı.
    }
    View dosyası:
    @{
    if( HttpContext.User.Identity.IsAuthenticated){//kullanıcı giriş yaptıysa
    string userName = HttpContext.User.Identity.IsAuthenticated.Name; //Giriş yapılan kullanıcı adı.
    }
    Çıkış yapması için;
    public ActionResult Giris(){
    
    FormsAuthentication.SignOut();// çıkış yapıldı.
    Peki hangi sayfaya üye olanlar girebilir? Bunu nasıl zorunlu hale getirebiliriz? Ya da tam tersi kullanıcı girişi zorunlu olmayan sayfaları nasıl belirleyebiliriz?
    Bunun çözümü basit, Authentication yapısının kullandığı bir Attribute var. Controller bazlı, fonksiyon bazlı ya da genel olarak erişim ayarlaması yapabiliriz.
    Controller bazlı bir örnek yapalım:
    [Authorize] //Bu kontroller'a yapılan tüm başvurularda, kullanıcının üye girişi yapmış olması gerekir.
       public class HomeController : Controller
    {
    }
    [AllowAnonymous] //Bu kontroller'a yapılan başvurularda üye girişi yapılmış olması gerekmemektedir. Erişime açıktır.
    public class BlogController:Controller
    {
    }
    Yukarıdaki örneği kendi projenize uyarlarsanız, diğer (Session vb.)işlemlerle uğraşmanıza gerek kalmaz.

    İyi forumlar...
    hocam çok teşekkür ederim.