İçeriğe atla
Şimdi yükleniyor
AKAşkın KILIÇ
  • Anasayfa
  • Azure & Bulut
    • Microsoft Azure
    • Bulut Altyapı
    • Microsoft 365
  • Yazılım
    • DevOps
    • Geliştirici Araçları
    • Konteyner & K8s
  • AI & Veri
    • Yapay Zeka
    • Veri & Analitik
  • Güvenlik
    • Güvenlik & Kimlik
    • Kurumsal Teknoloji
  • Hakkımda
    • İletişim
×
  • Azure
  • Bulut Altyapı
  • DevOps
  • Geliştirici Araçları
  • Güvenlik & Kimlik
  • Konteyner & Kubernetes
  • Kurumsal Teknoloji
  • Microsoft 365
  • Microsoft Azure
  • Veri & Analitik
  • Yapay Zeka
  • Başlangıç
  • Güvenlik & Kimlik
  • Azure DevOps Service Connection ile PAT’siz Kimlik Doğrulama
DevOps Güvenlik & Kimlik Microsoft Azure Azure DevOps, managed identity, Microsoft Entra ID, PAT'siz Kimlik Doğrulama, service connection Aşkın KILIÇ 06/08/2026 0 Yorumlar

Azure DevOps Service Connection ile PAT’siz Kimlik Doğrulama

Azure DevOps Service Connection ile PAT'siz Kimlik Doğrulama
📑 İçindekiler
  1. Neden Azure DevOps service connection?
  2. Bağlantıyı yapılandırmadan önce
  3. Manuel yapılandırma alternatifi
  4. Kullanım senaryoları
  5. Başka bir organizasyondan repository çekmek
  6. Başka bir organizasyondan YAML template kullanmak
  7. Artifacts feed'e erişim
  8. Invoke REST API görevi ile Azure DevOps REST API'lerine çağrı
  9. Script içinde kullanım
  10. Değerlendirme
  11. İlgili İçerikler
  12. Kaynaklar ve İleri Okuma
⏱️ 4 dk okuma📅 6 Ağustos 2026

Azure DevOps, pipeline’lardan organizasyona erişim için Personal Access Token (PAT) veya build session token yerine Microsoft Entra iş yükü kimliğini kullanmaya olanak tanıyan yeni bir bağlantı türü sundu: Azure DevOps service connection. Bu bağlantı, servis sorumlusu (service principal) veya yönetilen kimlik (managed identity) ile pipeline’ların Azure DevOps kaynaklarına federasyon tabanlı kimlik doğrulamayla ulaşmasını sağlıyor. Yazının devamında bağlantının ne işe yaradığına, nasıl yapılandırıldığına ve hangi görevlerde kullanılabileceğine bakıyoruz.

Neden Azure DevOps service connection?

Bu bağlantı türü pipeline güvenliğini birkaç yönden iyileştiriyor:

  • PAT’siz kimlik doğrulama: Personal Access Token üretme, saklama ve rotasyon ihtiyacını ortadan kaldırır.
  • En az ayrıcalık: Paylaşımlı build service account izinleri yerine pipeline veya görev bazında izin tanımlama imkanı sunar.
  • Kalıcı sır yok: Parola yerine Microsoft Entra federated credential kullanılır.
  • Denetim izi: Tüm kimlik doğrulama denemeleri Azure DevOps audit log’una yazılır.

Bağlantı Microsoft Entra kimliği üzerinden çalıştığı için aynı Entra ID kiracısına bağlı başka bir Azure DevOps organizasyonundaki kaynaklara erişmek için de kullanılabilir.

Bağlantıyı yapılandırmadan önce

Önemli bir ön koşul var: Service connection oluşturma deneyimi, Entra tarafında kimlik veya Azure DevOps tarafında kullanıcı oluşturmaz. Her ikisinin de önceden hazır olması gerekir. Bu nedenle bağlantıyı kurmadan önce bir servis sorumlusu veya yönetilen kimliği organizasyona kullanıcı olarak ekleyip gerekli izinleri atamak gerekir.

Kimlik hazır olduktan sonra yeni service connection oluştururken Azure DevOps (preview) seçeneği belirlenir ve önceden tanımlanmış servis sorumlusu veya yönetilen kimlik seçilir. Kimliğin organizasyon içinde ihtiyaç duyduğu izinleri (örneğin ilgili projenin Readers grubuna eklenmesi) atamak gerekiyor; yapılandırma arayüzündeki View access in the current organization bağlantısı bu adımda yönlendirici oluyor.

Manuel yapılandırma alternatifi

Bazı durumlarda oturum açan kullanıcı, federated identity credential (FIC) kaydını otomatik oluşturamaz. Örneğin kullanıcının Microsoft Graph izinleri yetersizse arayüz manuel yönlendirmeye düşer. Bu senaryoda ekranda gösterilen issuer ve subject değerleri, gerekli yetkiye sahip bir yöneticiye iletilir, federated credential elle eklenir ve ardından bağlantı tamamlanır.

Kullanım senaryoları

Başka bir organizasyondan repository çekmek

resources:
repositories:
- repository: external-repo
type: git
endpoint: my-azdo-connection
name: 'external-project/external-repo'
ref: 'refs/heads/main'
steps:
- checkout: self
- checkout: external-repo

Başka bir organizasyondan YAML template kullanmak

resources:
repositories:
- repository: templates
type: git
endpoint: my-azdo-connection
name: 'external-project/external-repo'
ref: "refs/heads/main"
steps:
- template: azdosc-template.yml@templates

Artık runtime parameter kullanarak repository resource için hangi service connection’ın kullanılacağı dışarıdan da verilebiliyor. Böylece aynı template farklı organizasyon ve ortamlarda yeniden kullanılabilir hale geliyor:

parameters:
- name: serviceConnectionName
type: string
default: my-azdo-connection
resources:
repositories:
- repository: templates
type: git
endpoint: ${{ parameters.serviceConnectionName }}
name: 'external-project/external-repo'
ref: "refs/heads/main"

Artifacts feed’e erişim

- task: NuGetAuthenticate@1
inputs:
nuGetServiceConnections: 'my-azdo-connection'
- task: DotNetCoreCLI@2
inputs:
command: 'restore'
projects: '**/*.csproj'

Invoke REST API görevi ile Azure DevOps REST API’lerine çağrı

Invoke REST API görevi (InvokeRESTAPI@1) artık Azure DevOps service connection’ı doğrudan kabul ediyor. Böylece özel bir “generic” bağlantı tanımlayıp token’ı elle yönetmek gerekmiyor. connectionType alanına connectedServiceNameAzureDevOps verilir:

- task: InvokeRESTAPI@1
inputs:
connectionType: 'connectedServiceNameAzureDevOps'
serviceConnection: 'my-azdo-connection'
method: 'GET'
urlSuffix: 'external-project/_apis/build/builds?api-version=7.1'

Script içinde kullanım

Yeni AzureCLI@3 görevi, Microsoft Entra kimlik doğrulaması ile Azure DevOps’a birkaç farklı şekilde erişebiliyor. Her senaryoda connectionType: 'azureDevOps' belirtilir ve azureDevOpsServiceConnection alanına tanımlı service connection adı yazılır:

- task: AzureCLI@3
inputs:
connectionType: 'azureDevOps'
azureDevOpsServiceConnection: 'my-azdo-connection'

Bu yapı, Azure DevOps CLI ile Entra kimliği üzerinden oturum açılmış bir bağlam oluşturuyor:

- task: AzureCLI@3
displayName: Secret-less
inputs:
connectionType: 'azureDevOps'
azureDevOpsServiceConnection: 'my-azdo-connection'
scriptType: 'pscore'
scriptLocation: 'inlineScript'
inlineScript: |
az devops configure -l
az devops project list --query "value[].{Name:name, Id:id}" `
-o table
az pipelines pool list --query "[].{Id:id, Name:name}" `
-o table
az rest --method get `
--url "https://status.dev.azure.com/_apis/status/health?api-version=7.1-preview.1" `
--resource 499b84ac-1321-427f-aa17-267ca6975798 `
--query "sort_by(services[?id=='Pipelines'].geographies | [], &name)" `
-o table

Halihazırda inline biçimde PAT veya System.AccessToken kullanan bir script varsa, onun yerine Azure DevOps’a erişmek için Entra access token alınabiliyor:

