NOT: Dynamics Crm Online Trial versiyonunda anladığım kadarı ile Azure Active Directory kullanamıyoruz.
Microsoft, Dynamics CRM Online 2015 Update 1 ile beraber Organization Service (2011 SOAP endpoint) ve Organization Data Service (OData v2 REST endpoint) teknolojilerinin yerini alacak olan Dynamics Crm Web API yi tanıttı . Crm Web Api’ nin Open Data Protocol (ODATA) standardını kullanıyor (ODATA standardı hakkında detaylı bilgiye buradaki adresten ulaşabilirsiniz) .
SOAP vs ODATA vs REST karşılaştırma için buradaki adrese bakabilirsiniz.
Dynamics Crm Web Api kullanabilmek için öncelikle Crm Online kullanıyor olmalısınız. On Premise versiyonlar için ne zaman Web Api desteği geleceği konusunda Microsoft tarafından henüz bir bilgi sunulmadı. Eğer Crm Online kullanıyoarsanız öncelikle Web Api önizlemesini aktif etmemiz gerekiyor. Bu arada kullanacağımız Crm Web Api servisinin önizleme versiyonu olduğunu unutmamak gerek.
Dynamics CRM Web API’ yi aktif etmek için öncelikle Ayarlar>Yönetim

Dynamics Crm Web Api Preview System Setting
>Sistem Ayarları

Dynamics Crm Web Api System Setting
>Önizlemeler sekmesine gelip lisans koşullarını kabul edip Dynamics Crm Web API önizlemesini etkinleştir diyoruz.

