Kullanıcı girişi için URL nedir (aka Giriş formunu nasıl gizleyebilirim?)


10

Ziyaretçilerin web siteme kaydolmasına izin vermek istemiyorum; ancak test amacıyla tek bir kayıtlı kullanıcıya ihtiyacım olduğunu düşünüyorum. Örneğin, test kullanıcımın makalenin siteye nasıl göründüğünü genel olarak herkese "kirli çamaşırları havalandırmadan" nasıl görebildiğini görebilmesi için sınırlı erişime sahip bir makale yayınlayacağım (tamam, gerçekte ziyaret eden tüm 1 / gün ...) .

Şu anki sorunum, kullanıcı giriş formunu yayınlamak / yayından kaldırmak zorunda olduğum için web sitesini tahrif etmem. Şu anda, geçici bir ziyaretçinin hemen görememesi için giriş formunu bir alt kategoride gizleyerek bu sorunu 'atlatıyorum'. Test kullanıcımın kısıtlı olarak işaretlenmiş içeriği herkese açık erişimi olan bir misafirin görmesini değiştirmeden görüntülemesini sağlayacak alternatif bir yöntem (ör. Özel bir URL) oluşturmak mümkün müdür?

Yanıtlar:


8

Yayınlanmayan bir menü oluşturabilir ve oradaki kullanıcı giriş sayfasına bir bağlantı koyabilir ve diğer adı istediğiniz gibi adlandırabilirsiniz. Kullanıcı yöneticisi seçeneklerinde kayıtlara izin ver işlevini kapattığınız sürece iyi olmanız gerekir.

Ardından müşterinize URL'yi verin.

Yani adımlar:

  1. Yeni bir menü oluşturun, Gizli olarak adlandırın
  2. Yeni menünün bir modülünü yayınlama
  3. Yeni bir menü öğesi ekleyin, Kullanıcı Yöneticisi'ni ve Giriş formunu seçin
  4. Oturum açma ya da başka bir şey olduğunu bilmeniz için bir menü öğesi başlığı, ancak takma adı birisinin tahmin edemeyeceği bir şeyle değiştirin.
  5. Siteniz.com/aliasname adresine giderek formunuzu test edin

10

Brian Peat'in cevabının bir uzantısı olarak:

URL'ye giderseniz

domain.com/index.php?option=com_users&view=login

bir menü öğesi ayarına veya herhangi bir yayınlama / yayından kaldırma sorununa sahip olmadan giriş yapabilirsiniz. Bu, URL yapısını biliyorsanız, hala kayıt / giriş yapabileceğiniz Joomla'da bir sorun olarak biraz adlandırılabilir. Bunu önlemek için kurallar vardır, ancak genellikle varsayılan olarak, gitmeniz gereken yere ulaşmak için bunun gibi doğrudan yolları kullanabilirsiniz.

http://www.joomla.org/index.php?option=com_users&view=login

İşte işte, girişe doğrudan erişimi olmayan ana Joomla sitesine bile böyle erişilebilir.

Demek istediğim, uygun ACL'yi de kullandığınızdan emin olun, eğer onun "sadece" kayıtlı kullanıcıları o zaman Joomla'nın yapısını bilen herkes içeri girebilir. Ayrıca Brian'ın söylediği gibi kayıtlara izin verdiğinizden emin olun.


/İndex.php?option=com_users&view=logout için benzer bir URL var mı (sezgisel olduğunu düşündüm, ancak yanlış olduğu ortaya çıktı)?
bobthechemist

Otomatik çıkış mı demek istiyorsun? Biraz garip, joomla'daki çıkış bazı yazı verileri gerektiriyor, dolayısıyla form / düğme. Bu bağlantı sizi temel olarak bir düğmeye götürür.
Jordan Ramstad

