Yazılım

Microsoft Graph API İzin Referansları

 

Merhaba, Microsoft Graph API üzerinde işlemlerimize ve referans değerleri anlatmaya devam ediyoruz.

Bu yazımız daha önceden ufak çaplı olarak geçmiş olduğumuz izin türlerinin derinlemesine incelenmesi ve obje referanslarını anlatmaya yöneliktir.

Graph API üzerinde token alırken Scope alanı altında yetki talebimiz (scope) bulunamktadır. Bu scope öğelerinden daha önce bahsetmiştik. Bu dokümanda ise daha derinlemesine Permission (izin) referanslarına bakıyor olacağız.

Graph API üzerinde üç adet izin türü bulunmaktadır bunlar;

  1. Delegate Permission
  2. Application Permission
  3. Effective Permission

Bu izin türlerini tanımak gerekirse şu şekilde açıklayabiliriz.

Delegate Permission

Delegate Permissionlar mevcut oturumda oturuma giriş yapmış yani login olmuş uygulamalar tarafından kullanılır. Uygulama, izin isteğini giriş yapma aşamasında göndererek yönetici tarafından izin isteği kabul edilir ve Graph API üzerine istek yaparken oturum açmış kullanıcı gibi haraket emte özelliğine bürünür yani, kullanıcı izinlerini devir alır. İzinlerin bir kısmı yönetici olmayan kullanıcılar tarafından da onaylanabilir. Fakat Daha üst düzey erişim izni isteyen yetkiler mutlak yönetici onayından geçmek zorundadır.

Application Permission

Oturum açmış bir kullanıcıya bağımlı kalmadan çalışan uyguama izinleridir ve uygulama tarafından kullanılır. Örnek olarak Graph üzerine yazdığımız bir web servis arka planda çalışacağı için izin türümüz Application Permission türünde olacaktır. Uygulama izinleri sadece yöneticiler tarafından onaylanır.

Effective Permission

Effective izin türü, uygulamalarımızın Graph üzerine istekte bulundukları anda istek yapılan (scope üzerinden gönderilen) izinlerdir.

Graph API üzerine yapılan isteklerde yukarıda bahsetmiş olduğumuz üç yetki tipini anlamak ve hangi durumlarda hangi izin türünü istediğimizi net bir şekilde belirtmemiz gerekmektedir.

Application Permission için daha önceden de yazılarımız da belirttiğimizüzere Azure Ad üzerinden ve Azure AD V2 üzerinden de istekte bulunup Active Directory yetkilerini uygulamamız için ön tanımlı olarakta ayarlayabiliriz.