- task: AzureCLI@3
displayName: Use Entra access token
inputs:
connectionType: 'azureDevOps'
azureDevOpsServiceConnection: 'my-azdo-connection'
scriptType: 'pscore'
scriptLocation: 'inlineScript'
inlineScript: |
# Get access token for Azure DevOps
$token = az account get-access-token --resource "499b84ac-1321-427f-aa17-267ca6975798" `
--query "accessToken" `
--output tsv
# Use token in REST API call
$headers = @{
Authorization = "Bearer $token"
"Content-Type" = "application/json"
}
$body = @{
name = "Test Build"
} | ConvertTo-Json
Invoke-RestMethod -Uri "$(System.CollectionUri)$(System.TeamProject)/_apis/build/definitions?api-version=7.1" `
-Method POST `
-Headers $headers `
-Body $body

Değerlendirme

PAT ömrünü uzatmak, rotasyon süreçlerini kurgulamak ve paylaşımlı build servis hesabı izinlerini yönetmek uzun süredir Azure DevOps kullanıcılarının en çok konuştuğu güvenlik başlıklarındandı. Federated credential temelli bu bağlantı, sırların kalıcı olarak depolanmasını ortadan kaldırıyor, her pipeline veya görev için ayrı ayrı yetkilendirme yapmayı da kolaylaştırıyor. Çoklu organizasyon senaryolarında ortak Entra ID kiracısı üzerinden kimlik doğrulamak, template ve repository paylaşımını daha temiz bir güvenlik modeline taşıyor.

İlgili İçerikler

  • Azure DevOps Server Temmuz Yamaları: Kurulum ve Doğrulama
  • Azure App Service Build 2026: Easy AI, Iv4 ve Yenilikler
  • Azure DevOps Commit Search Genel Kullanıma Açıldı

Kaynaklar ve İleri Okuma

  • devblogs.microsoft.com
  • devblogs.microsoft.com
  • devblogs.microsoft.com
  • devblogs.microsoft.com
  • Orijinal duyuru: You can now use the Azure DevOps Service Connection instead of a PAT or Build Session token
  • Azure DevOps service connection dokümantasyonu
  • Service principal ve managed identity kullanımı
  • Pipeline access token’ları
  • Invoke REST API görev referansı
  • Azure DevOps CLI
  • Azure DevOps Developer Community • Azure DevOps Support

İlgili yazılar:

  • Azure DevOps Issuer Emekliye Ayrılıyor: WIF Geçişi Şart
  • Azure DevOps’ta Güvenlik Krizi: Build Kimlikleri
🤖Bu yazı yapay zeka (büyük dil modelleri) ile hazırlanmış, insan editör tarafından incelenmiştir. İçerik üretim sürecimiz.
Aşkın KILIÇ
Aşkın KILIÇYazar

20+ yıl deneyimli Azure Solutions Architect. Microsoft sertifikalı bulut mimari ve DevOps danışmanı. Azure, yapay zekâ ve bulut teknolojileri üzerine Türkçe teknik içerikler üretiyor.

AZ-305AZ-104AZ-500AZ-400DP-203AI-102

İlgili Yazılar

MCP C# SDK 1.0 Yayınlandı: Yetkilendirme, İkonlar ve Gerçek Dünya Notları
MCP C# SDK 1.0 Yayınlandı: Yetkilendirme, İkonlar ve Gerçek Dünya Notları21 Mar 2026
MSVC 14.51 ile C++23 Desteği: Sahadan Notlar
MSVC 14.51 ile C++23 Desteği: Sahadan Notlar14 Nis 2026
Azure SQL’de Vektörler ve Analitik: ETL Neden Geride Kalıyor?
Azure SQL’de Vektörler ve Analitik: ETL Neden Geride Kalıyor?6 Nis 2026
Azure DevOps'ta SQL Projeleri: Pipeline Kurmanın Temelleri
Azure DevOps'ta SQL Projeleri: Pipeline Kurmanın Temelleri2 Tem 2026

Bu içerik işinize yaradı mı?

Benzer içerikleri kaçırmamak için YouTube ve GitHub hesaplarımı takip edin.

YouTube GitHub

Haftalık Bülten

Her pazar özenle seçilmiş teknoloji yazıları doğrudan e-postanıza gelsin.

Etiket Azure DevOps managed identity Microsoft Entra ID PAT'siz Kimlik Doğrulama service connection
Önceki yazı

Gateway API’yi kind ile Yerelde Deneme Rehberi

İlginizi Çekebilir

GitHub Hukuk Ekibi Copilot CLI ile İş Akışlarını Nasıl
Aşkın KILIÇ 0

GitHub Hukuk Ekibi Copilot CLI ile İş Akışlarını Nasıl

05/08/2026
Code Scanning Default Setup Artık Özelleştirilebilir
Aşkın KILIÇ 0

Code Scanning Default Setup Artık Özelleştirilebilir

05/08/2026
NuGet API Anahtarı Süresi Kısalıyor: Yeni Güvenlik Planı
Aşkın KILIÇ 0

NuGet API Anahtarı Süresi Kısalıyor: Yeni Güvenlik Planı

04/08/2026

Yorum gönder Yanıtı iptal et

Yazı Ara

Takip Edin

  • Takipçi
  • Takipçi
  • Takipçi
  • Abone
  • Takipçi
  • Azure DevOps Service Connection ile PAT'siz Kimlik Doğrulama
    06/08/2026 Azure DevOps Service Connection ile PAT’siz Kimlik Doğrulama
  • Gateway API'yi kind ile Yerelde Deneme Rehberi
    06/08/2026 Gateway API’yi kind ile Yerelde Deneme Rehberi
  • GitHub Hukuk Ekibi Copilot CLI ile İş Akışlarını Nasıl
    05/08/2026 GitHub Hukuk Ekibi Copilot CLI ile İş Akışlarını Nasıl
  • Azure DevOps Remote MCP Server Genel Kullanıma Açıldı
    05/08/2026 Azure DevOps Remote MCP Server Genel Kullanıma Açıldı
  • Code Scanning Default Setup Artık Özelleştirilebilir
    05/08/2026 Code Scanning Default Setup Artık Özelleştirilebilir
  • Copilot Cloud Agent Metriği: Kullanımı Ölçmek Kolaylaştı
    11/04/2026 Copilot Cloud Agent Metriği: Kullanımı Ölçmek Kolaylaştı
  • Azure MCP Server 2.0: Kendi Sunucunuzda Ajan Otomasyonu
    10/04/2026 Azure MCP Server 2.0: Kendi Sunucunuzda Ajan Otomasyonu
  • GitHub Code Scanning’de Toplu Düzeltme: PR’lar Hızlandı
    07/04/2026 GitHub Code Scanning’de Toplu Düzeltme: PR’lar Hızlandı
  • GitHub Copilot Cloud Agent İçin Runner Kontrolü: Kurumsal Düzen
    03/04/2026 GitHub Copilot Cloud Agent İçin Runner Kontrolü: Kurumsal Düzen
  • MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
    08/04/2026 MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
  • GitHub Copilot Pro Denemeleri Neden Durdu?
    11/04/2026 GitHub Copilot Pro Denemeleri Neden Durduruldu?
  • vcpkg'de Paralel Kurulum ve Güvenlik Yaması: Neler Değişti?
    06/04/2026 vcpkg’de Paralel Kurulum ve Güvenlik Yaması: Neler Değişti?
  • MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
    08/04/2026 MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
  • Yapay Zekâ Çağında Sanayi Politikası: Asıl Mesela Ne?
    06/04/2026 Yapay Zekâ Çağında Sanayi Politikası: Asıl Mesela Ne?
  • Microsoft Foundry Mart 2026: Sahadan İlk İzlenimler
    10/04/2026 Microsoft Foundry Mart 2026: Sahadan İlk İzlenimler

SİZİN İÇİN DERLEDİK

Azure DevOps Service Connection ile PAT'siz Kimlik Doğrulama
DevOps Güvenlik & Kimlik Microsoft Azure

Azure DevOps Service Connection ile PAT’siz Kimlik Doğrulama

06/08/2026 Aşkın KILIÇ
Gateway API'yi kind ile Yerelde Deneme Rehberi
Bulut Altyapı Geliştirici Araçları Konteyner & Kubernetes

Gateway API’yi kind ile Yerelde Deneme Rehberi

06/08/2026 Aşkın KILIÇ
GitHub Hukuk Ekibi Copilot CLI ile İş Akışlarını Nasıl
DevOps Kurumsal Teknoloji Yapay Zeka

GitHub Hukuk Ekibi Copilot CLI ile İş Akışlarını Nasıl

05/08/2026 Aşkın KILIÇ
Azure DevOps Remote MCP Server Genel Kullanıma Açıldı
Bulut Altyapı Geliştirici Araçları Yapay Zeka

Azure DevOps Remote MCP Server Genel Kullanıma Açıldı

05/08/2026 Aşkın KILIÇ
Code Scanning Default Setup Artık Özelleştirilebilir
Bulut Altyapı Güvenlik & Kimlik

Code Scanning Default Setup Artık Özelleştirilebilir

05/08/2026 Aşkın KILIÇ
Foundry Local ve C# ile Canlı Konuşma-Metin Dönüşümü
Bulut Altyapı Geliştirici Araçları

Foundry Local ve C# ile Canlı Konuşma-Metin Dönüşümü

05/08/2026 Aşkın KILIÇ
NuGet API Anahtarı Süresi Kısalıyor: Yeni Güvenlik Planı
Bulut Altyapı Güvenlik & Kimlik

NuGet API Anahtarı Süresi Kısalıyor: Yeni Güvenlik Planı

04/08/2026 Aşkın KILIÇ
Dependabot Pull Request Dal Adlarını Özelleştirme
Bulut Altyapı Geliştirici Araçları Kurumsal Teknoloji

Dependabot Pull Request Dal Adlarını Özelleştirme

04/08/2026 Aşkın KILIÇ
Customize the reasoning level for Copilot cloud agent
Bulut Altyapı Yapay Zeka

Customize the reasoning level for Copilot cloud agent

04/08/2026 Aşkın KILIÇ
Gateway API v1.6: TCPRoute ve UDPRoute Standard Oldu
Bulut Altyapı Geliştirici Araçları

Gateway API v1.6: TCPRoute ve UDPRoute Standard Oldu

04/08/2026 Aşkın KILIÇ
Disrupting supply chain attacks on npm and GitHub Actions
Bulut Altyapı DevOps Güvenlik & Kimlik

Disrupting supply chain attacks on npm and GitHub Actions

03/08/2026 Aşkın KILIÇ
VS Code Temmuz 2026: Copilot Ajanları ve Çoklu Sohbet
Geliştirici Araçları Güvenlik & Kimlik Microsoft Azure Yapay Zeka

VS Code Temmuz 2026: Copilot Ajanları ve Çoklu Sohbet

03/08/2026 Aşkın KILIÇ

Hakkımda

Aşkın KILIÇ

Microsoft Azure Çözüm Uzmanı. Bulut bilişim, yapay zekâ, DevOps ve kurumsal güvenlik üzerine yazılar yazıyorum.

Devamını Oku →

Kategoriler

  • Azure
  • Bulut Altyapı
  • DevOps
  • Geliştirici Araçları
  • Güvenlik & Kimlik
  • Konteyner & Kubernetes
  • Kurumsal Teknoloji
  • Microsoft 365
  • Microsoft Azure
  • Veri & Analitik
  • Yapay Zeka

Popüler Etiketler

AI ajanları Azure azure app service Azure Cosmos DB Azure Developer CLI Azure DevOps Azure Functions Azure OpenAI azure sdk Azure SQL bulut bilişim C++ CI/CD copilot Copilot CLI DevOps DevSecOps geliştirici verimliliği GitHub GitHub Actions GitHub Copilot güvenlik Kimlik Doğrulama Kubernetes Kurumsal geliştirme kurumsal güvenlik kurumsal yapay zeka maliyet optimizasyonu Microsoft Agent Framework Microsoft Azure Microsoft Foundry MSVC otomasyon performans Pull Request Python RAG SEO uyumlu verimlilik veri yönetimi Visual Studio VS Code yapay zeka yapay zeka ajanları Yazılım geliştirme
  • Gizlilik Politikası
  • Çerez Politikası
  • Kullanım Koşulları
  • Hakkımda
  • İletişim

© 2026 Aşkın KILIÇ | Tüm hakları saklıdır. | Powered By SpiceThemes

Çerez tercihleri Zorunlu çerezler sitenin çalışması için kullanılır. Analitik çerezler yalnız açık izninizden sonra Google Analytics ve Microsoft Clarity için etkinleştirilir. KVKK ve Çerez Politikası
✉

Haftalık Bülten

Azure, DevOps ve Yapay Zeka dünyasındaki en güncel içerikleri her hafta doğrudan e-postanıza alın.

Spam yok. İstediğiniz zaman iptal edebilirsiniz.
📱
Uygulamayı Yükle Ana ekrana ekle, çevrimdışı oku
Ana Sayfa
Kategoriler
💻 Geliştirici Araçları 339 yazı 🏗️ Bulut Altyapı 280 yazı 🤖 Yapay Zeka 240 yazı 🔧 DevOps 198 yazı ☁️ Microsoft Azure 186 yazı 🔒 Güvenlik & Kimlik 161 yazı 🏢 Kurumsal Teknoloji 65 yazı 📊 Veri & Analitik 57 yazı 🐳 Konteyner & Kubernetes 47 yazı 📧 Microsoft 365 21 yazı 📁 Azure 1 yazı
Ara
Popüler
Yapay Zeka Azure Kubernetes DevOps Copilot Docker
Paylaş
WhatsApp
İçindekiler
    ← Gateway API’yi kind ile ...
    →
    📩

    Gitmeden önce!

    Her pazar özenle seçilmiş teknoloji yazıları ve AI haberleri doğrudan e-postanıza gelsin. Ücretsiz, spam yok.

    🔒 Bilgileriniz güvende. İstediğiniz zaman ayrılabilirsiniz.

    📬 Haftalık bülten: Teknoloji + AI haberleri
    Beni Takip Et Yeni Azure / AI / DevOps yazılarını GitHub ve RSS üzerinden takip edin.
    GitHub RSS