Sistem Yapılandırma ve Güvenlik Ayarları
Yapılandırma ayarları GEODI.exe ile aynı dizinde SystemSettings.json dosyası oluşturularak düzenlenebilir. SystemSettings.ReadMe.txt dosyası içindeki örnek en sık ihtiyaç duyulan bir kaç ayarı içerir.
GEODI varsayılanda farklı sitelerden restapi çağrılarına izin vermez. SystemSettings.json ile izin verilecek siteler belirlenebilir.
Json içeriğinde açıklama satırı, remli ifade bulunmamalıdır.
Ayar dosyası bir defa okunur. Ayarlar değiştirildiğinde GEODI.exe veya IIS üzerinde kullanımda Pool yeniden başlatılmalıdır.
GEODI.exe yerine IIS benzeri bir Web server kullanımı durumunda WebServer kategorisindeki özellikler kullanılmaz. WebServerSecurity ayarları kullanılmaya devam edilir.
Ayarlar
Ayar Adı | Tipi | Varsayılan Değer | Kategori | Versiyon | Açıklama |
---|---|---|---|---|---|
AppDataFolder | string | null | System | Uygulamanın Proje, Log, Varsayılan Index , Sözlükler ve Tüm meta veriler için kullanacağı yoldur. null ve boş değerler için AppData konumu kullanılır. IIS altında kullanımda GEODI.exe ve GEODI için ortak yol belirtilebilir. %App% uygulama klasörünü gösterir. System.Environment.SpecialFolder değerleri %% içerisinde path tanımında kullanılabilir.
{
"AppDataFolder":"C:\\GeodiDataFolder"
} | |
AppPort | int | 3323 | WebServer | GEODI.exe üzerinden başlatılan WebServer tarafından kullanılacak portu belirlemekte kullanılır.
"Port" anahtarı exe parametresi olarak kullanılabilir. | |
AppIP | string | null | WebServer | 7.0.1.25977+ | exe üzerinden başlatılan WebServertarafından dinlenecek IP adresini belirlemekte kullanılır. Varsayılanda Server tüm IP adresleri üzerinden yayın yapar. "IP" anahtarı exe parametresi olarak kullanılabilir. |
ModuleStoreFolder | string | null | System |
| Otomatik offline modül güncelenmesi için kullanılacak dizin. Verilmediği zaman DECE-STORE adresi geçerlidir. |
SocketReceiveTimeout | int | -1 | WebServer | Milisaniye cinsinden uygulama için varsayılan bağlantı zaman aşımı süresidir. Varsayılan değeri -1 (otomatik) dir. | |
SocketHeaderReceiveTimeout | int | -1 | WebServer | Milisaniye cinsinden uygulama için varsayılan HTTP ön bilgi okuma zaman aşımı süresidir. Varsayılan değeri -1 (otomatik) dir. | |
TrustedRefererSiteList | string[] | null | WebServerSecurity | Sisteme link verilmesi, Iframe kullanımı ve Rest api erişimi için güvenilecek siteleri belirlemekte kullanılır. * Kabul eder. Standart tarayıcılar üzerinden yapılacak kullanıcıları yanıltma amaçlı istekleri önlemeyi hedefler. Varsayılanda tüm sitelere izin verilir. | |
TrustedOriginSiteList | string[] | null | WebServerSecurity | POST Data, Iframe kullanımı ve Rest api erişimi için güvenilecek siteleri belirlemekte kullanılır. * Kabul eder. Standart tarayıcılar üzerinden yapılacak kullanıcıları yanıltma amaçlı istekleri önlemeyi hedefler. Varsayılanda hiç bir siteye izin verilmez. {
"TrustedOriginSiteList":["*"]
"ServerNames": ["localhost","127.0.0.1","www.myserver.com","myserver.com"]
} | |
TrustedOriginUICheck | bool | true | WebServerSecurity | 7.0.1.26096+ | false ise sadece rest api istekleri için origin ve token erişim kontrolü yapılır. true ise gui/public/ klasörü dışındaki hiç bir içerik TrustedOriginSiteList listesinde olmayan ve token ile erişmeyen sitelere sunulmaz. |
DisableCSRFSecurity | bool | false | WebServerSecurity | Webserver için Özel ek güvenlik ayarlarını devre dışı bırakmakta kullanılır. Standart tarayıcılar üzerinden yapılacak kullanıcıları yanıltma amaçlı istekleri önlemeyi hedefler. Kapatılması düşük miktarda (%0.01<) performans artışı sağlar. Ayarın kapatılmaması önerilir. | |
XSSSecurityMode | int | 0 | WebServerSecurity | 8.0.0.27386+ | Gelen istekteki form ve querystring değerlerindeki html içerikler için davranışı ayarlamakta kullanılır. Bir HttpHeader eklemez. Headerları ayarlamak için HttpHeaders ayarı kullanılmalıdır.
|
HttpHeaders | string[] | null | WebServerSecurity | HTTP_HEADER:VALUE formatı ile istemciye gönderilecek header bilgilerinin tanımlanmasını sağlar. Api kullanımına göre tarayıcı taraflı güvenlik ayarlarını yapılandırmakta kullanılabilir. ( https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers#Security ) ÖrnekHttpHeaders: [
"X-XSS-Protection:1",
"X-Content-Type-Options: nosniff",
] | |
ShowWebExceptionStackTrace | bool | false | WebServerSecurity | Oluşacak Web istek hatalarında hata detaylarının görüntülenmesini sağlar. Varsayılanda detaylar görüntülenmez. | |
LogExceptionStackTrace | bool | false | System | Tarama ve Sistem başlatma hatalarına ek ait detayların loglanmasını sağlar. | |
ServerNames | string[] | null | WebServerSecurity | GEODI.exe üzerinden başlatılan WebServer'a ait sunucu adı bilgisidir. Ayar tanımlandığında subdomain kullanımı engellendir. servername myserver olarak belirlendiğinde sub.myserver istekleri kabul edilmez. | |
EnableUrlSession | bool | false | WebServerSecurity | Ayar açık ise Url üzerinden Session transferine izin verilir. Kullanılması önerilmeyen bir yapılandırma ayarıdır. | |
TileExpandPercent | double | 20.0 | WMSServer | WMS Serve rüzerinde etiketler için kullanılan varsayılan karo büyütme oranıdır. | |
VerisonExtenderText | string | null | System | Tarayıcıya gidecek içerikler için belirlenen versiyon kodunu değiştirmekte kullanılır. Tema hazırlarken tarayıcı cache'i sıfırlamakta kullanılabilir. | |
UseDefaultCredential | bool | true | System | WebSitesi tarama gibi uzak bağlantılarda sistem Proxy ayarlarını kullanmaya zorlar. | |
ServerUri | string | null | Notification | E-posta gibi arka plan hizmetlerinde belirlenecek linklerde kullanılacak web adresini belirlemekte kullanılır. | |
AutoIndexUpdateAndRecovery | bool | false | System | 7.0.1.26858+ | Servis veya IIS altından kullanımda bu ayara ihtiyaç duyulmaz. Elektirik kesintisi, disk arızası gibi durumlarda hatalı girdileri onay almadan otomatik düzeltir. Elektirik kesintisi, disk arızası gibi durumlarda hatalı girdileri onay almadan otomatik düzeltir. |
IgnoreSystemAdminContentAccessPrivileges | bool | false | WebServerSecurity | 8.0.027625+ | true olarak ayarlanırsa “Sistem Yöneticisi” yetkisi için içerikleri görme, açma, indirme ayrıcalıkları iptal edilir. Bu yetenekler için “Sistem Yöneticisi” de olunsa yetki verilmiş olması beklenir. GEODI uygulaması üzerinde Settings.SystemAdminMode ile proje bazlı yönetilebilir. |
DisableBasicAuthentication | bool | false | WebServerSecurity | Basic Authentication desteğini kapatır. GEODI üzerindeki tüm Authentication hizmetleri otomatik deneme saldırılarına karşı koruma altındadır. | |
SecurityProtocolForRequest | int | 3120 | System | 7.0.1.26674+
| Farklı sunuculara yapılacak http çağrılarında kullanılacak güvenlik protokolünü ayarlamakta kullanılır.
3120= TLS1.2 + SSL 3 |
SecurityProtocolForResponse | int | 16368 | WebServerSecurity | 7.0.1.26766+
| Bu dokümandaki SSL ayarları yapılmışsa hangi güvenlik protokollerinin destekleneceğini ayarlamakta kullanılır.
16368 = TLS 1.0 + TLS 1.1 + TLS1.2 + TLS 1.3 + SSL 3 ( Eski istemcileri de destekleyen, kapsayıcı değer ) 15408 = TLS1.2 + TLS 1.3 + SSL 3 ( İstemcileri güvenli iletişime zorlayıcı değer ) |
SSLLocalCertificateSerial | string | null | WebServer | 6.1.0.24659+ | Computer Certifcates/Personal altında yüklü geçerli bir sertifika ile SSL aktifleştirmekte kullanılır. SSLCertificate ile sertifika dosyası belirtmeye alternatif bir yöntemdir. Özel bir durum yoksa ssl tanımı için bu yöntem tercih edilmelidir. Bu yöntemle password belirtme ihtiyacı da yoktur. Windows'ta sertifikalar bölümünde sertifikaya çift tıklandığında açılan pencerede Details→Serial number bölümünden bu değer bulunabilir. SSL sertifika temini için CSR ihtiyacı varsa https://csrgenerator.com/ veya https://www.digicert.com/easy-csr/openssl.htm sayfalarından yararlanılabilir, Veya IIS üzerinden alıp daha sonra IIS'i durdurabilirsiniz. ( Geodi IIS üzerinden çalıştırılıyorsa bu ayar kullanılmaz. IIS üzerindeki tanımlar kullanılır. )
|
SSLCertificate | string | null | WebServer | SSL Sertifika dosyasının konumunu belirtmekte kullanılır. Tanımlanmışsa GEODI.exe sadece https isteklerine dönüş yapar. cer, p7b ve pfx uzantılı dosyaları destekler. Özel bir durum yoksa bu yöntem kullanılmamalı, SSLLocalCertificateSerial ayarı tercih edilmelidir.
| |
SSLCertificatePass | string | null | WebServer | Varsa SSL Sertifika dosyasına ait şifreyi belirtmekte kullanılır. Açık text veya GEODI araçları ile taşınamaz kripto kullanılabilir. Özel bir durum yoksa bu yöntem kullanılmamalı, SSLLocalCertificateSerial ayarı tercih edilmelidir. | |
SSLErrorLog | bool | false | WebServer | 6.1.0.24659+ | true yapılırsa tüm SSL doğrulama hatalarını loglar |
NoSSLPort | int | 0 | WebServer | 6.1.0.21550+ | SSL ayarlanmış ise 0 değerinden farklı bir port belirlenirse bu prottan http hizmeti de verilir. |
ForceHttpsRedirect | bool | false | WebServer | 6.1.0.21550+ | NoSSLPort ayarlanmış ise tüm http isteklerinin https adrese yönlendirilmesini sağlar. |
AutoForwardedURL | string | null | WebServer | 6.1.0.23511+ | "X-Forwarded-For" bilgisi içeren bir yönlendirme Header bilgisi alındığında kullanılacak sunucu adresini belirlemekte kullanılır. Sızma gücenlik önlemleri bu tür yönlendirmelerin çalışmasına engel olacaktır. DMZ Proxy, IIS Rewrite Proxy kullanılarak ağlar arası veya port yönlendirmesi yapıacaksa
Örnek : "AutoForwardedURL" anahtarı exe parametresi olarak kullanılabilir. |
SystemTray | bool | true | WindowsGUI | 5.3.0.16891+ | true değeri verilirse Geodi.exe solda açılmak yerine Windows Bildirim Alanında ikon olarak açılır. Windows form arayüzleri sunmaz. Sağ tuş ile sunduğu menüler aracılığı ile yönetmenizi sağlar. false değeri verilirse Geodi.exe sol tarafa yerleşir. false ayarı IE9+ gerektirir. |
Theme | string | Square | GUI | 6.0.0.18338+ | Varsayılan Tema ayarıdır GUI/Theme altındaki klasör isimleri kullanılabilir |
Language | string | Kurulum Dili | System | 6.0.0.18398+ | Varsayılan dil ayarıdır. Dil kodu yazılmalıdır. Ayarlanmazsa kurulum dili kullanılır. "Language" anahtarı exe parametresi olarak kullanılabilir. |
LogMode | int | 0 | System | 6.1.0.21152+ | Loglanacak bilgileri belirlemekte kullanılır. Varsayılanda loglama yapılmaz. Flag tipindedir, değerleri toplayarak uygulayabilirsiniz. Loglar Appdata/Logs/[APP]/DebugLog altında saklanır.
|
SessionTimeout | int | 120 | System | 6.1.0.21152+ | Sisteme giriş yapan kullanıcının sistemi kullanmadığında atılma süresini dakika cinsinden belirler. |
DefaultWS | string | Bilgisayarım | System | 6.1.0.25423+ | ilk defa GEODI ES/DA arayüzü açan kullanıcılar için varsayılan proje adıdır. Url wsName içermiyorsa veya kullanıcı için hatırlanan bir proje yoksa kullanılır. |
LoginProviders | string[] | null | System | 7.0.0.25611 | Sisteme giriş yapılabilecek LoginProvider tanımlarını sınırlamakta kullanılır. Varsayılanda tanınan tüm sağlayıcılar ile giriş yapılabilir. Örnek : ["LDAP"] yazılırsa Geodi kullanıcıları ile giriş yapılamaz. Sadece LDAP kullanıcıları ile giriş yapılabilir. |
AllowLDAPEveryoneUser | bool | true | System | 7.0.1.26017+ | Ayar true ise S-1-1-0 everyone gurubu için verilen yetkilerin kullanılmasına izin verilir. Ayarı değiştirmek yeniden tarama gerektirmez. |
AllowLDAPBuiltInUsers | bool | false | System | 7.0.1.26017+ | Ayar true ise AuthenticatedUsers, Administrators gibi BuiltIn gruplara verilen yetkilerin kullanılmasına izin verilir. Ayarı değiştirmek yeniden tarama gerektirmez. |
ClientProtectionKey1,ClientProtectionKey2 | string | null | WebServerSecurity | 6.1.0.25423+ | Kullanıcı iç token kripto her sunucu için değişir. Buraya yazılacak anahtarlar ile şifreleme için entropi artırılabilir veya azaltılabilir. |
MaxUrlSize | int | 2048 | WebServer | 7.0.1.25764+ | İstek sırasında kabul edilecek URL boyutunu belirlemekte kullanılır. POST için yapılan isteklerde sınır bulunmamaktadır. |