WordPress MultiSite Active Directory entegrasyonu ve site gizliliği


19

Kuruluma genel bakış:

  • Çok sayıda WordPress 3.4.2 yüklemesine sahibim.
  • Kullanıcıların AD kimlik bilgilerini kullanmalarına izin vermek için Active Directory Kimlik Doğrulama Entegrasyonu eklentisini yükledim . Bu aynı zamanda her bir siteye AD grupları atamaya izin verir, böylece site yöneticileri manuel olarak izin atamak zorunda kalmaz.
  • Ağ Gizliliği eklentisini yükledim , böylece herhangi bir içeriği görebilmeniz için belirli sitelerin oturum açmış olması gerekir. Anonim kullanıcılar yalnızca giriş sayfasını görür.

Birçok açıdan, bu kurulum çalışır. Ancak, bu birincil WordPress çok site yüklememize yayılmamı durduran bir sorun yaşıyorum:

  • Bob, AD'deki "BT Desteği" grubunun bir üyesidir.
  • Bob ayrıca AD'deki "Etki Alanı Kullanıcıları" grubunun bir üyesidir.
  • Ana site (www.mysite.com) yalnızca " Domain Users" üyelerinin giriş yapmasına izin vermek için kilitlendi .
  • Alt site (www.mysite.com/itsupport) yalnızca " IT Support" üyelerinin giriş yapmasına izin vermek için kilitlendi .
  • Bob www.mysite.com adresini ziyaret eder ve kimlik doğrulaması istenir. AD kimlik bilgilerini girer ve siteye girmesine izin verilir.
  • Artık www.mysite.com'da oturum açtığına göre, Bob www.mysite.com/itsupport adresine gitmek için bağlantıyı tıklatır ve sitenin üyesi olmadığı konusunda bir hata alır.
    • Bu alt site için WordPress veritabanında herhangi bir kullanıcı girişi oluşturulmamış gibi görünüyor.
  • Bob www.mysite.com adresinden çıkış yapar.
  • Artık oturumu kapattığına göre, Bob doğrudan www.mysite.com/itsupport adresine gider ve kimlik doğrulaması istenir. AD kimlik bilgilerini girer ve siteye girmesine izin verilir.
    • WordPress veritabanındaki kullanıcı girdisinin bu alt site için bu noktada oluşturulduğu görülmektedir.
  • Şimdi oturumu kapatır ve www.mysite.com'da oturum açarsa, destek sitesine herhangi bir sorun yaşamadan geçebilir.

Bob'un her iki site için kullanıcı girişlerini silip Ağ Gizliliği eklentisini devre dışı bırakırsam, Bob www.mysite.com'da oturum açabilir ve ardından destek sitesine geçebilir. Ancak kullanıcı girişlerini silip Ağ Gizliliği eklentisini yeniden etkinleştirirsem sorun yeniden ortaya çıkar.

Başka bir gizlilik eklentisi ile aynı sorunu vardı, ama hangisini hatırlayamıyorum.

Sorunu tespit edebiliyorsanız veya benzer bir şey ayarladıysanız, AD gruplarını kullanma ve belirli siteleri kilitleyebilme temel ölçütlerini karşıladığım sürece herhangi bir şeyi denemeye hazırım.


Bir eklenti / kenar kullanımı vaka çakışması gibi geliyor. Eklenti geliştiricisine harici kullanıcı veritabanlarını destekleyip desteklemediğini kontrol ettiniz mi?
Damien

Damien - Her iki eklenti için forumlarda destek öğeleri kaydettim. Sadece daha önce benzer bir şeyle uğraşmış olanların beyinlerini seçip seçemeyeceğimi görüyorum. Gizlilik eklentisinin harici kullanıcı veritabanları hakkında gerçekten bilmesi gerektiğine inanmıyorum, sadece AD ​​eklentisinin işini yapmasına ve kullanıcıyı dahili WordPress veritabanına eklemesine izin vermesi gerekiyor. Ne yazık ki, gizlilik eklentisi bunu engelliyor gibi görünüyor.
Phil Erb

2
Bununla nasıl başa çıktınız? Okul için benzer bir uygulamayı araştırıyorum.
orionrush

1
Neredeyse AD gibi sadece o site için atanan grubu geri veriyormuş gibi geliyor - "Hey, bu BT sitesi, bu yüzden sadece giriş yapan hesabın IT grubu olduğunu doğrulayacağım ve diğer gruplar. " Belki de AD'nin bir kullanıcının ait olduğu tüm grupları hatırlamasını sağlamanın bir yolu olup olmadığına bakın .
phatskat

1
4 yaşındaki bir soru Cevapsız'ın en tepesinde nasıl olabilir? Bağlanan her iki eklenti de kullanımdan kaldırıldığı için bu artık geçerli değil.
Athoxx

Yanıtlar:


1

Farklı bir yaklaşım deneyin. Eklentileri kullanmak yerine, aşağıdaki cevapta açıklandığı gibi wordpress'i biraz değiştirmenizi öneririm.

/programming//a/39195424/3157038

Yani sizin durumunuzda wordpress kurulumlarını şu şekilde kurmalısınız:

  • mysite.com
    • root: * / domainler / sitem.com / public_html
    • db: kullanıcı_sitemi
    • tablo öneki: root_
  • mysite.com/itsupport
    • root: * / etki alanları / sitem.com / public_html / itsupport
    • db: kullanıcı_sitemi
    • tablo öneki: itsupport_

bağlandığım yanıtta verilen yapılandırmaya ek olarak, her iki wordpress kurulumunun wp-config dosyalarına aşağıdakileri ekleyin:

define( 'CUSTOM_USER_TABLE', 'mysite_users );
define( 'CUSTOM_USER_META_TABLE', 'mysite_usermeta' );

0

Çok siteli bir yüklemeniz varsa, BT Teknik Destek sitenizi bir alt alana geçirmeniz gerekir.

Muhtemelen bir çerez giriş uyuşmazlığı yaşıyorsunuz. Alan adının kök dizininde ayarlandığından, her iki site için de aynıdır. Bu nedenle support.example.com'u ayarlarsanız, example.com/support adresinden daha net olmalıdır

Tamamen yanlış anlamadığım sürece, bu durumda içeriği kullanıcıyla sınırlamak için farklı bir eklenti deneyin ve bunu bir alt site olarak çalıştırmayın.

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.