Azure Ad ve Azure Ad V2 Api üzerinden istekte bulunacaklar için izin türleri ve grup açılamaları şuradan erişilebilir. (https://docs.microsoft.com/en-us/azure/active-directory/active-directory-assign-admin-roles)

Graph API İzin İsimleri

Microsoft Graph API üzerinde izin isimleri basit bir pattern ile izlenir. Bu pattern resource.operation.constraint şeklindedir.

Bu Pattern’i örneklemek gerekirse erişmek istediğimi resource yani kaynak kullanıcı olsun User Operasyon olarak ise vermek veya erişmek istediğimiz yetki ise okuma izni olsun. Operasyonda ise Read kullanmamız gerekecekti. Bu kısma kadar mevcut pattern ve izin isteğimiz şu şekilde olacaktır. User.Read

User.Read yetkisi mevcut oturumda oturum açmış kullanıcının profil bilgilerinin okunması için izin verecektir. Eğer User.ReadWrite olarak yetki talebinde bulunmuş olsaydık, Hem okuma hem de yazma işlemini oturum açmış kullanıcı üzerinde gerçekleştirebiliyor olacaktık.

resource.operation.constraint izin patterninde bulunan constraint ( kısıt ) elemanı uygulamamızın dizinde olabilecek erişim izinlerini belirler. Microsft Graph API şu anda aşağıdaki dizin kısıtlamalarını desteklemektedir.

  • All
  • Shared
  • AppFolder

All Constraint (Tümü Kısıtlaması)

Uygulamanın çalıştığı herhangi bir dizin üzerindeki belirtilen türdeki tüm kaynaklara tam erişim vermek için kullanılır. Biraz yukarıda vermiş olduğumuzu User.Read örneğinden yola çıkarsak patternimize göre erişim talebimiz User.Read.All olacaktır Bu izin isteğimizin anlamı ise şudur. Uygulamayı kullanan tüm kullanıcılar için profillerinin okuma yetkisinin talep edilmesi ve onay dahilinde kullanılabilmesidir.

Shared Constraint ( Paylaşımlı Kısıtlaması )

Uygulamada oturum açmış diğer kullanıcıların paylaşmış oldukları paylaşımlı içerik türlerine erişim için kullanılır. Bu kısıtlamanın çalışabilmesi için içeriklerin oturum açan kullanıcı ile paylaşılması gerekmektedir. Shared kısıtlaması genelde Kişi, Takvim vb Outlook içerikleri ile kullanılmaktadır.

Örnek olarak User.Mail.Shared olarak izin talebimizde kullanıcının maillerini okuma izni ile beraber, organizasyondaki diğer kullanıcıların ( oturum açmış kullanıcıların ), oturumu açan kullanıcı ile paylaştığı e-postaları okuma izni verir.

Bu izin şu şekilde algılanmamalıdır. ” Oturum açtığım anda maillerim okunur” gibi bir izlenim yaratmasın sizlerde. Sadece sizinle paylaşılan emailler okunabilmektedir.

AppFolder Constraint (Uygulama Dizni Kısıtlaması )

Office 365 ile beraber gelen OneDrive kişisel ve kurumsal bulut tabanlı dosya paylaşımı ve saklama servisindeki herhangi bir özel klasore okuma veya yazma izni veren kıstastır.

Bu kısıt sadece dosya izinlerine açıktır ve sadece Microsoft Hesabı kullanan kullanıcılar için geçerlidir.

Diğer yandan yukarıdaki kıstasların herhangi birisi belitilmediği sürece örneğin User.Read izni sadece kullanıcının mevcut izin kaynakları üzerinde işlem yapmasına olanak sağlar. Graph API izinlerinde aksi belirtilmediği sürece izinler devralınmaz.

Microsoft Hesapları İş yada Okul

Anlatılan bütün izin türleri hem microsoft iş hesapları hemde okul hesapları için geçerli değildir. Bazı izin türleri hesap türlerine göre de farklılık göstermektedir.

Kullanıcı ve Grup Arama Limitleri

Uygulamalar /users yada /groups bitiş noktaları vasıtası ile Graph API üzerindeki kaynaklara sorgu ile kuruluş dizinindeki herhangi bir kullanıcı yada grub araması için izin isteği gönderirler.

Yöneticiler ve kullanıcıların bu izin isteme yetkileri bulunmaktadır. Konuk kullanıcılar ise bu işlemi yapamazlar. Fakat uygulama izinlerine bağlı olarak konuk kullanıcılar bir grubun yada bir kullanıcının profil bilgilerini okuyabilirler. Konuk kullanıcılar /users ve /groups bitiş noktalarına herhangi bir istek gönderemezler.

Uygulama İzin Referansları

Yukarıda temel olarak izinler ve bu izinlere bağlı içerikler hakkında bilgiler aktarmaya çalıştık. Şimdi ise bu izinlerden hangilerinin ne gibi işlemlere fayda ettiğini gelin hep beraber görelim ve referans tablolarını oluşturalım.

Aşağıdaki listeler Microsoft kaynakları tarafından da verilmiş olup yukarıda izin tiplerinde kullanılan patternler bu listelerde daha net bir şekilde görülmektedir.

İnceleyeceğimiz referans tipleri şu şekildedir;

  • Calendar Permission (Takvim İzinleri)
  • Contact Permission (Kişiler Listesi İzinleri)
  • Device Permission (Cihaz İzinleri)
  • Microsoft Intune Device Management Permissions (Microsoft Intune Cihaz Yönetim İzinleri)
  • Directory Permissions (Klasör İzinleri)
  • Files Permissions (Dosyaların İzinleri)
  • Group Permissions (Grup İzinleri)
  • Identiy Risk Etkinlik İzinleri
  • Mail Permissions (E-Posta İzinleri)
  • Member Permissions (Üye İzinleri)
  • Notes Permission (Notlar için İzinler)
  • OpenID Permissions (OpenID İzinleri)
  • People Permissions (Kişi İzinleri)
  • Reports Permissions (Rapor İzinleri)
  • Sites Permissions (Site İzinleri)
  • Tasks Permissions (Görev İzinleri)
  • User Permissions (Kullanıcı İzinleri)

Calendar Permissions (Takvim İzinleri)

Takvim izinlerinde Delegate iziler şu şekildedir.

İzin

Açıklama

Yönetici İzini Gereli mi?

Calendars.Read

Kullanıcıların takvimlerine erişim izni verir

Hayır

Calendars.Read.Shared

Delegate olarak Takvim okuma yetkisi ve paylaşımlı takvimleri okuma yetkisi verir

Hayır

Calendars.ReadWrite

Uygulamaya kullanıcının takvimi üzerinde oluşturma, güncelleme ve silme yetkilerinin tamamını verir.

Hayır

Calendars.ReadWrite.Shared

Uygulamaya delegate olarak kullanıcının takvimi ve paylaşılan takvimler üzerinde oluşturma, güncelleme ve silme yetkilerinin tamamını verir.

Hayır

Uygulama izini olarak ise takvimler üzerinde iki adet yetki talep edebilmekteyiz.

İzin

Açıklama

Yönetici İzini Gereli mi?

Calendars.Read

Oturum açan kullanıcı için bütün e-posta hesapları üzerindeki takvimleri okuma yetkisi verir

Evet

Calendars.ReadWrite

Oturum açan kullanıcı için bütün e-posta hesapları üzerindeki takvimler için okuma, yazma, oluşturma ve silme yetkisi verir

Evet

Uygulama izinleri tüm kullanıcılar için verilmektedir. Uygulamanızın bütün kullanıcılar için aynı şekilde haraket edeceğinden kullanıcı bazlı yetkilendirmeler için Delegate izinleri kullanınız. Ayrıca uygulama izinleri sadece Microsoft okul yada iş hesapları tarafından kullanılabilir.

Contact Permission (Kişiler Listesi İzinleri)

Contact (Kişiler) izinleri, uygulamanızın kullanıcıların kişiler listesini okumanıza ve yönetmenize yarayan izinler dizesidir. Bu izinleri de yukarıdaki gibi Delagete ve Application (uygulama) aşağıdaki şekildedir.

Delegate İzinler

İzin

Açıklama

Yönetici İzini Gerekli mi?

Contacts.Read

Kullanıcı kişi bilgilerini okuma izni verir

Hayır

Contacts.Read.Shared

Uygulama için kişileri okuma ve erişim izni sağlar ayrca oturum açmış kullanıcının kişileri ve onun ile paylaşılan kişileri okuma iznine erişim için kullanılır.

Hayır

Contacts.ReadWrite

Uygulamanın oturum açan kullanıcı kişilerine tam yetki verir (Ekleme, silme ve güncelleme)

Hayır

Contacts.ReadWrite.Shared

Temel CRUD operasyonlarını uygulama tarafından elde etmek için kullanılan ve oturum açan kullanıcının sahip olduğu ve onun ile paylaşılan kişilerine tam erişim için kullanılır.

Hayır

Application İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

Contacts.Read

Oturum açmadan bağımsız olarak tüm E-Posta kutularında kişileri okuma yetkisi verir.

Evet

Contacts.ReadWrite

Oturum açan kullanıcan bağımsız olarak uygulamaya CRUD yetkisi verir

Evet

Yukarıda kişilere erişim için delegate ve uygulama düzeyinde yetkilendirmelerin referans izin tiplerini göstermeye çalıştık. Bu izinlerden uygulama düzeyinde olanlar sadece Microsoft Okul yada iş hesaplarında çalışmaktadır.

Device Permission (Cihaz İzinleri)

Delegate İzinler

İzin

Açıklama

Yönetici İzini Gereli mi?

Device.Read

Oturum açan kullanıcının cihazlarını okuma yetkisi verir

Hayır

Device.Command

Oturum açan kullanıcın cihazlarını hem okuma hemde o cihazlara erişim yetkisi verir. Cihazlar üzerinde komut çalıştırmanıza da olanak sağlar.

Hayır

Application İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

Device.ReadWrite.All

Uygulama düzeyinde oturum açmadan bağımsız olarak tüm kullanıcıların cihazlarına ve bu cihazların özelliklerine (property) okuma ve yazma izni verir. Cihaz ekleme silme ve düzenleme (cihaz bazında ) yetkisi vermez bunun için daha yüksel düzeyde yetki talebi gerekmektedir.

Evet

Oturum açan kullanıcı yada oturum açmadan uygulama bazında cihaz erişimleri için kullanıcılar yetkiler yukarıda belirtilmiştir.

Device.ReadWrite.All kısmında bahsettiğimiz uygulama düzeyinde erişimde cihaz ekleme ve silme yetkilerini bir sonraki güvenlik konumuzda değineceğimizden Microsoft Graph API üzerinde cihaz erişimlerinde yetki referansı olarak yukarıdaki tabloyu referans olarak kabul edebiliriz.

Microsoft Intune Device Management Permissions (Microsoft Intune Cihaz Yönetim İzinleri)

Microsoft Intune Cihaz yönetimi izinlerinde delegate olarak izin kullanılmamaktadır. Intune Cihaz yönetimi için sadece aşağıdaki uygulama izinleri bulunmaktadır.

Microsoft Intune, Mobil cihazlar üzerinde bulut tabanlı yönetim olanağı sağlayan Microsoft’un bulut çözümüdür. Microsoft Intune nedir ne işe yarar gibi konular hakkında daha detaylı bilgi almak için https://www.microsoft.com/tr-tr/cloud-platform/microsoft-intune adresini ziyaret edebilirsiniz.

İzin

Açıklama

Yönetici İzini Gereli mi?

DeviceManagementServiceConfig.
Read.All

Intune servisleri üzerine özelliklere ve içerdiği cihazlara erişebilmek için 3üncü parti bağlantı sağlar.

Evet

DeviceManagementServiceConfig.
ReadWrite.All

Intune servisleri üzerine özelliklere ve içerdiği cihazlar üzerinde yazma ve okuma için 3üncü parti bağlantı sağlar.

Evet

DeviceManagementConfiguration.
Read.All

Belirli ve atanmış gruplar için Intune tarafından yönetilen cihazlara ve bu cihazlara ait policie’lere erişim izni verir

Evet

DeviceManagementConfiguration.
ReadWrite.All

Belirli ve atanmış gruplar için Intune tarafından yönetilen cihazlara ve bu cihazlara ait policie’lere okuma ve yazma erişim izni verir

Evet

DeviceManagementApps.Read.All

Belirlenmiş ve atanmış gruplar için Intune uygulamasına özellik okuma, uygulama durumu, uygulama konfigurasyonu ve yönetilen güvenlik policieleri okuma izni verir

Evet

DeviceManagementApps.
ReadWrite.All

Belirlenmiş ve atanmış gruplar için Intune uygulamasına özellik okuma, uygulama durumu, uygulama konfigurasyonu ve yönetilen güvenlik policieleri okuma ve yazma izni verir

Evet

DeviceManagementRBAC.Read.All

Microsoft Intune Role-Based Access Control (RBAC) ayarlarına ve özelliklerine okuma izni verir.

Evet

DeviceManagementRBAC.
ReadWrite.All

Microsoft Intune Role-Based Access Control (RBAC) ayarlarına ve özelliklerine okuma ve yazma izni verir.

Evet

DeviceManagementManagedDevices.
Read.All

Microsoft Intune tarafından yönetilen cijaların özelliklerini okuma izni verir.

Evet

DeviceManagementManagedDevices.
ReadWrite.All

Microsoft Intune tarafından yönetilen cijaların özelliklerini okuma ve yazma izni verir.

Evet

DeviceManagementManagedDevices.
PrivilegedOperations.All

Kullanıcılar için önemli olan işlemlerin uzaktan yapılabilmesine olanak sağlayan izindir. Bu izin ayrıca Microsoft Intune tarafından yönetilen cihazlarda passcode resetleyebilir.

Evet

DeviceManagementManagedDevices.ReadWrite.All izni tüm izinlere vakıf olsada uzaktan şifre resetleme işlemi yapamaz.

Microsoft Intune izinleri Delegate olarak çalışmamaktadır. Uygulama izinleri henüz ön izlemede olduğundan izinlerin parametreleri ve dönen değerler Microsoft tarafından değişikliğe uğrayabilir.

Directory Permissions (Klasör İzinleri)

Delegated İzinler

İzin

Açıklama

Yönetici İzini Gereli mi?

Directory.Read.All

Organizasyon içerisindeki klasörün (kullanıcılar ve gruplar) uygulama tarafından okunabilmesini sağlayan izindir.

Evet

Directory.ReadWrite.All

Organizasyon içerisindeki klasörün (kullanıcılar ve gruplar) uygulama tarafından okuma ve yazma sağlayan izindir.

Evet

Directory.AccessAsUser.All

Oturum açan kullanıcı için organizasyon klasörlerindeki yetki ile aynı izni sağlar.

Evet

Application İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

Directory.Read.All

Organizasyon içerisindeki klasörün (kullanıcılar ve gruplar) uygulama tarafından okunabilmesini sağlayan izindir.

Evet

Directory.ReadWrite.All

Organizasyon içerisindeki klasörün (kullanıcılar ve gruplar) uygulama tarafından okuma ve yazma sağlayan izindir.

Evet

 

Files Permissions ( Dosyaların İzinleri )

Delegated İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

Files.Read

Oturum açan kullanının dosyalarını okuma izni verir

Hayır

Files.Read.All

Oturum açan kullanıcı için o kullanıcıya ait tüm dosyalara okuma izni verir

Hayır

Files.ReadWrite

Oturum açan kullanıcının dosyalarına Okuma, yazma ve silme işlemleri için tam yetki verir.

Hayır

Files.ReadWrite.All

Oturum açan kullanıcının yetkili olduğu dosyaların tümüne tam denetim verir.

Hayır

Files.ReadWrite.AppFolder

(Preview) Uygulama klasörüne tam denetim verir

Hayır

 

 

 

 

           

Application İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

Files.Read.All

(Preview) Oturum açan kullanıcıdan bağımsız uygulamaya tüm sitelerde dosya okuma yetkisi verir.

Evet

 

 

 

 

           

Group Permissions (Grup İzinleri)

Delegate İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

Group.Read.All

Oturum açan kullanıcı için gruplara okuma ve listeleme izni verir. Ayrıca bu izinlerde bulunan özelliklerede okuma izni verir. Bazı içeriklere ve dosyalara da oturum açan kullanıcı için okuma izni verir.

Evet

Group.ReadWrite.All

Oturum açan kullanıcı için grup oluşturma ve okuma yetkisi verir ayrıca tüm grup özelliklerine de okuma yazma yetkisi verir. Ek olarak grup yöneticilerine grup içeriği ve üyelerini düzenleme yetkisi verir

Evet

Application İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

Group.Read.All

Uygulama için oturum açan kullanıcıdan bağımsız olarak gruplara okuma ve listeleme izni verir. Ayrıca bu izinlerde bulunan özelliklerede okuma izni verir. Bazı içeriklere ve dosyalara da oturum açan kullanıcı için okuma izni verir.

Evet

Group.ReadWrite.All

Uyulamanız için grup oluşturma okuma ve güncelleme işlemleri için izin verir. Bazı API özellikleri grup izinleri için ek izinler isteyebilir.

Evet

Identiy Risk Etkinlik İzinleri

Delegated İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

IdentityRiskEvent.Read.All

Oturum açan kullanıcı için okuma izni verir

Evet

Application permissions

İzin

Açıklama

Yönetici İzini Gereli mi?

IdentityRiskEvent.Read.All

Uygulamanız için tam denetim erişimi verir.

Evet

Mail Permissions (E-Posta İzinleri)

Delegated permissions

İzin

Açıklama

Yönetici İzini Gereli mi?

Mail.Read

Kullanıcı posta kutusuna okuma izni verir.

Hayır

Mail.ReadWrite

Kullanıcı posta kutusunda tam denetim verir. Bu izin e-posta göndermesine izin vermez

Hayır

Mail.Read.Shared


Kullanıcının
sahip
olduğu ve paylaşımlı e-postalara okuma izni veriri

Hayır

Mail.ReadWrite.Shared

Paylaşılmış olan ve kendi E-Postaları üzerinde tam yetki verir. Bu izinde mail gönderme izni yoktur.

Hayır

Mail.Send

Organizasyonda bulunan kullanıcı için e-posta gönderme izni verir.

Hayır

Mail.Send.Shared

Diğer kullanıcıların paylaşmış olduğu posta kutularına ve oturum açan kullanıcının posta kutusuna mail gönderme yetkisi verir.

Hayır

MailboxSettings.Read

Eposta kutusunun ayarlarına okuma izni verir. E-Posta gönderme yetkisi bu izne dahil değildir.

Hayır

MailboxSettings.ReadWrite

Posta kutusunun özelliklerine tam yetki verir. Mail gönderme yetkisi bu izne dahil değildir.

Hayır

Application İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

Mail.Read

Kullanıcı posta kutusuna okuma izni verir.

Evet

Mail.ReadWrite

Kullanıcı posta kutusunda tam denetim verir. Bu izin e-posta göndermesine izin vermez

Evet

Mail.Send

Organizasyonda bulunan kullanıcı için e-posta gönderme izni verir.

Evet

 

MailboxSettings.Read

Eposta kutusunun ayarlarına okuma izni verir. E-Posta gönderme yetkisi bu izne dahil değildir.

Hayır

 

MailboxSettings.ReadWrite

Posta kutusunun özelliklerine tam yetki verir. Mail gönderme yetkisi bu izne dahil değildir.

Evet

 

Member Permissions (Üye İzinleri)

Delegated İzinler

İzin

Açıklama

Yönetici İzini Gereli mi?

Member.Read.Hidden

Uygulamanın, oturum açmış kullanıcının adına, oturum açmış kullanıcının eriştiği gizli gruplar ve yönetim üyeleri için gizli grupların ve yönetici üyeliklerini okuma izni verir.

Evet

Application İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

Member.Read.Hidden

Uygulamaya, oturum açmış bir kullanıcı bulunmayan gizli grupların ve yönetim üyelerine okuma izni verir.

Evet

Notes Permission (Notlar için İzinler)

Delegated İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

Notes.Read

Uygulamaya, OneNote üzerindeebölümlerin başlıklarını okuma ve oturum açmış kullanıcı adına yeni sayfalar ve bölümler oluşturma izni verir.

Hayır

Notes.Create

Uygulamaya, OneNote için bölümlerin başlıklarını okuma ve oturum açmış kullanıcı adına yeni sayfalar ve bölümler oluşturma izni verir.

Hayır

Notes.ReadWrite

Uygulamanın, oturum açmış olan kullanıcı adına OneNote için okuma, paylaşma ve üzerinde değişiklik yapma izin verir.

Hayır

Notes.Read.All

 

Uygulamanın, oturum açmış kullanıcının kuruluşta erişebildiği OneNote için okuma izni verir.

Hayır

Notes.ReadWrite.All

Uygulamaya, oturum açmış kullanıcının kuruluşta erişebildiği OneNote için okuma, paylaşma ve üzerinde değişiklik yapma izinleri bulunur.

Hayır

Notes.ReadWrite.CreatedByApp

Deprecated

Hayır

Application İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

Notes.Read.All

Uygulamaya, oturum açmış bir kullanıcı olmadan kuruluşunuzdaki tüm OneNotelara okuma izni verir.

Evet

Notes.ReadWrite.All

Uygulamaya, oturum açmış bir kullanıcı olmadan kuruluşunuzdaki tüm OneNotelara okuma, paylaşma ve değiştirme izni verir.

Evet

OpenID Permissions (OpenID İzinleri)

Delegated İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

email

Uygulamaya, kullanıcılarınızın birincil e-posta adresini okuma izni verir.

Hayır

offline_access

Uygulamaya, anlık ve uygulamayı kullanmadığı zamanlarda kullanıcı verilerini okuma ve güncelleme izin verir.

Hayır

openid

Kullanıcıların uygulamayla iş veya okul hesaplarıyla oturum açmalarına izin verir ve uygulamanın temel kullanıcı profili bilgilerini görme yetkisi sağlar.

Hayır

profile

Uygulamaya, kullanıcılarınızın temel profilini (ad, resim, kullanıcı adı) görme yetkisi verir.

Hayır

Application İzinleri

OpenID izinleri uygulama seviyesinde devir alınamamaktadır.

People Permissions (Kişi İzinleri)

Delegated İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

People.Read

Uygulamaya, oturum açmış kullanıcıyla alakalı puanlanmış bir kullanıcı listesini okuma izni verir.

Hayır

People.Read.All

Uygulamaya, oturum açmış kullanıcının kuruluşunda bulunan oturum açmış bir kullanıcı veya diğer kullanıcılarla alakalı puanlanmış bir listeyi okuma izni verir. Ayrıca, uygulamanın oturum açmış kullanıcının kuruluşunun tüm dizininde arama yapmasına izin verir.

Evet

Application İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

People.Read.All

Uygulamaya, oturum açmış kullanıcının kuruluşunda bulunan oturum açmış bir kullanıcı veya diğer kullanıcılarla alakalı puanlanmış bir listeyi okuma izni verir. Ayrıca, uygulamanın oturum açmış kullanıcının kuruluşunun tüm dizininde arama yapmasına izin verir.

Evet

Reports Permissions (Rapor İzinleri)

Delegated İzinleri

Rapor izinlerinde Delegate izinler kullanılmamaktadır.

Application İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

Reports.Read.All

Bir uygulamaya, oturum açmış bir kullanıcı olmadan tüm hizmet kullanım raporlarını okuma izni verir. Kullanım raporları sağlayan hizmetler arasında Office 365 ve Azure Active Directory bulunur.

Evet

Sites Permissions (Site İzinleri)

Delegated İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

Sites.Read.All

Oturum açmış olan kullanıcı adına tüm site koleksiyonlarında belgeleri ve liste öğelerini okuma izni verir.

Hayır

Sites.ReadWrite.All

Oturum açmış olan kullanıcı adına tüm site koleksiyonlarındaki dokümanları ve liste öğelerini düzenlemek veya silmek için izin verir.

Hayır

Application İzinleri

Siteler için uygulama izinleri bulunmamaktadır.

Tasks Permissions (Görev İzinleri)

Delegated İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

Tasks.Read

Kullanıcı görevlerini okuma izni verir.

Hayır

Tasks.Read.Shared

Kullanıcının kendi ve paylaşılan görevler de dahil olmak üzere erişimi izinli olan görevleri okuma izni verir.

Hayır

Tasks.ReadWrite

Oturum açmış kullanıcıya atanan veya oturum açmış kullanıcıyla paylaşılan görevlere tam denetim verir.

Hayır

Tasks.ReadWrite.Shared

Kendi ve paylaşılan görevler de dahil olmak üzere bir kullanıcının izin verdiği görevlere tam denetim verir.

Hayır

Application İzinleri

Görevler için uygulama izinleri bulunmamaktadır.

User Permissions (Kullanıcı İzinleri)

Delegated İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

User.Read

Kullanıcıların uygulamada oturum açmasına izin verir ve uygulamanın oturum açmış kullanıcıların profilini okumasına izin verir. Ayrıca, uygulamanın oturum açmış kullanıcıların temel şirket bilgilerini okumasına da izin verir.

Hayır

User.ReadWrite

Profilinizi okuma izni verir. Ayrıca, uygulamanın profil bilgilerinizi sizin adınıza güncellemesine izin verir.

Hayır

User.ReadBasic.All

Oturum açmış kullanıcı adına organizasyonunuzdaki diğer kullanıcıların profil özelliklerinin temel bir kümesini okuma izni verir. Buna görüntü adı, ad ve soyad, e-posta adresi ve fotoğraf dahildir.

Hayır

User.Read.All

Oturum açmış kullanıcı adına kuruluşunuzdaki diğer kullanıcıların profil özelliklerini, raporlarını ve yöneticilerini tam olarak okuma izni verir.

Evet

User.ReadWrite.All

Oturum açmış olan kullanıcı adına kuruluşunuzdaki diğer kullanıcıların profil mülklerini, raporlarını ve yöneticilerini okuma ve yazma izin verir. Ayrıca, uygulamanın oturum açmış kullanıcının adına kullanıcı şifrelerini sıfırlamasının yanı sıra kullanıcıları oluşturmasına ve silmesine izin verir.

Evet

User.Invite.All

Oturum açmış olan kullanıcı adına konuk kullanıcıları kuruluşunuza davet etme izin verir.

Evet

Application İzinleri

İzin

Açıklama

Yönetici İzini Gereli mi?

User.Read.All

Oturum açmış kullanıcı adına kuruluşunuzdaki diğer kullanıcıların profil özelliklerini, raporlarını ve yöneticilerini tam olarak okuma izni verir.

Evet

User.ReadWrite.All

Oturum açmış olan kullanıcı adına kuruluşunuzdaki diğer kullanıcıların profil mülklerini, raporlarını ve yöneticilerini okuma ve yazma izin verir. Ayrıca, uygulamanın oturum açmış kullanıcının adına kullanıcı şifrelerini sıfırlamasının yanı sıra kullanıcıları oluşturmasına ve silmesine izin verir.

Evet

User.Invite.All

Oturum açmış olan kullanıcı adına konuk kullanıcıları kuruluşunuza davet etme izin verir.

Evet

İzinlerde bahsedilen Delegate türünde izin tiplerinin tamamı Microsfot İş yada Okul hesapları ile kullanılabilmektedir. Yukarıda izin tiplerinin altında elimizden geldiğince Microsoft kaynakları tarafından belirtilen uyarıları da tecrübelerimiz ile birlikte aktarmaya çalıştık.

Dikkat edileceği gibi bazı izinlerde uygulama düzeyinde bazılarında ise delegate düzeyinde erişimler kısıtlanmış yada şu an için kullanılamaz durumdadır.

Daha önceden de belirttiğimiz gibi Microsoft Graph API sürekli gelişmekte olduğundan Microsoft kaynaklarından da izin referanslarını takip etmek faydalı olacaktır. Yukarıda anlatılanlar şu an için temel olan izinlerdir ve güncellenmeye devam etmektedir.

Faydalı olması dileği ile

 

 

 

 

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu