Ana içeriğe geç

CSP kullanırken eklentilerle çalışma

Giriş​

İçerik Güvenliği Politikası (Content Security Policy, CSP), Siteler Arası Betik Çalıştırma (XSS) saldırıları gibi bazı tehditleri önlemek için tasarlanmış bir güvenlik standardıdır. CSP etkinleştirildiğinde içerik yalnızca onaylı kaynaklardan yüklenebilir. Özellikle, açıkça izin verilmemiş üçüncü taraf alan adlarına yapılan isteklere izin vermez.

Web çözümünüzle tümleştirilmiş ONLYOFFICE Docs (Enterprise Edition veya Developer Edition) kullanıyorsanız ve web sunucunuzda güvenliği artırmak için CSP etkinse CSP varsayılan ayarları bazı sorunlara yol açabilir. ONLYOFFICE çevrimiçi düzenleyicileri çeşitli eklentiler içerir ve bunlardan bazıları üçüncü taraf kaynakları kullanır ve üçüncü taraf alan adlarına istek gönderir (örneğin YouTube eklentisi). CSP üçüncü taraf alan adlarına yapılan isteklere izin vermediğinden eklentiler düzgün çalışamaz; örneğin YouTube videosu yüklenmez.

Üçüncü taraf alan adlarını izin verilen kaynaklar listesine ekleme​

Eklentilerin doğru çalışması için belirli alan adlarına yapılan isteklere izin vermeniz gerekir (alan adlarının tam listesi aşağıdadır). Bunu, CSP'yi etkinleştiren HTTP üst bilgisini değiştirerek yapabilirsiniz. Kullandığınız çözüme bağlı olarak bu üst bilgi farklı dosyalarda bulunabilir. Bu talimat tek tek durumları değil, temel ilkeleri açıklar. Üst bilgi şöyle görünmelidir:

Header set Content-Security-Policy "default-src 'self'; script-src 'self'; connect-src 'self'; img-src 'self'; style-src 'self';"

Bu satır, farklı içerik türleri için izin verilen kaynakları belirten yönergeler içerir: betikler, stil sayfaları, yazı tipleri, resimler, HTML5 <audio> veya <video> öğeleri vb.

default-src yönergesi, belirli bir kaynak türü için yönerge belirtilmediğinde uygulanır.

‘self’, içeriğin yalnızca geçerli alan adından yüklenebileceği anlamına gelir.

default-src yönergesini düzenleyip güvenilen alan adlarının değerlerini eklemeniz gerekir:

default-src 'self' *.trusted1.com *.trusted2.com

Bu, belirtilen güvenilir *.trusted1.com ve *.trusted2.com alan adlarına ve alt alan adlarına istek göndermeye ve bunlardan içerik yüklemeye izin verir.

Üçüncü taraf alan adları listesi​

Aşağıdaki eklentiler üçüncü taraf alan adlarına istek gönderir:

EklentiAlan adı
cliparthttps://openclipart.org
speechhttps://code.responsivevoice.org
youtubehttps://www.youtube.com
thesaurushttps://words.bighugelabs.com
translatehttps://translate.yandex.net
ocrhttps://cdn.rawgit.com

Yukarıda listelenen eklentilerden şunlar varsayılan olarak ONLYOFFICE çevrimiçi düzenleyicilerine dahildir: ocr, speech, thesaurus, translate, youtube.

clipart eklentisi çevrimiçi düzenleyicilere dahil değildir ancak https://github.com/ONLYOFFICE/sdkjs-plugins adresinde bulunur ve düzenleyicilere elle ekleyebilirsiniz.

Belirtilen tüm alan adlarını izin verilen kaynaklar listesine eklemek için HTTP üst bilgisi şöyle görünmelidir:

Header set Content-Security-Policy "default-src 'self' *openclipart.org *code.responsivevoice.org *www.youtube.com *words.bighugelabs.com *translate.yandex.net *cdn.rawgit.com; script-src 'self'; connect-src 'self'; img-src 'self'; style-src 'self';"
not

ONLYOFFICE Enterprise Edition için ayrıca CSP kullanacak şekilde yapılandırdıysanız ve wordpress ile easybib eklentilerini etkinleştirdiyseniz *wordpress.com ve *easybib.com alan adlarını da belirtmeniz gerekir.