Skip to main content
CID222 Docs

Tarayıcı eklentisini dağıtın

CID222 tarayıcı eklentisini kuran ve bağlayan yönetilen politikayı üretin, ardından cihazları kaydedin, güvenlik duvarı EDL belirteçleri verin ve ürettikleri olayları okuyun.

  • Sürüm: 0.4
  • Özellik: ext.browser
  • Rol: admin_user
  • Tür: görev

CID222 tarayıcı eklentisi, bir kişinin bir yapay zeka sitesine — ChatGPT, Claude, Gemini — yazdıklarını TLS'i araya girmeden, tarayıcının içinden inceler. Yönetim → Tarayıcı Eklentisi sayfası, eklentiyi kuran ve onu bu cihaza yönlendiren yönetilen politikayı üretir. Eklentinin yaptığı diğer her şey — cihaz doğrulaması, güvenlik duvarı engelleme listesi, olay akışı — API üzerinden yapılandırılır ya da başka sayfalarda okunur.

Neye ihtiyacım var?

Lisans
Starter
Rol
admin_user

Ön koşullar

  • Cihaz kendi dış adını bilmelidir. Bu sayfayı kullanmadan önce `API_DOMAIN` değerini ayarlayın — aşağıdaki uyarıya bakın.
  • İmzalı eklenti paketi ve güncelleme bildirimi, yönetilen tarayıcılarınızın erişebileceği bir sunucuda yayımlanmış olmalıdır.
  • Eklentinin kimlik doğrulaması için bir ağ geçidi API anahtarı bulunmalıdır. Erişim anahtarları sayfasından bir tane üretin.
  • GPO, Intune, Jamf ya da eşdeğeriyle bir Chrome yönetilen politikası dağıtabilmelisiniz.

Note

Eklenti bir vekil sunucu değildir. Sayfayı tarayıcıda okur ve CID222'den bir karar ister; dolayısıyla dağıtılacak bir kök CA ve TLS araya girmesi yoktur. Masaüstü bir uygulamanın ya da yönetilmeyen bir tarayıcının trafiğini de göremez — bunlar için bkz. Dağıtım ve entegrasyon.

Başlamadan önce: cihazda sunucu adlarını ayarlayın

Danger

Bu sayfadaki CID host (cidHost) ve CRX host alanları, indirdiğiniz politikaya ulaşmaz. Generate policy (politika üret) seçildiğinde değerleriniz gönderilir, ardından politika cihazdan onlar olmadan hemen yeniden okunur; dolayısıyla gösterilen, kopyalanan ve indirilen JSON her zaman API_DOMAIN ve EXTENSION_CRX_DOMAIN değerlerinden üretilir. Başarı bildirimi yine de yazdığınız adı gösterir; bu da hatayı başarı gibi gösterir.

Bu sayfayı kullanmadan önce cihazda her iki ortam değişkenini de ayarlayın ve ağ geçidini yeniden başlatın:

  • API_DOMAIN — tarayıcıların bu cihaza eriştiği dış ad. cidHost değeri bu olur.
  • EXTENSION_CRX_DOMAIN — imzalı .crx ve extension-update.xml dosyalarının yayımlandığı yer.

Şeması olmayan bir değer https:// sayılır ve sondaki eğik çizgiler atılır. Bunlardan biri ayarlanmamışsa politika https://REPLACE-WITH-YOUR-CID-HOST ya da https://REPLACE-WITH-YOUR-CRX-HOST taşır ve sayfa Placeholders still present (yer tutucular hâlâ duruyor) uyarısını gösterir.

Yönetilen politikayı üretin

Sayfayı açın

Yönetim → Tarayıcı Eklentisi öğesini seçin.

Managed policy (yönetilen politika) kutucuğu, bu cihazın bugün üreteceği politikayı yükler. Her iki sunucu adı da biliniyorsa düğmelerin altındaki JSON bloğu gerçek adresleri gösterir; aksi hâlde sağ sütunda Placeholders still present görünür.

Sunucu adlarını doğrulayın

Form alanlarını değil, JSON bloğunu okuyun.

CID host (cidHost) alanı cihazdan önceden doldurulur ve cihaz bir yer tutucu bildirdiğinde boş kalır. CRX host alanı yüklemede her zaman boştur ve EXTENSION_CRX_DOMAIN ayarlı olsa bile hiçbir zaman önceden doldurulmaz.

Politikayı alın

Copy (kopyala) ya da cid222-policy.json olarak kaydetmek için Download (indir) öğesini seçin.

Copy iki saniyeliğine Kopyalandı hâline geçer. Her iki işlem de size bloktaki JSON'un tam olarak aynısını verir.

Kiracı anahtarını ekleyin

cid_key_REPLACE_WITH_TENANT_KEY değerini gerçek bir ağ geçidi API anahtarıyla değiştirin.

Üretici hiçbir zaman anahtar oluşturmaz. Erişim anahtarları sayfasından bir tane üretip JSON'un cidApiKey alanına yapıştırın.

Cihaz yönetim aracınızla dağıtın

Politikayı yönetilen tarayıcılara uygulayın ve Before you push it bölümünde gösterilen eklenti kimliğini sabitleyin.

Varsayılan kimlik lllegnpcnmlafjcdkpecabdiogjafgei'dir; farklı bir anahtarla imzalanmış bir çatal bunu BROWSER_EXTENSION_ID ile geçersiz kılar. Yönetilen tarayıcılar, bir sonraki politika yenilemesinde eklentiyi güncelleme bildiriminden kurar.

Yaymadan önce pilot uygulayın

Politikayı önce tek bir kuruluş birimine uygulayın ve gelenleri izleyin.

Eklentiden gelen olaylar, kaynağı eklenti olarak ayarlanmış hâlde Tüm tespitler sayfasında görünür; kullanım toplamları ise AI kullanımı sayfasında yer alır.

Warning

Sayfanın kendi Before you push it listesinin 4. maddesi olaylar için Tarayıcı Denetimi sayfasına bakmanızı söyler. O sayfa satır içi vekil sunucu ve ICAP yüzeyidir ve eklentinin gönderdiği hiçbir şeyi göstermez. Bunun yerine Tüm Tespitler ve AI Kullanımı sayfalarını kullanın.

Politika ne içerir

{
  "ExtensionInstallForcelist": [
    "lllegnpcnmlafjcdkpecabdiogjafgei;https://crx.example.com/extensions/stable/extension-update.xml"
  ],
  "3rdparty": {
    "extensions": {
      "lllegnpcnmlafjcdkpecabdiogjafgei": {
        "cidHost": "https://cid.example.com",
        "cidApiKey": "cid_key_REPLACE_WITH_TENANT_KEY",
        "failClosed": true
      }
    }
  }
}

Eklentiye üç yönetilen anahtar ulaşır, yalnızca üçü.

AnahtarDeğerNe işe yarar
cidHostAPI_DOMAIN değerinden ya da yer tutucudanEklentinin konuştuğu tek adres. Yanlış bir değer, kullanıcının düzeltemeyeceği bir Invalid credentials hatasıyla sonuçlanır
cidApiKeySizin değiştireceğiniz yer tutucuEklentinin kimlik doğrulamada kullandığı ağ geçidi API anahtarı
failClosedHer zaman trueCihaza erişilemediğinde eklenti, trafiği incelenmeden geçirmek yerine yapay zeka sitelerini engeller

Warning

failClosed koşulsuz olarak true üretilir ve bunu değiştiren hiçbir ayar yoktur. Modül README'si ve kurumsal dağıtım kılavuzu, açık kalarak başarısızlığı müşterinin bir tercihi gibi anlatır; üretici böyle bir seçenek sunmaz. Açık kalarak başarısızlıkla dağıtmak için indirilen JSON'u elle düzenlemeniz gerekir ve o dosya artık bu sayfanın ürettiği dosya değildir.

