[{"id":69,"title":"Microsoft 365 ve Active Directory E\u015fitleme Sorunlar\u0131nda Kontrol Edilmesi Gerekenler","content":"<p>Azure AD Connect (ADConnect) kullanarak Active Directory (AD) ile Microsoft 365 aras\u0131nda senkronizasyon yap\u0131yorsan\u0131z, bazen kullan\u0131c\u0131lar\u0131n beklendi\u011fi gibi e\u015fitlenmedi\u011fini g&ouml;rebilirsiniz.<\/p>\r\n<p><strong>\"ADConnect &ccedil;al\u0131\u015f\u0131yor, senkronizasyon komutu ba\u015far\u0131l\u0131 oldu, ancak kullan\u0131c\u0131 Microsoft 365'te g&ouml;r&uuml;nm&uuml;yor!\"<\/strong><\/p>\r\n<p>Peki, bu durumda neleri kontrol etmelisiniz? \u0130\u015fte ad\u0131m ad\u0131m incelemeniz gerekenler:<\/p>\r\n<h2><strong>1\ufe0f\u20e3 Kullan\u0131c\u0131 Do\u011fru OU (Organizational Unit) \u0130&ccedil;inde mi?<\/strong><\/h2>\r\n<p>ADConnect, yaln\u0131zca belirlenen OU&rsquo;lardaki kullan\u0131c\u0131lar\u0131 e\u015fitler. Kullan\u0131c\u0131 yanl\u0131\u015f OU&rsquo;da ise senkronizasyon d\u0131\u015f\u0131nda kal\u0131r.<\/p>\r\n<p>\u2714&nbsp;<strong>Kontrol:<\/strong><\/p>\r\n<ul>\r\n<li>\r\n<p><strong>ADConnect Y&ouml;netici Konsolu<\/strong>&nbsp;&rarr;&nbsp;<strong>\"Synchronization Rules\"<\/strong>&nbsp;&rarr;&nbsp;<strong>\"Organizational Unit Selection\"<\/strong><\/p>\r\n<\/li>\r\n<li>\r\n<p><strong>PowerShell:<\/strong>&nbsp;<code>Get-ADSyncConnector | Select-Object Name, Partition<\/code><\/p>\r\n<\/li>\r\n<\/ul>\r\n<h2><strong>2\ufe0f\u20e3 UPN (User Principal Name) Format\u0131 Do\u011fru mu?<\/strong><\/h2>\r\n<p>Kullan\u0131c\u0131n\u0131n UPN&rsquo;si (<code>user@firmaadi.com<\/code>), Microsoft 365&rsquo;teki do\u011frulanm\u0131\u015f domain ile ayn\u0131 olmal\u0131d\u0131r.<\/p>\r\n<p>\u2714&nbsp;<strong>Kontrol:<\/strong><\/p>\r\n<ul>\r\n<li>\r\n<p><strong>AD Kullan\u0131c\u0131 &Ouml;zellikleri<\/strong>&nbsp;&rarr;&nbsp;<strong>\"Account\"<\/strong>&nbsp;sekmesi &rarr;&nbsp;<strong>UPN soneki do\u011fru domain mi?<\/strong><\/p>\r\n<\/li>\r\n<li>\r\n<p><strong>PowerShell:<\/strong>&nbsp;<code>Get-ADUser -Identity Kullan\u0131c\u0131Ad\u0131 -Properties UserPrincipalName<\/code><\/p>\r\n<\/li>\r\n<\/ul>\r\n<blockquote>\r\n<p><strong>&Ouml;nemli:<\/strong>&nbsp;E\u011fer UPN yanl\u0131\u015fsa, kullan\u0131c\u0131 Azure AD&rsquo;ye e\u015fitlenmez veya farkl\u0131 bir isimle g&ouml;r&uuml;nebilir.<\/p>\r\n<\/blockquote>\r\n<h2><strong>3\ufe0f\u20e3 ProxyAddress (E-posta Adresleri) Tan\u0131ml\u0131 m\u0131?<\/strong><\/h2>\r\n<p>Exchange Online&rsquo;da kullan\u0131c\u0131 olu\u015fabilmesi i&ccedil;in&nbsp;<code>proxyAddresses<\/code>&nbsp;&ouml;zniteli\u011finde SMTP adresleri tan\u0131ml\u0131 olmal\u0131d\u0131r.<\/p>\r\n<p>\u2714&nbsp;<strong>Kontrol:<\/strong><\/p>\r\n<ul>\r\n<li>\r\n<p><strong>AD Users and Computers<\/strong>&nbsp;&rarr;&nbsp;<strong>\"Attribute Editor\"<\/strong>&nbsp;&rarr;&nbsp;<strong>\"proxyAddresses\"<\/strong>&nbsp;alan\u0131<\/p>\r\n<\/li>\r\n<li>\r\n<p><strong>PowerShell:<\/strong>&nbsp;<code>Get-ADUser -Identity Kullan\u0131c\u0131Ad\u0131 -Properties proxyAddresses<\/code><\/p>\r\n<\/li>\r\n<\/ul>\r\n<blockquote>\r\n<p><strong>Dikkat:<\/strong>&nbsp;Birincil e-posta (<code>SMTP:user@firmaadi.com<\/code>) b&uuml;y&uuml;k harfle yaz\u0131lmal\u0131, di\u011fer alternatif e-postalar k&uuml;&ccedil;&uuml;k harfle (<code>smtp:user@eski-firma.com<\/code>) belirtilmelidir.<\/p>\r\n<\/blockquote>\r\n<h2><strong>4\ufe0f\u20e3 Kullan\u0131c\u0131 Devre D\u0131\u015f\u0131 (Disabled) Durumda m\u0131?<\/strong><\/h2>\r\n<ul>\r\n<li>\r\n<p>AD&rsquo;de&nbsp;<strong>\"Account disabled\"<\/strong>&nbsp;olan kullan\u0131c\u0131lar varsay\u0131lan olarak e\u015fitlenmez.<\/p>\r\n<\/li>\r\n<li>\r\n<p>Baz\u0131 GPO&rsquo;lar veya script&rsquo;ler kullan\u0131c\u0131y\u0131 senkronizasyon d\u0131\u015f\u0131nda b\u0131rakabilir.<\/p>\r\n<\/li>\r\n<\/ul>\r\n<p>\u2714&nbsp;<strong>Kontrol:<\/strong><\/p>\r\n<ul>\r\n<li>\r\n<p><strong>AD Users and Computers<\/strong>&nbsp;&rarr; Kullan\u0131c\u0131 &ouml;zellikleri &rarr;&nbsp;<strong>\"Account is disabled\"<\/strong><\/p>\r\n<\/li>\r\n<li>\r\n<p><strong>PowerShell:<\/strong>&nbsp;<code>Get-ADUser -Identity Kullan\u0131c\u0131Ad\u0131 -Properties Enabled<\/code><\/p>\r\n<\/li>\r\n<\/ul>\r\n<h2><strong>5\ufe0f\u20e3 Azure AD Connect Servisi &Ccedil;al\u0131\u015f\u0131yor mu?<\/strong><\/h2>\r\n<p>Bazen&nbsp;<code>Start-ADSyncSyncCycle -PolicyType Delta<\/code>&nbsp;komutu &ccedil;al\u0131\u015fsa bile arka planda senkronizasyon servisi durmu\u015f olabilir.<\/p>\r\n<p>\u2714&nbsp;<strong>Kontrol:<\/strong><\/p>\r\n<ul>\r\n<li>\r\n<p><strong>Services.msc<\/strong>&nbsp;&rarr;&nbsp;<strong>\"Microsoft Azure AD Sync\"<\/strong>&nbsp;servisinin&nbsp;<strong>\"Running\"<\/strong>&nbsp;durumda oldu\u011funu do\u011frulay\u0131n.<\/p>\r\n<\/li>\r\n<li>\r\n<p><strong>Event Viewer<\/strong>&nbsp;&rarr;&nbsp;<strong>Applications and Services Logs<\/strong>&nbsp;&rarr;&nbsp;<strong>Azure AD Sync<\/strong>&nbsp;hatalar\u0131n\u0131 inceleyin.<\/p>\r\n<\/li>\r\n<\/ul>\r\n<h2><strong>\ud83d\udca1 Ek Kontroller:<\/strong><\/h2>\r\n<ul>\r\n<li>\r\n<p><strong>E\u015fitleme Profilini Do\u011frulay\u0131n:<\/strong><\/p>\r\n<ul>\r\n<li>\r\n<p><strong>\"Staging Mode\"<\/strong>&nbsp;aktif mi? (Staging modda de\u011fi\u015fiklikler test edilir ancak Azure AD&rsquo;ye aktar\u0131lmaz.)<\/p>\r\n<\/li>\r\n<\/ul>\r\n<\/li>\r\n<li>\r\n<p><strong>Filtreleme Kurallar\u0131n\u0131 Kontrol Edin:<\/strong><\/p>\r\n<ul>\r\n<li>\r\n<p><strong>\"Scope Filtering\"<\/strong>&nbsp;ayarlar\u0131 kullan\u0131c\u0131y\u0131 engelliyor olabilir.<\/p>\r\n<\/li>\r\n<\/ul>\r\n<\/li>\r\n<li>\r\n<p><strong>Azure AD Connect Upgrade Gerekli mi?<\/strong><\/p>\r\n<ul>\r\n<li>\r\n<p>Eski bir s&uuml;r&uuml;m kullan\u0131yorsan\u0131z, g&uuml;ncelleme yap\u0131n.<\/p>\r\n<\/li>\r\n<\/ul>\r\n<\/li>\r\n<\/ul>\r\n<h2><strong>\ud83d\udd27 Sorun Giderme Ad\u0131mlar\u0131:<\/strong><\/h2>\r\n<ol start=\"1\">\r\n<li>\r\n<p><strong>Delta Sync Ba\u015flat:<\/strong><\/p>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div tabindex=\"0\" role=\"button\">\r\n<div>\r\n<div>\r\n<pre data-enlighter-language=\"generic\">Start-ADSyncSyncCycle -PolicyType Delta<\/pre>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<pre>&nbsp;<\/pre>\r\n<\/div>\r\n<\/li>\r\n<li>\r\n<p><strong>Tam Senkronizasyon Zorla (Gerekirse):<\/strong><\/p>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>&nbsp;<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<pre data-enlighter-language=\"generic\">Start-ADSyncSyncCycle -PolicyType Initial<\/pre>\r\n&nbsp;<\/div>\r\n<\/li>\r\n<li>\r\n<p><strong>Azure AD Connect Health ile Sorunlar\u0131 \u0130zle:<\/strong><\/p>\r\n<pre data-enlighter-language=\"generic\">Azure Portal&nbsp;&rarr;&nbsp;Azure AD Connect Health<\/pre>\r\n&nbsp;<\/li>\r\n<\/ol>\r\n<p>Active Directory ve Microsoft 365 e\u015fitleme sorunlar\u0131n\u0131 &ccedil;&ouml;zmek i&ccedil;in&nbsp;<strong>OU se&ccedil;imi, UPN, proxyAddress, kullan\u0131c\u0131 durumu ve ADConnect servis durumu<\/strong>&nbsp;en kritik noktalard\u0131r. Bu ad\u0131mlar\u0131 kontrol ederek sorunun kayna\u011f\u0131n\u0131 h\u0131zl\u0131ca tespit edebilirsiniz.<\/p>\r\n<p>E\u011fer hala sorun devam ediyorsa,&nbsp;<strong>Azure AD Connect Synchronization Service Manager<\/strong>&nbsp;&uuml;zerinden detayl\u0131 hata loglar\u0131n\u0131 inceleyebilirsiniz.<\/p>\r\n<p><strong>#AzureAD #ActiveDirectory #Microsoft365 #ADConnect #SenkronizasyonSorunlar\u0131<\/strong><\/p>","excerpt":"Azure AD Connect (ADConnect) kullanarak Active Directory (AD) ile Microsoft 365 aras\u0131nda senkronizasyon yap\u0131yorsan\u0131z, bazen kullan\u0131c\u0131lar\u0131n...","created_at":"2025-05-03 10:52:42","updated_at":"2026-09-06 18:57:14","category_id":8,"view_count":860,"reading_time":3,"status":"published","editor_choice":0,"is_editor_choice":0,"published_at":"2025-05-03 10:52:42","featured_image":"resimyok.jpg","slug":"microsoft-365-adconnect","category_name":"Active Directory \/Azure","category_slug":"active-directory-azure","category_color":"#f59e0b"},{"id":86,"title":"Azure Key Vault Nedir?","content":"Bulut bili\u015fimde hassas verilerin g\u00fcvenli bir \u015fekilde saklanmas\u0131 ve y\u00f6netilmesi, modern uygulama geli\u015ftirme ve sistem y\u00f6netimi i\u00e7in hayati \u00f6neme sahiptir. Microsoft Azure\u2019un sundu\u011fu Azure Key Vault , bu ihtiya\u00e7lara \u00e7\u00f6z\u00fcm sunan g\u00fc\u00e7l\u00fc bir hizmettir. Ancak, Key Vault i\u00e7indeki <strong data-spm-anchor->Secrets<\/strong>, <strong data-spm-anchor->Keys <\/strong>ve <strong data-spm-anchor->Certificates <\/strong>eri\u015fimi kontrol etmek i\u00e7in do\u011fru yap\u0131land\u0131rmalar\u0131n yap\u0131lmas\u0131 gerekmektedir. Bu yaz\u0131da, Azure Key Vault'ta eri\u015fim kontrol\u00fc i\u00e7in en yayg\u0131n y\u00f6ntem olan Eri\u015fim Politikalar\u0131 (Access Policies) bilgi verece\u011fim; Azure Key Vault, uygulamalar, hizmetler ve sistemler i\u00e7in gerekli olan hassas verilerin (parolalar, API anahtarlar\u0131, sertifikalar, \u015fifreleme anahtarlar\u0131 vb.) g\u00fcvenli bir \u015fekilde saklanmas\u0131n\u0131 ve eri\u015fimini sa\u011flar. Temel olarak \u00fc\u00e7 ana bile\u015feni vard\u0131r: <ul data-spm-anchor-> <li><strong data-spm-anchor->Secrets: <\/strong>Parolalar, ba\u011flant\u0131 dizeleri gibi metin veya ikili veriler.<\/li> <li><strong data-spm-anchor->Keys: <\/strong>\u015eifreleme i\u015flemleri i\u00e7in kullan\u0131lan asimetrik veya simetrik anahtarlar.<\/li> <li><strong data-spm-anchor->Certificates: <\/strong>SSL\/TLS sertifikalar\u0131 ve ili\u015fkili \u00f6zel anahtarlar.<\/li> <\/ul> <div ><\/div> Key Vault, bu \u00f6\u011felere eri\u015fimi s\u0131n\u0131rlamak ve denetlemek i\u00e7in iki ana y\u00f6ntem sunar: <strong>Eri\u015fim Politikalar\u0131 (Access Policies) <\/strong>ve <strong data-spm-anchor->Rol Tabanl\u0131 Eri\u015fim Kontrol\u00fc (RBAC - Role-Based Access Control)<\/strong> <h3><strong>Access Policies Nedir?<\/strong><\/h3> Eri\u015fim Politikalar\u0131, Azure Key Vault\u2019ta s\u0131rlar, anahtarlar ve sertifikalara eri\u015fimi tan\u0131mlamak i\u00e7in kullan\u0131lan temel yap\u0131land\u0131rma y\u00f6ntemidir. Her bir politika a\u015fa\u011f\u0131daki bile\u015fenleri i\u00e7erir: <ol start=\"1\"> <li><strong>Kimlik (Identity): <\/strong>Kullan\u0131c\u0131, servis sorumlusu (service principal) veya uygulama gibi Azure Active Directory'de tan\u0131ml\u0131 bir kimlik.<\/li> <li><strong>\u0130zinler (Permissions): <\/strong>Bu kimli\u011fin Key Vault \u00f6\u011feleri \u00fczerinde hangi i\u015flemleri yapabilece\u011fini belirler. <ul> <li><strong>Secrets i\u00e7in: <\/strong>Get, List, Set, Delete, Recover, Backup, Restore<\/li> <li><strong>Keys i\u00e7in: <\/strong>Get, List, Create, Update, Delete, Recover, Backup, Restore<\/li> <li><strong>Certificates i\u00e7in: <\/strong>Get, List, Delete, Create, Import, Update, Manage Contacts, Manage Issuers<\/li> <\/ul> <\/li> <\/ol> <div ><\/div> <p data-spm-anchor->Eri\u015fim politikalar\u0131, do\u011frudan Key Vault d\u00fczeyinde tan\u0131mlan\u0131r ve her bir \u00f6\u011fe i\u00e7in ayr\u0131 ayr\u0131 yap\u0131land\u0131r\u0131labilir.<\/p> <h3 data-spm-anchor-><strong data-spm-anchor->Eri\u015fim Politikalar\u0131 Nas\u0131l \u00c7al\u0131\u015f\u0131r?<\/strong><\/h3> Eri\u015fim politikalar\u0131, Azure Key Vault\u2019ta izin y\u00f6netimini \u015fu \u015fekilde sa\u011flar: <h4><strong>A. Kimli\u011fe Dayal\u0131 Eri\u015fim<\/strong><\/h4> <ul> <li>Eri\u015fim politikalar\u0131, belirli bir Azure AD kimli\u011fi (kullan\u0131c\u0131, uygulama veya grup) i\u00e7in tan\u0131mlan\u0131r.<\/li> <li>\u00d6rne\u011fin, bir geli\u015ftiriciye yaln\u0131zca s\u0131rlar\u0131 okuma izni verebilirsiniz.<\/li> <\/ul> <h4><strong>B. \u00d6\u011fe Seviyesinde \u0130zin Y\u00f6netimi<\/strong><\/h4> <ul> <li>S\u0131rlar, anahtarlar ve sertifikalar i\u00e7in ayr\u0131 ayr\u0131 izinler tan\u0131mlanabilir.<\/li> <li>\u00d6rne\u011fin, bir uygulaman\u0131n yaln\u0131zca s\u0131rlar\u0131 okumasine izin verilirken, bir g\u00fcvenlik grubunun anahtarlar\u0131 y\u00f6netmesine izin verilebilir.<\/li> <\/ul> <h4 data-spm-anchor-><strong data-spm-anchor->C. Hiyerar\u015fik Yap\u0131<\/strong><\/h4> <ul> <li>Bir Key Vault'a tan\u0131mlanan t\u00fcm eri\u015fim politikalar\u0131, o Vault i\u00e7indeki t\u00fcm \u00f6\u011felere uygulan\u0131r.<\/li> <li>Ancak, her \u00f6\u011fe i\u00e7in farkl\u0131 izin kombinasyonlar\u0131 tan\u0131mlanabilir.<\/li> <\/ul> <h4><strong>D. Eri\u015fim Kontrol\u00fc ve G\u00fcvenlik<\/strong><\/h4> <ul> <li>Eri\u015fim politikalar\u0131, Azure AD kimlik do\u011frulama mekanizmalar\u0131yla entegredir.<\/li> <li>Kimlik do\u011frulamas\u0131 ba\u015far\u0131l\u0131 olana g\u00f6re, ilgili izinler uygulan\u0131r.<\/li> <\/ul> <h3><strong data-spm-anchor->Eri\u015fim Politikalar\u0131 vs. Azure RBAC<\/strong><\/h3> <p data-spm-anchor->Azure Key Vault\u2019ta eri\u015fim kontrol\u00fc i\u00e7in iki ana y\u00f6ntem vard\u0131r:<\/p> <div ><\/div> <div > <div > <table > <thead > <tr > <th  scope=\"col\"> <div >\u00d6zellik<\/div><\/th> <th  scope=\"col\"> <div ><strong>Eri\u015fim Politikalar\u0131 (Access Policies)<\/strong><\/div><\/th> <th  scope=\"col\"> <div ><strong>Azure RBAC<\/strong><\/div><\/th> <\/tr> <\/thead> <tbody> <tr > <td > <div ><strong>Kapsam<\/strong><\/div><\/td> <td  data-spm-anchor-> <div >Key Vault seviyesinde tan\u0131mlan\u0131r<\/div><\/td> <td > <div >Abonelik veya kaynak grubu seviyesinde tan\u0131mlanabilir<\/div><\/td> <\/tr> <tr > <td > <div ><strong>\u0130zinlerin Tan\u0131m\u0131<\/strong><\/div><\/td> <td > <div >Secret, keys ve sertifikalar i\u00e7in ayr\u0131 ayr\u0131 yap\u0131land\u0131r\u0131labilir<\/div><\/td> <td > <div >Rol bazl\u0131 genel izinler sunar (\u00f6rne\u011fin, Key Vault Contributor)<\/div><\/td> <\/tr> <tr > <td > <div ><strong>Kullan\u0131m Kolayl\u0131\u011f\u0131<\/strong><\/div><\/td> <td > <div >Daha esnek ve ayr\u0131nt\u0131l\u0131 kontrol sa\u011flar<\/div><\/td> <td > <div >Daha basit, ancak daha az \u00f6zelle\u015ftirilebilir<\/div><\/td> <\/tr> <tr > <td > <div ><strong>Uyum S\u00fcreci<\/strong><\/div><\/td> <td > <div >Geleneksel ve yayg\u0131n kullan\u0131lan y\u00f6ntemdir<\/div><\/td> <td > <div >Yeni ve geli\u015fmekte olan bir y\u00f6ntemdir<\/div><\/td> <\/tr> <\/tbody> <\/table> <ul> <li><strong>Eri\u015fim Politikalar\u0131: <\/strong>Hassas ve ayr\u0131nt\u0131l\u0131 eri\u015fim denetimi gerekti\u011finde tercih edilir.<\/li> <li data-spm-anchor-><strong>Azure RBAC: <\/strong>Genel eri\u015fim rolleri tan\u0131mlanmas\u0131 gerekti\u011finde veya \u00e7ok say\u0131da Key Vault y\u00f6netilmesi gerekti\u011finde tercih edilir.<\/li> <\/ul> <h3><strong data-spm-anchor->Eri\u015fim Politikalar\u0131 Olu\u015fturma ve Y\u00f6netme<\/strong><\/h3> <p data-spm-anchor->Azure portal, PowerShell veya Azure CLI kullanarak eri\u015fim politikalar\u0131 olu\u015fturabilir ve y\u00f6netebilirsiniz.<\/p> <h4><strong>Azure Portal \u00dczerinden Eri\u015fim Politikas\u0131 Olu\u015fturma<\/strong><\/h4> <ol start=\"1\"> <li>Azure portal\u0131nda ilgili Key Vault\u2019a gidin.<\/li> <li>Sol men\u00fcden <strong>Eri\u015fim \u0130lkeleri (Access Policies) <\/strong>se\u00e7ene\u011fini se\u00e7in.<\/li> <li><strong>Eri\u015fim \u0130lkesi Ekle (Add Access Policy) <\/strong>butonuna t\u0131klay\u0131n.<\/li> <li><strong>Anahtar, S\u0131r veya Sertifika \u0130zinleri (Key, Secret or Certificate Permissions) <\/strong>b\u00f6l\u00fcm\u00fcnden uygun izinleri se\u00e7in.<\/li> <li><strong>Se\u00e7ili As\u0131l (Selected Principal) <\/strong>alan\u0131nda eri\u015fim izni verilecek kullan\u0131c\u0131, uygulama veya grubu se\u00e7in.<\/li> <li><strong>Ekle (Add) <\/strong>butonuna t\u0131klayarak politikay\u0131 kaydedin.<\/li> <\/ol> <h4><strong data-spm-anchor-> PowerShell ile Eri\u015fim Politikas\u0131 Y\u00f6netimi<\/strong><\/h4> <pre  data-enlighter-language=\"powershell\"># Eri\u015fim politikas\u0131 olu\u015fturma Set-AzKeyVaultAccessPolicy -VaultName \"MyKeyVault\" ` -UserPrincipalName \"user@example.com\" ` -PermissionsToSecrets Get, List, Set ` -PermissionsToKeys Get, List, Create<\/pre> <h4><strong data-spm-anchor->Azure CLI ile Eri\u015fim Politikas\u0131 Y\u00f6netimi<\/strong><\/h4> <pre  data-enlighter-language=\"powershell\"># Eri\u015fim politikas\u0131 olu\u015fturma az keyvault set-policy --name \"MyKeyVault\" \\ --upn \"user@example.com\" \\ --secret-permissions get list set \\ --key-permissions get list create<\/pre> <h3><strong data-spm-anchor-> Tavsiyeler;<\/strong><\/h3> <ul> <li data-spm-anchor-><strong>En Az Ayr\u0131cal\u0131k \u0130lkesi (Principle of Least Privilege): <\/strong>Kullan\u0131c\u0131lara veya uygulamalara sadece ihtiya\u00e7 duyduklar\u0131 izinleri verin.<\/li> <li><strong>D\u00fczenli \u0130nceleme: <\/strong>Eri\u015fim politikalar\u0131n\u0131 d\u00fczenli olarak g\u00f6zden ge\u00e7irin ve art\u0131k gerekli olmayan izinleri kald\u0131r\u0131n.<\/li> <li><strong>\u0130\u015flev Ay\u0131r\u0131m\u0131 (Separation of Duties): <\/strong>Kritik i\u015flemler i\u00e7in farkl\u0131 roller tan\u0131mlay\u0131n (\u00f6rne\u011fin, biri sadece okuma, di\u011feri yazma iznine sahip olabilir).<\/li> <li><strong>Denetim ve \u0130zleme: <\/strong>Azure Monitor ve Azure Security Center ile eri\u015fim aktivitelerini izleyin.<\/li> <li><strong>Yedekleme ve Kurtarma: <\/strong>Eri\u015fim politikalar\u0131n\u0131 d\u00fczenli olarak yedekleyin ve ola\u011fan\u00fcst\u00fc durumlar i\u00e7in kurtarma plan\u0131 haz\u0131rlay\u0131n.<\/li> <\/ul> Azure Key Vault\u2019ta <strong>Eri\u015fim Politikalar\u0131 <\/strong>, secret , keys ve sertifikalara eri\u015fimi g\u00fcvenli ve kontroll\u00fc bir \u015fekilde y\u00f6netmenin en etkili y\u00f6ntemlerinden biridir. \u00d6zellikle hassas verilere ayr\u0131nt\u0131l\u0131 eri\u015fim denetimi gerekti\u011finde bu yakla\u015f\u0131m, hem esnek hem de g\u00fcvenli bir yap\u0131 sunar. Ancak, Azure RBAC gibi yeni y\u00f6ntemler de geli\u015fmekte ve baz\u0131 senaryolarda daha pratik \u00e7\u00f6z\u00fcmler sunmaktad\u0131r. Hangi y\u00f6ntemi se\u00e7erseniz se\u00e7in, izin y\u00f6netiminde <strong>g\u00fcvenlik <\/strong>, <strong>esneklik <\/strong>ve <strong>kullan\u0131labilirlik <\/strong>dengesini korumak hayati \u00f6neme sahiptir. Eri\u015fim politikalar\u0131n\u0131 olu\u015ftururken, her zaman test ortam\u0131nda \u00f6nceden sim\u00fclasyon yap\u0131n. Ger\u00e7ek ortamlarda de\u011fi\u015fiklikler \u00f6ncesi t\u00fcm izinleri dikkatle g\u00f6zden ge\u00e7irin. <\/div> <\/div>","excerpt":"Bulut bili\u015fimde hassas verilerin g\u00fcvenli bir \u015fekilde saklanmas\u0131 ve y\u00f6netilmesi, modern uygulama geli\u015ftirme ve sistem y\u00f6netimi i\u00e7in hayati...","created_at":"2025-05-01 12:06:32","updated_at":"2026-09-06 16:51:29","category_id":8,"view_count":660,"reading_time":6,"status":"published","editor_choice":0,"is_editor_choice":0,"published_at":"2025-05-01 12:06:32","featured_image":"resimyok.jpg","slug":"azure-key-vault-nedir","category_name":"Active Directory \/Azure","category_slug":"active-directory-azure","category_color":"#f59e0b"},{"id":130,"title":"Azure Portal'da Uygulama Kayd\u0131 Olu\u015fturma","content":"Azure platformunda uygulamalar\u0131n\u0131z\u0131n Azure Active Directory (Azure AD) kirac\u0131n\u0131zdaki kaynaklara g\u00fcvenli bir \u015fekilde eri\u015febilmesi i\u00e7in uygulama kayd\u0131 (App Registration) olu\u015fturman\u0131z gerekir. Bu i\u015flem, uygulaman\u0131za bir kimlik kazand\u0131rarak OAuth 2.0\/OpenID Connect protokolleri \u00fczerinden kimlik do\u011frulama ve yetkilendirme yapman\u0131z\u0131 sa\u011flar. Bu rehberde, Azure Portal \u00fczerinden uygulama kayd\u0131 olu\u015fturma s\u00fcrecini detayl\u0131 olarak ele alaca\u011f\u0131z. <h2>Neden Uygulama Kayd\u0131 Olu\u015fturmal\u0131y\u0131z?<\/h2> Uygulama kayd\u0131 olu\u015fturmak: <ul> <li>Uygulaman\u0131za Azure AD taraf\u0131ndan y\u00f6netilen bir kimlik kazand\u0131r\u0131r<\/li> <li>Microsoft Graph API, Azure REST API veya kendi API'lerinize g\u00fcvenli eri\u015fim sa\u011flar<\/li> <li>Single Sign-On (SSO) \u00f6zelli\u011fini uygulaman\u0131za entegre etmenizi sa\u011flar<\/li> <li>Kullan\u0131c\u0131 ad\u0131\/parola bilgilerini uygulaman\u0131zda saklamadan g\u00fcvenli kimlik do\u011frulama yapman\u0131z\u0131 sa\u011flar<\/li> <\/ul> <h2>\u00d6n Gereksinimler<\/h2> <ul> <li>Aktif bir Azure hesab\u0131<\/li> <li>Azure Active Directory \u00fczerinde uygulama kaydetme yetkisi (genellikle Global Administrator, Cloud Application Administrator veya Application Administrator rollerine sahip kullan\u0131c\u0131lar)<\/li> <\/ul> <h2>Ad\u0131m 1: Azure Portal'a Giri\u015f<\/h2> <ol> <li><a href=\"https:\/\/portal.azure.com\/\">Azure Portal<\/a>'a gidin ve hesab\u0131n\u0131zla oturum a\u00e7\u0131n.<\/li> <li>\u00dcst arama \u00e7ubu\u011funda \"Azure Active Directory\" yaz\u0131p se\u00e7in.<\/li> <li>Sol men\u00fcden \"App registrations\" (Uygulama kay\u0131tlar\u0131) se\u00e7ene\u011fine t\u0131klay\u0131n.<\/li> <\/ol> <h2>Ad\u0131m 2: Yeni Uygulama Kayd\u0131 Olu\u015fturma<\/h2> <ol> <li>\"New registration\" (Yeni kay\u0131t) d\u00fc\u011fmesine t\u0131klay\u0131n.<\/li> <li>A\u015fa\u011f\u0131daki bilgileri doldurun: <ul> <li><strong>Name<\/strong> (Ad): Uygulaman\u0131z\u0131n ad\u0131n\u0131 girin (\u00f6rne\u011fin, \"MyCompanyApp\")<\/li> <li><strong>Supported account types<\/strong> (Desteklenen hesap t\u00fcrleri): Uygulaman\u0131z\u0131n eri\u015fmesini istedi\u011finiz hesap t\u00fcrlerini se\u00e7in: <ul> <li><strong>Accounts in this organizational directory only<\/strong> (Yaln\u0131zca bu organizasyon dizinindeki hesaplar) - Sadece kendi kirac\u0131n\u0131zdaki kullan\u0131c\u0131lar<\/li> <li><strong>Accounts in any organizational directory<\/strong> (Herhangi bir organizasyon dizinindeki hesaplar) - T\u00fcm Azure AD kirac\u0131lar\u0131ndaki kullan\u0131c\u0131lar<\/li> <li><strong>Accounts in any organizational directory and personal Microsoft accounts<\/strong> (Herhangi bir organizasyon dizinindeki hesaplar ve ki\u015fisel Microsoft hesaplar\u0131) - Azure AD kullan\u0131c\u0131lar\u0131 ve ki\u015fisel Microsoft hesaplar\u0131<\/li> <\/ul> <\/li> <li><strong>Redirect URI<\/strong> (Y\u00f6nlendirme URI'si): Kullan\u0131c\u0131lar kimlik do\u011frulamay\u0131 tamamlad\u0131ktan sonra y\u00f6nlendirilecekleri URI'yi belirtin: <ul> <li>Platform se\u00e7in (Web, SPA, iOS\/macOS, Android veya Mobile and desktop applications)<\/li> <li>URI'yi girin (\u00f6rne\u011fin, <code>https:\/\/myapp.example.com\/auth-callback<\/code>)<\/li> <\/ul> <\/li> <\/ul> <\/li> <li>\"Register\" (Kaydet) d\u00fc\u011fmesine t\u0131klay\u0131n.<\/li> <\/ol> <h2>Ad\u0131m 3: Kimlik Bilgilerini Alma<\/h2> Uygulama kayd\u0131 olu\u015fturuldu\u011funda, a\u015fa\u011f\u0131daki \u00f6nemli kimlik bilgilerini alacaks\u0131n\u0131z: <ol> <li><strong>Application (client) ID<\/strong> (Uygulama (istemci) Kimli\u011fi): Uygulaman\u0131z\u0131 benzersiz \u015fekilde tan\u0131mlayan GUID.<\/li> <li><strong>Directory (tenant) ID<\/strong> (Dizin (kirac\u0131) Kimli\u011fi): Azure AD kirac\u0131n\u0131z\u0131 tan\u0131mlayan GUID.<\/li> <\/ol> Bu de\u011ferler, uygulama kodunuzda Azure AD'ye kar\u015f\u0131 kimlik do\u011frulama yaparken kullan\u0131lacakt\u0131r. <h2>Ad\u0131m 4: \u0130stemci Gizli Anahtar\u0131 (Client Secret) Olu\u015fturma<\/h2> Web uygulamalar\u0131 veya API'ler i\u00e7in genellikle bir istemci gizli anahtar\u0131 olu\u015fturman\u0131z gerekir: <ol> <li>Sol men\u00fcden \"Certificates &amp; secrets\" (Sertifikalar ve gizli anahtarlar) se\u00e7ene\u011fine t\u0131klay\u0131n.<\/li> <li>\"Client secrets\" (\u0130stemci gizli anahtarlar\u0131) sekmesinde \"New client secret\" (Yeni istemci gizli anahtar\u0131) d\u00fc\u011fmesine t\u0131klay\u0131n.<\/li> <li>Bir a\u00e7\u0131klama girin ve s\u00fcresini se\u00e7in (6 ay, 12 ay veya 24 ay).<\/li> <li>\"Add\" (Ekle) d\u00fc\u011fmesine t\u0131klay\u0131n.<\/li> <li>Olu\u015fturulan gizli anahtar\u0131n de\u011ferini hemen kopyalay\u0131n ve g\u00fcvenli bir yerde saklay\u0131n. Bu de\u011fer, bir daha g\u00f6r\u00fcnt\u00fclenmeyecektir!<\/li> <\/ol> <h2>Ad\u0131m 5: API \u0130zinlerini Yap\u0131land\u0131rma<\/h2> Uygulaman\u0131z\u0131n API'lere eri\u015febilmesi i\u00e7in gerekli izinleri yap\u0131land\u0131r\u0131n: <ol> <li>Sol men\u00fcden \"API permissions\" (API izinleri) se\u00e7ene\u011fine t\u0131klay\u0131n.<\/li> <li>\"Add a permission\" (\u0130zin ekle) d\u00fc\u011fmesine t\u0131klay\u0131n.<\/li> <li>\u0130zin vermek istedi\u011finiz API'yi se\u00e7in (\u00f6rne\u011fin, Microsoft Graph).<\/li> <li>\u0130zin t\u00fcr\u00fcn\u00fc se\u00e7in: <ul> <li><strong>Delegated permissions<\/strong> (Yetkilendirilmi\u015f izinler): Kullan\u0131c\u0131 ad\u0131na eri\u015fim<\/li> <li><strong>Application permissions<\/strong> (Uygulama izinleri): Kullan\u0131c\u0131 olmadan arka planda eri\u015fim<\/li> <\/ul> <\/li> <li>Gerekli izinleri se\u00e7in ve \"Add permissions\" (\u0130zinleri ekle) d\u00fc\u011fmesine t\u0131klay\u0131n.<\/li> <li>Uygulama izinleri i\u00e7in, \"Grant admin consent for \" (Y\u00f6netici onay\u0131 ver) d\u00fc\u011fmesine t\u0131klayarak kirac\u0131 genelinde onay verin.<\/li> <\/ol> <h2>Ad\u0131m 6: Kimlik Do\u011frulama Ayarlar\u0131n\u0131 Yap\u0131land\u0131rma<\/h2> <ol> <li>Sol men\u00fcden \"Authentication\" (Kimlik Do\u011frulama) se\u00e7ene\u011fine t\u0131klay\u0131n.<\/li> <li>\u0130htiyac\u0131n\u0131za g\u00f6re ek y\u00f6nlendirme URI'leri ekleyin.<\/li> <li>\"Implicit grant and hybrid flows\" (\u00d6rt\u00fck hibe ve hibrit ak\u0131\u015flar) b\u00f6l\u00fcm\u00fcnde, uygulaman\u0131za uygun ak\u0131\u015f t\u00fcrlerini etkinle\u015ftirin: <ul> <li>ID tokens (Kimlik belirte\u00e7leri)<\/li> <li>Access tokens (Eri\u015fim belirte\u00e7leri)<\/li> <\/ul> <\/li> <li>\"Advanced settings\" (Geli\u015fmi\u015f ayarlar) b\u00f6l\u00fcm\u00fcnde: <ul> <li>\"Allow public client flows\" (Genel istemci ak\u0131\u015flar\u0131na izin ver): Mobil ve masa\u00fcst\u00fc uygulamalar i\u00e7in etkinle\u015ftirin.<\/li> <\/ul> <\/li> <li>\"Save\" (Kaydet) d\u00fc\u011fmesine t\u0131klay\u0131n.<\/li> <\/ol> <h2>Ad\u0131m 7: Eri\u015fim Belirteci Yap\u0131land\u0131rmas\u0131 (\u0130ste\u011fe Ba\u011fl\u0131)<\/h2> <ol> <li>Sol men\u00fcden \"Token configuration\" (Belirte\u00e7 yap\u0131land\u0131rmas\u0131) se\u00e7ene\u011fine t\u0131klay\u0131n.<\/li> <li>\"Add optional claim\" (\u0130ste\u011fe ba\u011fl\u0131 talep ekle) d\u00fc\u011fmesine t\u0131klay\u0131n.<\/li> <li>Belirte\u00e7 t\u00fcr\u00fcn\u00fc se\u00e7in (ID, Access, SAML).<\/li> <li>\u0130htiyac\u0131n\u0131z olan talepleri se\u00e7in ve \"Add\" (Ekle) d\u00fc\u011fmesine t\u0131klay\u0131n.<\/li> <\/ol> <h2>Ad\u0131m 8: Uygulama Manifestini \u00d6zelle\u015ftirme (\u0130ste\u011fe Ba\u011fl\u0131)<\/h2> <ol> <li>Sol men\u00fcden \"Manifest\" (Manifest) se\u00e7ene\u011fine t\u0131klay\u0131n.<\/li> <li>Uygulaman\u0131z\u0131n davran\u0131\u015f\u0131n\u0131 daha ayr\u0131nt\u0131l\u0131 yap\u0131land\u0131rmak i\u00e7in JSON format\u0131ndaki manifestte de\u011fi\u015fiklikler yapabilirsiniz.<\/li> <li>De\u011fi\u015fiklikleri yapt\u0131ktan sonra \"Save\" (Kaydet) d\u00fc\u011fmesine t\u0131klay\u0131n.<\/li> <\/ol> <h2>Ad\u0131m 9: Branding ve \u00d6zelle\u015ftirme<\/h2> <ol> <li>Sol men\u00fcden \"Branding\" (Markalama) se\u00e7ene\u011fine t\u0131klay\u0131n.<\/li> <li>Uygulama ad\u0131, logosu, ana sayfa URL'si, kullan\u0131m ko\u015fullar\u0131 URL'si ve gizlilik bildirimi URL'si gibi se\u00e7enekleri \u00f6zelle\u015ftirin.<\/li> <li>\"Save\" (Kaydet) d\u00fc\u011fmesine t\u0131klay\u0131n.<\/li> <\/ol> <h2>Ad\u0131m 10: Sahip Atama (\u0130ste\u011fe Ba\u011fl\u0131)<\/h2> <ol> <li>Sol men\u00fcden \"Owners\" (Sahipler) se\u00e7ene\u011fine t\u0131klay\u0131n.<\/li> <li>\"Add owners\" (Sahip ekle) d\u00fc\u011fmesine t\u0131klayarak uygulaman\u0131z\u0131 y\u00f6netecek ek kullan\u0131c\u0131lar atayabilirsiniz.<\/li> <\/ol> <h2>Uygulama Kodunda Kullan\u0131m \u00d6rne\u011fi<\/h2> A\u015fa\u011f\u0131da, Node.js ile MSAL (Microsoft Authentication Library) kullanarak Azure AD kimlik do\u011frulamas\u0131 yapan basit bir \u00f6rnek bulunmaktad\u0131r: <pre><code >const msal = require('@azure\/msal-node'); const config = { auth: { clientId: \"UYGULAMA_KIMLIGINIZ\", authority: \"https:\/\/login.microsoftonline.com\/KIRACI_KIMLIGINIZ\", clientSecret: \"ISTEMCI_GIZLI_ANAHTARINIZ\" } }; const cca = new msal.ConfidentialClientApplication(config); async function getToken() { const tokenRequest = { scopes: }; try { const response = await cca.acquireTokenByClientCredential(tokenRequest); return response.accessToken; } catch (error) { console.log(\"Hata olu\u015ftu:\", error); } } \/\/ Token'\u0131 kullanarak API \u00e7a\u011fr\u0131lar\u0131 yap\u0131n getToken().then(token =&gt; { console.log(\"Access Token:\", token); \/\/ Bu token ile API \u00e7a\u011fr\u0131lar\u0131 yapabilirsiniz }); <\/code><\/pre> <h2>S\u0131k Kar\u015f\u0131la\u015f\u0131lan Sorunlar ve \u00c7\u00f6z\u00fcmleri<\/h2> <ol> <li><strong>AADSTS65001: Kullan\u0131c\u0131n\u0131n onay\u0131\/iznini gerektiren yetkilendirilmi\u015f izinler i\u00e7in gerekli y\u00f6netici onay\u0131 verilmemi\u015f<\/strong> <ul> <li>\u00c7\u00f6z\u00fcm: Azure AD y\u00f6neticisinden \"Grant admin consent\" (Y\u00f6netici onay\u0131 ver) d\u00fc\u011fmesine t\u0131klamas\u0131n\u0131 isteyin.<\/li> <\/ul> <\/li> <li><strong>AADSTS700016: Uygulama bulunamad\u0131<\/strong> <ul> <li>\u00c7\u00f6z\u00fcm: Uygulama (istemci) Kimli\u011finin do\u011fru oldu\u011fundan emin olun.<\/li> <\/ul> <\/li> <li><strong>AADSTS7000215: Ge\u00e7ersiz istemci gizli anahtar\u0131 sa\u011fland\u0131<\/strong> <ul> <li>\u00c7\u00f6z\u00fcm: \u0130stemci gizli anahtar\u0131n\u0131z\u0131n s\u00fcresi dolmu\u015f olabilir, yeni bir tane olu\u015fturun.<\/li> <\/ul> <\/li> <li><strong>Y\u00f6nlendirme URI'si e\u015fle\u015fmiyor<\/strong> <ul> <li>\u00c7\u00f6z\u00fcm: Uygulaman\u0131zda kulland\u0131\u011f\u0131n\u0131z y\u00f6nlendirme URI'sinin, Azure Portal'da kaydetti\u011finizle tam olarak e\u015fle\u015fti\u011finden emin olun.<\/li> <\/ul> <\/li> <\/ol> <h2>En \u0130yi Uygulamalar<\/h2> <ol> <li><strong>Gizli anahtarlar\u0131 g\u00fcvenli tutun<\/strong>: \u0130stemci gizli anahtarlar\u0131n\u0131 kodunuza do\u011frudan yazmak yerine Azure Key Vault veya ortam de\u011fi\u015fkenleri gibi g\u00fcvenli y\u00f6ntemlerle saklay\u0131n.<\/li> <li><strong>En Az Ayr\u0131cal\u0131k \u0130lkesi<\/strong>: Uygulaman\u0131za sadece ihtiya\u00e7 duydu\u011fu minimum izinleri verin.<\/li> <li><strong>Sertifika Kullan\u0131m\u0131<\/strong>: Uzun vadeli ve daha g\u00fcvenli kimlik do\u011frulama i\u00e7in istemci gizli anahtar\u0131 yerine sertifikalar kullanmay\u0131 d\u00fc\u015f\u00fcn\u00fcn.<\/li> <li><strong>D\u00fczenli Rotasyon<\/strong>: \u0130stemci gizli anahtarlar\u0131n\u0131 d\u00fczenli olarak yenileyin ve eski anahtarlar\u0131 devre d\u0131\u015f\u0131 b\u0131rak\u0131n.<\/li> <li><strong>\u0130zleme ve Denetim<\/strong>: Azure AD Denetim G\u00fcnl\u00fcklerini kullanarak uygulama etkinliklerini d\u00fczenli olarak izleyin.<\/li> <\/ol> <h2>Sonu\u00e7<\/h2> Azure Portal'da uygulama kayd\u0131 olu\u015fturmak, uygulamalar\u0131n\u0131z\u0131n Azure hizmetleriyle g\u00fcvenli bir \u015fekilde entegre olmas\u0131n\u0131 sa\u011flayan temel bir ad\u0131md\u0131r. Bu rehberde \u00f6\u011frendi\u011finiz ad\u0131mlar\u0131 takip ederek, uygulaman\u0131z i\u00e7in kimlik do\u011frulama ve yetkilendirme altyap\u0131s\u0131n\u0131 kurabilir, modern kimlik do\u011frulama protokollerinin avantajlar\u0131ndan yararlanabilirsiniz. Daha fazla bilgi i\u00e7in <a href=\"https:\/\/docs.microsoft.com\/azure\/active-directory\/develop\/\">Microsoft Identity Platform dok\u00fcmantasyonunu<\/a> inceleyebilirsiniz.","excerpt":"Azure platformunda uygulamalar\u0131n\u0131z\u0131n Azure Active Directory (Azure AD) kirac\u0131n\u0131zdaki kaynaklara g\u00fcvenli bir \u015fekilde eri\u015febilmesi i\u00e7in...","created_at":"2025-04-05 10:25:42","updated_at":"2026-09-23 12:25:49","category_id":6,"view_count":823,"reading_time":7,"status":"published","editor_choice":0,"is_editor_choice":0,"published_at":"2025-04-05 10:25:42","featured_image":"resimyok.jpg","slug":"azure-portalda-uygulama-kaydi-olusturma","category_name":"Sistem","category_slug":"sistem","category_color":"#3b82f6"}]