Dynamics Crm Web API Activation
Bu kadar. Artık Dynamics CRM Web API’ yi kullanabiliriz. Eğer Crm Web API’ yi CRM dışarısındaki bir uygulamada kullanmak istiyorsak öncelikle uygulamamızı kayıt etmemiz gerekiyor. Bu sayede uygulamamıza has ClientId ve redirectURI alabileceğiz(ClientId ve redirectURI konusuna yazının ilerleyen bölümlerinde deyineceğim). Eğer Web API’ yi CRM içerisinde kullanacak isek böyle bir kayıt işlemine gerek yok.
Web API kullanabilmemiz için neden uygulamalarımızı kayıt etmeliyiz?
Microsoft bu soruya Organizasyonların hangi uygulamaların hangi verilere erişmesi gerektiğinin yönetilebilmesi için Web API kullanan uygulamalarımızı kayıt etmemiz gerektiğini söylüyor. Her uygulama için ayrı kayıt işlemi yapmamız zorunlu olmasa da gerekli olduğunu söylüyor (tek kayıt işlemi ile birden fazla uygulamamızda CRM Web API kullanabiliyoruz). Data detaylı bilgi için Dynamics CRM Web API register application sayfasına bakabilirsiniz.
Uygulamamızı kayıt edebilmemiz için(Crm Online kullandığımız için) Azure hesabımızın olması gerekiyor(trial hesap da oluyor).
NOT: Uygulama kayıt işlemi ücretsiz. Fakat Azure hesabı (trial yada normal) açarken güvenlik amaçlı kredi kartı bilgisi isteniyor.
Uygulamamızı kayıt edebilmemiz için Dynamics CRM Online (Office 365) hesabımızı Azure hesabımız ile ilişkilendirmemiz gerekiyor. Bu ilişkilendirme ile Dynamics CRM organizasyonumuzun kurulu olduğu sunucudaki Active Directory erişim elde ediyoruz. Şimdi bu işlemi adım adım yapalım:
- https://manage.windowsazure.com/ adresine giderek Azure hesabımıza giriş yapıyoruz. Eğer CRM Online (Office 365) demo hesabı alıp Azure portalına girmeye çalıştıysanız aşağıdaki gibi bir hata ekranı ile karşılaşacaksınız. Onun için Azure hesabınıza bağlanırken azure aboneliği bulunan mail adresinizi girdiğinizden emin olmalısınız.
Dynamics CRM Online Azure No subscriptions found
- Azure hesabınıza giriş yaptıysanız sizi aşağıdaki gibi bir panel karşılayacak.
Azure Panel
- Sol Alttaki New butonuna tıklayarak APP SERVICES > ACTIVE DIRECTORY > DIRECTORY > CUSTOM CREATE diyoruz.
Dynamics CRM Online Manage Azure Active Directory
- Karşımıza gelen formda DIRECTORY alanından Use existing directory diyoruz ve alttaki I am ready to be signed out kutucuğunu işaretleyip tamam diyoruz.
CRM Online Connect Active Directory
CRM Online Manage Active Directory
- Tamam dediğimizde azure portalından otomatik olarak çıkış yapılacak. Çıkış yapıldıktan sonra CRM Online (Office 365) hesabımızla azure portalına yeniden giriş yapıyoruz. (Eğer daha önceden Office 365 hesabınızla giriş yapmaya çalıştıysanız otomatik olarak CRM Online (Office 365) hesabını azure hesabınıza bağlayacak. Sonra ise azure portalımızdan sol taraftaki ACTIVE DIRECTORY sekmesini seçiyoruz ve DIRECTORY alanındaki oluşmuş olan Varsayılan Dizin’ e tıklıyoruz.
CRM Online Access Active Directory Via Azure
- Daha sonra APPLICATION sekmesine gelip aşağıdan ADD butonuna tıklıyoruz.
CRM Online Add Application Azure
- Karşımıza gelen formda Add an application my organization is developing seçeneği seçerek devam ediyoruz.
Add Application To Azure
- Sonraki ekranda Uygulamamızın adını yazıyoruz ve Type alanında WEB APPLICATION AND/OR WEB API seçeneğini seçiyoruz.
Azure tell us about your application
- Şimdiki ekranda artık uygulamamızın özelliklerini tanımlıyacağız.
Azure App Properties
- Karşımıza gelen ekranda ACCESS WEB APIS IN OTHER APPLICATIONS sekmesi altında ClientId miz bulunuyor. Web api kullanmak için buna ihtiyacımız olacak.
Azure ClientId
- Daha sonra aşağıdaki ekrandan CONFIGURE sekmesine tıklıyoruz.
Azure Application Configure
- CONFIGURE sekmesindeki ADD APPLICATION diyoruz.
Azure Add Application
- Permission to other application alanından Dynamics CRM Online’ı seçiyoruz.
Azure Application Permission
- Uygulamamızı ekledikten sonra Delegate Permission’ ı Access CRM Online as organization users yapıyoruz.
Azure Delegate Permission
Kaynak: https://msdn.microsoft.com/en-us/dynamics/crm/mt149065.aspx{:}{:en}NOT: I think we could not use Azure Active Directory in Dynamics Crm Trial.
Microsoft, Dynamics CRM Online 2015 Update 1 ile beraber Organization Service (2011 SOAP endpoint) ve Organization Data Service (OData v2 REST endpoint) teknolojilerinin yerini alacak olan Dynamics Crm Web API yi tanıttı . Crm Web Api’ nin Open Data Protocol (ODATA) standardını kullanıyor (ODATA standardı hakkında detaylı bilgiye buradaki adresten ulaşabilirsiniz) .
SOAP vs ODATA vs REST karşılaştırma için buradaki adrese bakabilirsiniz.
Dynamics Crm Web Api kullanabilmek için öncelikle Crm Online kullanıyor olmalısınız. On Premise versiyonlar için ne zaman Web Api desteği geleceği konusunda Microsoft tarafından henüz bir bilgi sunulmadı. Eğer Crm Online kullanıyoarsanız öncelikle Web Api önizlemesini aktif etmemiz gerekiyor. Bu arada kullanacağımız Crm Web Api servisinin önizleme versiyonu olduğunu unutmamak gerek.
Dynamics CRM Web API’ yi aktif etmek için öncelikle Ayarlar>Yönetim

Dynamics Crm Web Api Preview System Setting
>Sistem Ayarları

Dynamics Crm Web Api System Setting
>Önizlemeler sekmesine gelip lisans koşullarını kabul edip Dynamics Crm Web API önizlemesini etkinleştir diyoruz.

Dynamics Crm Web API Activation
Bu kadar. Artık Dynamics CRM Web API’ yi kullanabiliriz. Eğer Crm Web API’ yi CRM dışarısındaki bir uygulamada kullanmak istiyorsak öncelikle uygulamamızı kayıt etmemiz gerekiyor. Bu sayede uygulamamıza has ClientId ve redirectURI alabileceğiz(ClientId ve redirectURI konusuna yazının ilerleyen bölümlerinde deyineceğim). Eğer Web API’ yi CRM içerisinde kullanacak isek böyle bir kayıt işlemine gerek yok.
Web API kullanabilmemiz için neden uygulamalarımızı kayıt etmeliyiz?
Microsoft bu soruya Organizasyonların hangi uygulamaların hangi verilere erişmesi gerektiğinin yönetilebilmesi için Web API kullanan uygulamalarımızı kayıt etmemiz gerektiğini söylüyor. Her uygulama için ayrı kayıt işlemi yapmamız zorunlu olmasa da gerekli olduğunu söylüyor (tek kayıt işlemi ile birden fazla uygulamamızda CRM Web API kullanabiliyoruz). Data detaylı bilgi için Dynamics CRM Web API register application sayfasına bakabilirsiniz.
Uygulamamızı kayıt edebilmemiz için(Crm Online kullandığımız için) Azure hesabımızın olması gerekiyor(trial hesap da oluyor).
NOT: Uygulama kayıt işlemi ücretsiz. Fakat Azure hesabı (trial yada normal) açarken güvenlik amaçlı kredi kartı bilgisi isteniyor.
Uygulamamızı kayıt edebilmemiz için Dynamics CRM Online (Office 365) hesabımızı Azure hesabımız ile ilişkilendirmemiz gerekiyor. Bu ilişkilendirme ile Dynamics CRM organizasyonumuzun kurulu olduğu sunucudaki Active Directory erişim elde ediyoruz. Şimdi bu işlemi adım adım yapalım:
- https://manage.windowsazure.com/ adresine giderek Azure hesabımıza giriş yapıyoruz. Eğer CRM Online (Office 365) demo hesabı alıp Azure portalına girmeye çalıştıysanız aşağıdaki gibi bir hata ekranı ile karşılaşacaksınız. Onun için Azure hesabınıza bağlanırken azure aboneliği bulunan mail adresinizi girdiğinizden emin olmalısınız.
Dynamics CRM Online Azure No subscriptions found
- Azure hesabınıza giriş yaptıysanız sizi aşağıdaki gibi bir panel karşılayacak.
Azure Panel
- Sol Alttaki New butonuna tıklayarak APP SERVICES > ACTIVE DIRECTORY > DIRECTORY > CUSTOM CREATE diyoruz.
Dynamics CRM Online Manage Azure Active Directory
- Karşımıza gelen formda DIRECTORY alanından Use existing directory diyoruz ve alttaki I am ready to be signed out kutucuğunu işaretleyip tamam diyoruz.
CRM Online Connect Active Directory
CRM Online Manage Active Directory
- Tamam dediğimizde azure portalından otomatik olarak çıkış yapılacak. Çıkış yapıldıktan sonra CRM Online (Office 365) hesabımızla azure portalına yeniden giriş yapıyoruz. (Eğer daha önceden Office 365 hesabınızla giriş yapmaya çalıştıysanız otomatik olarak CRM Online (Office 365) hesabını azure hesabınıza bağlayacak. Sonra ise azure portalımızdan sol taraftaki ACTIVE DIRECTORY sekmesini seçiyoruz ve DIRECTORY alanındaki oluşmuş olan Varsayılan Dizin’ e tıklıyoruz.
CRM Online Access Active Directory Via Azure
- Daha sonra APPLICATION sekmesine gelip aşağıdan ADD butonuna tıklıyoruz.
CRM Online Add Application Azure
- Karşımıza gelen formda Add an application my organization is developing seçeneği seçerek devam ediyoruz.
Add Application To Azure
- Sonraki ekranda Uygulamamızın adını yazıyoruz ve Type alanında WEB APPLICATION AND/OR WEB API seçeneğini seçiyoruz.
Azure tell us about your application
- Şimdiki ekranda artık uygulamamızın özelliklerini tanımlıyacağız.
Azure App Properties
- Karşımıza gelen ekranda ACCESS WEB APIS IN OTHER APPLICATIONS sekmesi altında ClientId miz bulunuyor. Web api kullanmak için buna ihtiyacımız olacak.
Azure ClientId
- Daha sonra aşağıdaki ekrandan CONFIGURE sekmesine tıklıyoruz.
Azure Application Configure
- CONFIGURE sekmesindeki ADD APPLICATION diyoruz.
Azure Add Application
- Permission to other application alanından Dynamics CRM Online’ı seçiyoruz.
Azure Application Permission
- Uygulamamızı ekledikten sonra Delegate Permission’ ı Access CRM Online as organization users yapıyoruz.
Azure Delegate Permission
Kaynak: https://msdn.microsoft.com/en-us/dynamics/crm/mt149065.aspx