İki belge dördüncü bir anahtardan, extensionUpdateChannelUrl değerinden de söz eder. Üretici bunu üretmez. Güncelleme adresi bunun yerine ExtensionInstallForcelist içinde taşınır.

Cihazları kaydedin ve iptal edin

Cihaz doğrulaması, bir tarayıcının iddia ettiği tarayıcı olduğunu kanıtlar; böylece bir güvenlik duvarı yapay zeka hedeflerine yalnızca korunan makinelerden izin verebilir. Bu tamamen API üzerinden yürür: panoda hiçbir yerde cihaz listesi, kayıt paneli ya da iptal düğmesi yoktur.

Bu alışverişi eklentinin kendisi yapar ve kimlik doğrulaması için yönetilen politikadaki ağ geçidi API anahtarını kullanır — hiçbir zaman bir oturum belirtecini değil:

  1. POST /api/v1/extension/attestation/enroll cihazı bir P-256 açık anahtarıyla kaydeder. Özel skalerini taşıyan bir anahtar reddedilir. Yeniden kayıt anahtarı değiştirir ama bir iptali asla kaldırmaz.
  2. GET /api/v1/extension/attestation/nonce 60 saniye yaşayan ve bir kez talep edilebilen 32 baytlık bir meydan okuma üretir.
  3. POST /api/v1/extension/attestation/heartbeat bu değeri, bir zaman damgasını, cihaz duruşunu ve üçünün üzerindeki bir imzayı geri gönderir. Eklenti bunu her beş dakikada bir yineler.

Üçü de cihaz başına dakikada 30 çağrıyla sınırlıdır.

Filoyu görmek ya da değiştirmek için yönetici olarak yönetim API'sini çağırın:

# Kayıtlı cihazları listele, en yeni sinyal önce
curl -sS https://<appliance-fqdn>/admin/extension-devices \
  -H "Authorization: Bearer <session-jwt>"
 
# Bir cihazı iptal et ve geri al
curl -sS -X POST   https://<appliance-fqdn>/admin/extension-devices/<device-id>/revoke -H …
curl -sS -X DELETE https://<appliance-fqdn>/admin/extension-devices/<device-id>/revoke -H …

İptal edilen bir cihaza nonce verilmez ve cihaz bir sonraki yoklamada engelleme listesinden düşer.

Warning

Başarısız bir doğrulama, altı farklı neden için tek bir düz 401 Attestation rejected üretir: duruştaki yanlış cihaz, bilinmeyen ya da iptal edilmiş cihaz, iki dakikadan fazla sapmış bir zaman damgası, zaten kullanılmış bir nonce, aşırı büyük bir duruş belgesi ya da hatalı bir imza. Ağ geçidi kaydındaki Heartbeat signature rejected for device <id> satırı yalnızca sonuncusunu ayırt eder ve Olay Günlükleri sayfasına hiçbir şey yazılmaz.

Güvenlik duvarı engelleme listesini yayımlayın

CID222 ağ trafiğini engellemez. Sağlıklı ve doğrulanmış cihazların adreslerini yayımlar; güvenlik duvarınız da yapay zeka hedeflerine yalnızca bu adreslerden izin verir.

Bir EDL belirteci üretin

Belirteç API'sini yönetici olarak, bir ad ve zorunlu bir gelecek tarihiyle çağırın.

curl -sS -X POST https://<appliance-fqdn>/admin/edl-tokens \
  -H "Authorization: Bearer <session-jwt>" \
  -H "Content-Type: application/json" \
  -d '{"name":"perimeter-fw","expires_at":"2027-01-01T00:00:00Z"}'

Yanıt ham cid_edl_… belirtecini bir kez taşır. Yalnızca SHA-256 özeti ve ilk 16 karakteri saklanır; dolayısıyla kaybedilen bir belirteç geri alınmaz, değiştirilir.

Güvenlik duvarını listeye yönlendirin

Bir dış dinamik listeyi https://<appliance-fqdn>/api/v1/edl/healthy-ips?token=cid_edl_… adresine yapılandırın.