İnsanların bu sayfaya girmesinden gerçekten endişeleniyorsanız, kullanıcıyı url'nin bir parçası olarak bir jeton kullanmaya zorlayan süslü bir eklenti yükleyebilirsiniz (Yönetici için bir tane olduğunu biliyorum, ön tarafta bir tane olduğundan eminim end) ... ancak şunu da yükleyebilirsiniz: extensions.joomla.org/extensions/access-a-security/… . kullanıcı giriş yapmaya çalışırsa IP'leri engelleyen 10 kez oturum açar. Ayrıca sizi bilgilendirir. Sitenize ne sıklıkla saldırıya uğradığını gözünüze açacaktır. Tüm denemelerin% 100'ünün de kullanıcı adı olarak "admin" kullandığını fark ettim.
Brian Peat

Sadece menü öğeleri olmadan bile giriş / kayıt hala erişilebilir olduğunu söylemek uzatmak istedim. Bu nedenle, bir menü öğesiyle uğraşmak zorunda kalmadan giriş yapmanız gerekiyorsa, aynı zamanda herkesin bunu yapabileceği anlamına gelir. Eğer kayıt kilitli değilse, o zaman herkes bir hesap oluşturabilir ve herhangi bir "gizli" sayfaya erişebilir. Bu, fazladan bir ACL grubu oluşturarak ve gruba erişebilen kullanıcıyı bu grupta yaparak yapılabilir. Söz konusu sayfa bu grubu da gerektirecektir.
Jordan Ramstad

Henüz giriş yapmadıysanız ACL'ler ne işe yarar. Özel bir eklenti olmadan herkese açık bir giriş sayfasını gizleyemeyeceğinizi düşünüyorum. Ne olursa olsun, kaba kuvvet saldırıları hariç, eğer bir girişiniz yoksa çok uzağa gidemezsiniz. Bu kadar çok uğraşmanın kullanımını görmüyorum.
Brian Peat

4

Ön uç giriş formunun düzenini geçersiz kılarak bunu başarabilmelisiniz. Düzen dosyasının üst kısmına biraz PHP kodu ekleyin. Bu eklenen kod, URL'deki özel bir parametreyi ve belirli bir değeri kontrol eder. Birisi giriş sayfasına herhangi bir URL yoluyla erişmeye çalışırsa, ancak özel parametreyi ve belirli değeri ( abc = xyz gibi ) içermiyorsa , kod bir "return;" böylece formun düzeni görüntülenmek üzere işlenmeyecektir.

Bu kod geçersiz kılınan mizanpaj dosyasındayken, yalnızca URL'yi bilen bir kullanıcı (bu özel parametreyi ve kabul edilebilir bir değeri içerir) bu giriş formunu kullanabilir.

Örneğin: Gizli URL,

mydomain.com/?option=com_users&view=login&abc=xyz

Ardından, bu formu giriş formu için geçersiz kılınan düzen dosyasının üstüne yakın bir yere ekleyin:

if(JFactory::getApplication()->input->get('abc')!='xyz'){
    return;
}

İyi fikir! Bu, görünümü devre dışı bırakmak için oldukça kolay bir çözümdür. Gerekirse modüle genişletilebilir (modülün erişmek için doğrudan bir URL'si olmamasına rağmen).
Jordan Ramstad

3

Sıklıkla benzer bir sorunla karşılaştım, çünkü bir giriş formuna ihtiyaç duymadan yönettiğim web sitelerini düzenlemek için sık sık bir ön uç girişi istiyorum. Tarayıcı araç çubuğuma eklediğim küçük bir yer işareti oluşturdum. Yer işareti yalnızca benim (veya kodu kopyaladığım herkes) kullanabildiğinden, bu çok "yerel" bir çözümdür, ancak HERHANGİ BİR Joomla sitesinde çalışır ve inanılmaz bir zaman tasarrufu sağlar, sadece bağlantıyı ve giriş formunu tıklayın gösterilecek (tabii ki bir Joomla sitesinde olmanız şartıyla ...).

 javascript:void((function(){var loc = location.href; loc.indexOf("?") == -1 ? (location.href = loc+"?option=com_users&view=login") : (location.href = loc+"&option=com_users&view=login");})());
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.