Beyaz.Net İpucu

Firefox ile IIS Windows Authentication Kullanımı

Merhaba,

    Bilindiği üzere IIS te Windows Authentication kullanıldığında Internet Explorer oturum açan kullanıcı bilgilerini IIS e göndermektedir ancak Firefox kullanıyorsanız güvenlik nedenleri ile varsayılan olarak Firefox kullanıcı bilgilerini sunucuya göndermez. Özellikle biz geliştiriciler için Firefox un sağladığı imkanlar inkar edilemez. Peki bu kadar güzel özellikleri olan Firefox u Windows Authentication etkin olan uygulamalarda nasıl kullanabiliriz?


    Evet Firefox ta yapacağımız bir ayar değişikliği ile bunu etkin hale getirebiliriz. Bu bilgiden sonra iki güvenlik kriteri gözümüzde canlanmalı.

  1. Yapacağımız ayar sadece belirttiğimiz domainlerde yada url de etkin olmalı
  2. Yaptığımız ayarlar development ortamında güvenli ancak son kullanıcıda bu işlemi yapmak riskli mi?

Birinci kriter ile devam edelim. Firefox ta Windows Authentication bilgilerini sunucuya göndermesini sağlamak için aşağıdaki adımlar izlenir.

  • Firefox ta adres satırına : about:config yazıp enter tuşuna basın. Bir güvenlik uyarısı çıkacaktır bu uyarıya evet deyip geçin.
  • Configuration ayarları açıldığında arama bölümüne network.automatic-ntlm-auth.trusted-uris yazmaya başladığınızda filtre uygulanacaktır.
  • Listelelen ayarlardan network.automatic-ntlm-auth.trusted-uris seçeneğine çift tıklayın.
  • Açılan pencereye Windows Authentication özelliğinin etkin olmasını istediğiniz domain yada url leri virgül (,) ile ayırarak yazın: Örn: localhost, 127.0.0.1, abc.com gibi. Domain belirtirken birden çok subdomain için verecekseniz sadece root url girmeniz yeterli.
  • Tamam diyerek pencereyi ve Firefox u kapatın tekrar açtığınızda özellik aktif olacaktır.

     İkinci kritere gelecek olursak bu ayarları development ortamında yapmak en azından bizim açımızdan güvenli ancak bu özelliği bu domaindeki tüm client lara uygulamak mantıklı bir çözüm müdür?. Bence bu kısım kullanıcı tarafından seçilebilir olmalı kullanıcı bir uygulamayı kullanırken Firefox için tekrar şifre girmeyi istemiyorsa bu ayarı etkinleştirmeli ancak bunu da kontrollü bir şekilde yapmalıdır.

- Peki bu kontrolü nasıl sağlayabiliriz?

- Burada benim önerim bir windows forms uygulaması ile bu ayar istenilen user tarafından atanabilmeli. Yazacağımız uygulama ise sadece belirli bir url yada domain için bu ayarları set etmeli. Yapacağımız bu uygulamayı da domaindeki herkes tarafından erişilebilecek bir lokasyonda barındırırsak ne ala.

Tamam windows uygulaması yapalım ama bu ayarlar nerede saklanır önce onu bilmek gerek. Bu konuyu da ikiye ayırmak gerekir kurulu olan Firefox yada Portable çalışabilen Firefox.

  1. Firefox ayarları prefs.js dosyasında saklanmaktadır. İşletim sistemlerine göre bu dosyanın yeri değişmektedir. Sisteme kurulu olan Firefox uygulamalı için :
    •  Windows XP de : \Documents and Settings\<kuıllanıcı adı>\Application Data\Mozilla\Firefox\Profiles\<profil ID si>.default\ 
    • Windows Vista ve Windows 7 de : \Users\<kullanıcı adı>\AppData\Roaming\Mozilla\Firefox\Profiles\<profil ID si>.default\
      dizinlerinde saklanır.
  2. Portable olarak kullanılanlarda ise : <FirefoxPortable Dizini>\Data\profile\ klasöründe saklanmaktadır.

Yazacağımız uygulama bu dosya üzende ilgili satırı bulup değiştirmelidir.

Peki bunu yapmanın başka bir yolu var mıdır diye düşünürseniz, başka alternatifler var yada düşünülebilir.

  1. Bir firefox eklentisi yazılabilir ki yazılmış zaten ama yine adresleri kullanıcının girmesi isteniyor. Ancak bu eklenti son kullanıcı için hedeflediğimiz portföye tam uymadı gibi. Manuel girecekse config den de bu ayarları yapabilir. O halde bu eklentiye kendi domainimizi ekleyip derlesek otomatik giriş yapılmasını sağlasak nasıl olur? Yapabiliriz sanırım biraz araştırmak lazım.
  2. Firefox kurulum dosyasını FirefoxSetup.exe yi editleyip yapabiliriz. Aşamalarını aşağıya ekliyorum. Fakat bizim hedefimiz de kurulu olan sistemler yok muydu? O halde bu seçenekte biraz uzak gibi.
    1. 7-zip programı ile Firefox Setup.exe dosyası extract edilir.
    2. Bu klasörde all.js aranarak bulunur tahminen "nonlocalized\greprefs" klasöründedir.
    3. Bu dosya notepad ile açılıp yukarıda anlattığım ilgili ayar yapılır. Kaydedip çıkılır.
    4. Daha sonra bu klasör ziplenir ve FirefoxSetup.zip ismi verilir.
    5. Kurulum yapacak kişiler zip ten açar ve setup.exe ile kurar böylece yeni kurulacak olanlara istediğimiz ayarlar ulaşır.
  3. Domaine bağlı tüm kullanıcılarda bu işlemi yapacak bir script çalıştırılabilir.

İyi Çalışmalar...

Kategorideki Güncel Makaleler