Yanıt düz metindir, satır başına bir adres, başlıksız ve yorumsuz. Başlık ekleyemeyen bir güvenlik duvarı sorgu parametresini kullanır; ekleyebilen bir güvenlik duvarı ise Authorization: Bearer cid_edl_… gönderir. DNS yanıt politikası bölgesi için ?format=rpz ekleyin — bu biçim yalnızca IPv4'tür ve diğerlerini sessizce atlar.

Düzenli aralıklarla değiştirin

Yenisini üretin, güvenlik duvarını yeniden yapılandırın, sonra eskisini DELETE /admin/edl-tokens/:id ile iptal edin.

Bu belirteçlerde son kullanma tarihinin zorunlu olmasının nedeni tam olarak şudur: sorgu dizesi biçimi erişim kayıtlarına düşer. 0.4 sürümünde bunların hiçbiri için bir pano ekranı yoktur.

Bir cihaz; iptal edilmemişse, tazelik penceresi içinde — 5 dakikalık sinyale karşı varsayılan 15 dakika — sinyal göndermişse ve kayıtlı bir kaynak adresi varsa listede yer alır. Adresler, cihazın iddia ettikleri değil, ağ geçidinin gözlemledikleridir.

Alan başvurusu

Yönetilen politika kutucuğu

AlanNereden dolarEtkisi
CID host (cidHost)Cihazın kendi API_DOMAIN değerinden; yer tutucuysa boşGenerate policy ile gönderilir ama sonra kopyaladığınız politikada yer almaz
CRX hostHiçbir yerden — yüklemede her zaman boşAynı: gönderilir, sonra yenileme sırasında atılır

Düğmeler

DüğmeNe yapar
Generate policyİki alanı gönderir, sonra cihazdan türetilen politikayı yeniden okur. Hata durumunda sessizdir — bir ret hiçbir ileti üretmez
CopyBloktaki JSON'u kopyalar. Tarayıcı pano erişimini reddederse Could not copy to clipboard ile başarısız olur
DownloadAynı JSON'u cid222-policy.json olarak kaydeder

Bu sayfada olmayan ilgili uç noktalar

YüzeyUç noktaRol
Kayıtlı cihazlarGET /admin/extension-devicesadmin_user
Cihaz iptali / geri almaPOST / DELETE /admin/extension-devices/:deviceId/revokeadmin_user
EDL belirteçleriGET / POST /admin/edl-tokens, DELETE /admin/edl-tokens/:idadmin_user
Eklenti olay akışıGET /admin/extension-eventsadmin_user
Güvenlik duvarı listesiGET /api/v1/edl/healthy-ipsOturum değil, EDL belirteci

Doğrulama

  1. Sayfadaki JSON bloğu gerçek cihaz adınızı ve CRX sunucu adınızı gösterir ve Placeholders still present şeridi kaybolur. Şerit hâlâ duruyorsa ortam değişkenleri ayarlanmamıştır — form alanları bunu düzeltmez.
  2. Pilot bir makinede eklenti, tarayıcının eklenti listesinde politikayla sabitlenmiş ve kullanıcının kaldıramayacağı biçimde görünür.
  3. GET /admin/extension-devices çağrısını yapın. Pilot makine, son beş dakika içinde bir last_seen_at değeri ve managedPolicyPresent kaydeden bir posture ile listelenir.
  4. EDL belirteciyle GET /api/v1/edl/healthy-ips çağrısını yapın. Pilot makinenin adresi çıktıda yer alır.
  5. Pilot makinede bir yapay zeka sitesine, filtrelerinizden birini tetikleyecek bir şey yazın. Olay, eklenti kaynağına filtrelenmiş Tüm Tespitler sayfasında ve AI Kullanımı toplamlarında görünür.
  6. Bu modül Olay Günlükleri sayfasına hiçbir şey yazmaz. Politika üretmek, bir cihazı iptal etmek ve bir EDL belirteci üretmek ya da iptal etmek denetim satırı bırakmaz — bunun yerine cihaz listesinin ve belirteç listesinin kendisine bakın.

