# UNS izinleri

> Bir rolü tesisin belirli bölümleriyle sınırlayın: ortak veri modelinin (UNS) bir dalına (tesis ya da hat) o roldeki herkes için izin verin veya reddedin.

Kaynak: https://proxus.io/tr/docs/administer/uns-permissions

Bu kılavuzu tamamladığınızda bir roldeki kullanıcılar, ortak veri modelinde (UNS) yalnızca izin verdiğiniz
tesisleri, alanları ve cihazları; platformun geri kalanında da yalnızca bu cihazları, alarmlarını ve değerlerini
görür. Örneğin Lyon'daki ekip `Meridian/Lyon_Foods_Plant` yolunu ve altındaki her
şeyi görür, Rotterdam'a ait hiçbir şeyi göremez.

## Başlamadan önce

- **Administrators** rolündeki bir kullanıcıyla oturum açın.
- Rol tanımlı olmalı ve yönetici rolü olmamalıdır. Bkz. [Kullanıcılar ve roller](https://proxus.io/tr/docs/administer/users-and-roles).
- Cihazların UNS'te görünmesi için konumlarının (kuruluş, tesis, alan vb.) atanmış olması gerekir. Bkz.
  [Ortak veri modeli (UNS)](https://proxus.io/tr/docs/concepts/unified-namespace).

## Kuralların işleyişi

UNS izni, bir role tanımlanan kuraldır. Her kuralda UNS içindeki bir **yol** ve değeri **İzin ver** ya da **Reddet**
olan bir **Erişim** ayarı bulunur.

- Yol, kendisini ve altındaki her şeyi kapsar. Örneğin `Meridian/Lyon_Foods_Plant` yolu, o tesisteki tüm alanları,
  hatları ve cihazları kapsar. Joker karakter kullanılamaz. Kural kaydedilirken `+` ve `#` gibi MQTT işaretleri
  silinir.
- Yollar bölüm bölüm karşılaştırılır ve büyük-küçük harf ayrımı yapılır. `Meridian/Lyon` yolu
  `Meridian/Lyon_Foods_Plant` yolunu kapsamaz.
- **Reddet** kuralı her zaman **İzin ver** kuralından önce gelir. Bir tesise izin verip içindeki tek bir hattı reddederseniz
  yalnızca o hat gizlenir.
- Birden çok rolü olan kullanıcı, rollerinden herhangi birinin açtığını görür: iki tesis rolü iki tesisi de açar;
  UNS kuralı olmayan ve cihazları okuyan tek bir rol ise bütün cihazları açar.
- Hiç kuralı olmayan bir rol bir tesisle sınırlı değildir: okuyabildiği her cihazı görür, ama Veri ağacında (UNS)
  hiçbir şey göremez. Yalnızca **Reddet** kuralları olan bir rol, reddedilen dallar dışındaki her cihazı görür;
  Veri ağacında yine hiçbir şey göremez.
- Yönetici rolleri her zaman her şeyi görür. Bu rollerde kurallar dikkate alınmaz.

Kurallar rolün tesisin hangi bölümünde çalıştığını belirler; orada neler yapabileceğini (okuma, değiştirme) diğer
izinleri belirler. Bir cihaz rolün yollarının dışına kaydedilemez, örneğin başka bir tesise taşınamaz.

## Veri ağacından bir dala izin verin

1. **Varlık yapısı > Veri ağacı (UNS)** ekranını açın.
2. Erişim vermek istediğiniz düğüme sağ tıklayın. Örneğin `Lyon_Foods_Plant` tesisi.
3. **Role erişim izni ver...** komutunu seçin. Düğümü gizlemek için **Rol için erişimi engelle...** komutunu seçin.
4. Açılan pencerede rolü seçin ve **Uygula** düğmesine tıklayın.

*Ekran görüntüsü: Bir tesis üzerinde Veri ağacı (UNS) sağ tık menüsü; Role erişim izni ver ve Rol için erişimi engelle işaretli*

1. **Role erişim izni ver...**, bu düğüm ve altındaki her şey için bir izin kuralı ekler.
2. **Rol için erişimi engelle...**, bir reddetme kuralı ekler.

Bu menü komutlarını yalnızca yöneticiler görür.

*Ekran görüntüsü: Meridian/Lyon_Foods_Plant yolu, rol listesi ve Uygula düğmesi işaretli Role erişim izni ver penceresi*

1. **Yol**, sağ tıkladığınız düğümün UNS yoludur.
2. Listede yönetici rolü olmayan tüm roller görünür.
3. **Uygula**, kuralı kaydeder. Rolde bu yol için zaten bir kural varsa kural güncellenir ve yeniden etkinleştirilir.

## Rolde kural ekleyin ya da değiştirin

**Güvenlik > Roller** ekranını açın, rolü açın ve izin sekmelerinin altındaki **UNS konu izinleri** bölümüne gidin.

- **Yeni** ile kuralı elle ekleyebilirsiniz. **ISA-95 konu ön eki** alanına yolu yazın (örneğin
  `Meridian/Lyon_Foods_Plant/Packaging`) ve **Erişim** değerini seçin.
- **UNS yolunu yapıştır**, Veri ağacı (UNS) sağ tık menüsündeki **Yolu kopyala** komutuyla kopyaladığınız yol için
  bir izin kuralı ekler.
- Bir kuralı silmeden devre dışı bırakmak için **Etkin** onay kutusunun işaretini kaldırın.

*Ekran görüntüsü: Lyon tesisiyle sınırlı bir rol: özetteki Tesis kapsamı hücresi ve Meridian/Lyon_Foods_Plant UNS kuralı işaretli*

1. Rol sayfasının üstündeki özette **Tesis kapsamı**: rolün kaç kuralı olduğu ve hangi yolları açıp kapattığı; hiç
   kuralı yoksa **Tüm tesisler**.
2. Her kural yolunu (**ISA-95 konu ön eki**), **Erişim** değerini ve etkin olup olmadığını gösterir.

## Kuralların geçerli olduğu yerler

| Yer | Etkisi |
| --- | --- |
| **Veri ağacı (UNS)** | İzin verilen yolların dışındaki düğümler gizlenir. Kullanıcının izin verilen düğüme ulaşabilmesi için bu düğümün üst düğümleri görünür kalır. Cihaz ve veri noktası sayıları yalnızca kullanıcının gördüklerini sayar. |
| Cihazlar: cihaz listesi ve sayfası, Anlık durum, Tesis haritası, Trend çalışma alanı, Copilot | Yalnızca izin verilen yollardaki cihazlar listelenir. Bağlantısıyla açılan bir cihaz sayfası reddedilir. |
| **Alarmlar** | Yalnızca bu cihazların alarmları. Cihazı olmayan bir alarm hiçbir tesise ait değildir ve gizlenir. |
| Cihaz telemetrisi ve trend notları | Yalnızca bu cihazların satırları. |
| [MCP sunucusu](https://proxus.io/tr/docs/develop/mcp) üzerinden çalışan yapay zekâ ajanları | İzin verilen yolların dışındaki cihazlar ve değerler sonuçlarda yer almaz. |
| **Panolar** ve **Raporlar** | Her sorgu yalnızca bu cihazların satırlarını okur: telemetri, cihaz ölçümleri, cihazlar, alarmlar ve cihaz istatistikleri. İşlem akışı sinyal tabloları satır döndürmez. Kendi `SETTINGS` ifadesini, bir tablo fonksiyonunu (`remote`, `url` gibi) ya da sistem tablolarını kullanan SQL sorgusu reddedilir; SQL yerine tablo seçilerek kurulan sorgu satır döndürmez (böyle bir sorgusu olan rapor açılmaz). |
| **Zamanlanmış gönderimler** | Gönderim, onu oluşturan kullanıcının (sahibinin) tesis kapsamıyla hazırlanır: alıcılar o kullanıcının gördüğünü alır. |
| Serbest SQL: MCP `telemetry_query` aracı ve REST API'nin telemetri sorgusu | Rolleri bir tesisle sınırlı kullanıcıya, **SQL sorguları** yeteneği olsa bile kapalıdır: bir sorgu bir tesisle sınırlanamaz. |

Edge Gateway'ler, veri hedefleri, bildirim kanalları, alarm kuralları, işlem akışları ve fonksiyonlar bir tesis taşımaz;
bunlara rolün kayıt izinleri karar verir.

> **Uyarı:**
UNS izinleri, yerleşik MQTT sunucusuna erişimi sınırlamaz. MQTT sunucusuna geçerli bir erişim anahtarıyla bağlanan istemci, bu kurallardan bağımsız olarak konuları okuyabilir. MQTT sunucusunu kendi erişim anahtarlarıyla koruyun. Bkz. [MQTT](https://proxus.io/tr/docs/develop/mqtt).

## Sonraki adımlar

- [Kullanıcılar ve roller](https://proxus.io/tr/docs/administer/users-and-roles): rolleri oluşturun ve kullanıcılara atayın.
- [Veri ağacı (UNS)](https://proxus.io/tr/docs/organize/uns-explorer): tesis yapısını ve yolları veri ağacında inceleyin.
