Dynamics 365 Finance and Operations Geliştirme Ortamından Yetki Tanımı Nasıl yapılır?

Bu yazıda Dynamics 365 Finance and Operations geliştirme ortamı üzerinden yaznı Visual Studio2dan nasıl yetki nesneleri oluşturulur anlatmaya çalışacağım. Bir önceki Dynamics 365 Finance and Operations Arayüzünden Yetki Tanımı Nasıl yapılır? isimli yazımda arayüzden yetki nesnelerinin nasıl oluşturulduğunu anlatmıştım. O yazıda da söylediğim gibi benim tercihim yetkinin geliştirme ortamından oluşturulması. Birkaç sebebi var en önemlisi geliştirme ortamından oluşturulan nesneler versiyon kontrole dahil edilebiliyor bu sayede direk paketinizde olacaklar ve istediğiniz ortama taşınası geliştirmenizle birlikte olacak yönetmesi daha kolay diye düşünüyorum.

Bir önceki yazımda yaptığım örneğin aynısını şimdi Visual Studio üzerinden yapacağım. Test kullanıcımda sadece System user rolü var.

Resim-1

Test kullanıcım bu roller sadece iki modül görebiliyor.

Resim-2

All customers formuna yetki vermek istiyorum.

Resim-3

VS üzerinden ilgili MenuItem’ı buluyorum. Bu benim giriş noktam(EntyPoint) olacak ve bütün yetki atamaları bu giriş noktası üzerinden yapılacak.

Resim-4

Projeme gelip yeni bir nesne ekle diyorum.

Resim-5

Öncelikle Privilage oluşturacağız. Seçip isim verip ekle diyorum.

Resim-6

Oluşan Privilege’ın Entry Points sekmesine CustTableListPage MenuItem’ını sürükleyip bırakıyoruz. Giriş noktası oluştu özelliklerinden Access Level olarak delete seçiyoruz. Delete ful yetki manasına geliyor. Buradan istediğiniz seviyeyi seçebilirsiniz. Update ve Correct belki kafanızı karıştırabilir. Update bildiğimiz veri güncelleme yetkisi. Correct ise Valid Time State özelliği olan tablolarda kullanılıyor.  Valid Time State otomatik tarih kontrolleri yapmanızı sağlayan bir mekanizma ilerleyen zamanlarda bununla ilgili bir yazı hazırlayacağım.

Resim-7

Şimdi bir Duty oluşturuyoruz.

Resim-8

Oluşturduğumuz Duty’ye bizim Privilege’ımızı sürükleyip bırakıyoruz.

Resim-9

Sırada role oluşturma var.

Resim-10

Oluşturduğumuz role istersek direk Privilege verebiliriz ama doğru olan kademeleri takip etmek. Bu yüzden biz Duty kullandık. Sürükleyip bırakabilirsiniz. Böylece yeni rol oluşmuş oldu.

Resim-11

Bazı durumlarda Cache’leri temizlemek gerekebilir SysFlusData sınıfını Resim-12’deki gibi çağırabilirsiniz.

Resim-12

VS üzerinden oluşturduğunuz nesneler direk uygulamada görünmeyecektir. Sebebinden çok emin değilim ama DB senkronizasyonundan sonra görünür oluyorlar. Bu bir veri aslında neden buna ihtiyaç duyuyor bilemiyorum.

Resim-13

Bu işlemlerden sonra  uygulamayı açtığınızda oluşturduğumuz nesneleri göreceksiniz.

Resim-14

Test kullanıcımıza rol atamasını yapıyoruz.

Resim-15

Uygulamaya giriş yaptığımızda All Customers formunu görebiliyoruz.

Resim-16

Bu yazıda VS üzerinden güvenlik nesnelerinin nasıl oluşturulduğunu anlatmaya çalıştım. Güvenlik ve yetki işini çok ciddiye almak gerekiyor. Doğru kurgulanmazsa içinden çıkılmaz bir hal alabiliyor. Mümkün olduğunca üst seviden çözmeye çalışın çok fazla ayrıntıya girerseniz yönetmesi çok zorlaşır. Yeni role gerçekten ihtiyaçsa yapın mümkün olduğunca Duty kullanarak işleri halletmeye çalışın. Bir kullanıcıya 3-5 rolden fazla atama yapmayın çok rol performans sorunlarına yol açabilir.

Selamlar.

www.fatihdemirci.net

TAGs: Microsoft Life Cycle Services, LCS, Azure, Azure DevOps, Security , Microsoft Dynamics 365, MsDyn365FO, MsDyn365CE, MsDyn365, Dynamics 365 Insights Power BI, Power Automate, Power Apss, Power Virtual Agents, Dynamics 365 nedir, Dynamics 365 ERP, Dynamics 365 CRM

 
Comment are closed.