Başarısız olursa

  • Generate policy işleminden sonra Placeholders still present yerinde kalıyorsa bu beklenen davranıştır. Cihazda API_DOMAIN ve EXTENSION_CRX_DOMAIN değerlerini ayarlayıp ağ geçidini yeniden başlatın; form alanları bunu düzeltemez.
  • Generate policy seçildiğinde görünür hiçbir şey olmuyorsa istek reddedilmiştir ve sayfanın bunun için hata işleyicisi yoktur. Rolünüzün admin_user ya da superadmin olduğunu ve lisansın tarayıcı eklentisini kapsadığını doğrulayın.
  • Access denied — Only administrators can manage the browser extension. — bir viewer bu sayfaya gezinerek ulaşır ve sonra sayfanın kendisi tarafından reddedilir. Sayfayı yalnızca admin_user ve superadmin kullanabilir.
  • FEATURE_NOT_LICENSED koduyla This feature (…) is not included in the installed license tier. Contact your CID representative to upgrade. — lisansta tarayıcı eklentisi yeteneği yoktur. Bu yetenek her katmanda bulunduğundan, bu genellikle süresi dolmuş ya da okunamayan bir lisans anlamına gelir; bkz. Lisans.
  • Eklenti kullanıcılara Invalid credentials gösteriyorsa: dağıtılan politikadaki cidHost yanlıştır ya da cidApiKey hâlâ yer tutucudur. Kullanıcılar ikisini de düzeltemez; politikayı düzeltip yeniden dağıtın.
  • Signed in, but this role does not use the browser extension: '…' has no extension view. Use the dashboard instead. — eklentiye bir denetçi oturum açmıştır. Denetçiler kanıtı panoda okur ve trafik üretmez.
  • Attestation rejected (401) — altı nedenden biri; bilinçli olarak ayırt edilemez. Önce cihaz saatini denetleyin: iki dakikadan fazla sapma her sinyali başarısız kılar.
  • Device is enrolled to another tenant — cihaz tanımlayıcısı zaten başka bir hesaba kayıtlıdır. Yeniden kaydetmeden önce orada iptal edin.
  • Too many attestation requests (429 değil, 400) — tek bir cihaz için bir dakikada 30'dan fazla doğrulama çağrısı yapılmıştır. Yeniden deneme döngüsüne takılmış bir cihaz bunu üretir.
  • EDL token required / Invalid or expired EDL token (401) — güvenlik duvarı hiç belirteç göndermemiş ya da bilinmeyen, iptal edilmiş veya süresi geçmiş bir belirteç göndermiştir. Yenisini üretin.
  • expires_at must be in the future — EDL belirteçleri gelecek bir son kullanma tarihi taşımalıdır. Ağ geçidi API anahtarlarının aksine, süresi hiç dolmayan bir EDL belirteci oluşturulamaz.
  • Büyük bir dosya yüklemesi temizlenmek yerine reddediliyorsa: parçalı ve sürdürülebilir yüklemeler inceleme için yeniden birleştirilemez ve CID_RESUMABLE_UPLOAD_POLICY varsayılanı block'tur. Belgeler maskelenmek yerine engellenir; yalnızca görseller yerinde maskelenir.

Sonraki adımlar

  • AI kullanımı — eklentinin ve vekil sunucunun birlikte beslediği olaylardan, kimin hangi yapay zeka uygulamasını kullandığı.
  • Tüm tespitler — eklenti kararlarının sohbet ve vekil sunucu tespitlerinin yanına düştüğü birleşik zaman çizelgesi.
  • Erişim anahtarları — yönetilen politikanın ihtiyaç duyduğu cid_key_ anahtarını üretin.
  • Uç nokta ajanı — bir tarayıcı eklentisinin göremeyeceği trafik için işletim sistemi düzeyindeki alternatif.

Son güncelleme