Infrastructure as Code Webiner Serisi – Azure DevOps

Kayit Linki: https://teams.microsoft.com/registration/vPJ6O4tL8UWSRq2I9GBRuA,A9z1-HM02EuLIk92LJW-bA,lBAa9w0yAkaS4c1QDt_8YA,UGOzEcSA20OBHLT41xHTPQ,mGUizdLYiU2OHt6-GdVSpg,_ChVPuq7SUGLbBPxumMqwg?mode=read&tenantId=3b7af2bc-4b8b-45f1-9246-ad88f46051b8

Continue Reading Infrastructure as Code Webiner Serisi – Azure DevOps

Infrastructure as Code Webiner Serisi – BICEP

Kayit Linki: https://teams.microsoft.com/registration/vPJ6O4tL8UWSRq2I9GBRuA,A9z1-HM02EuLIk92LJW-bA,lBAa9w0yAkaS4c1QDt_8YA,hYuzOxnwEkiLZ48vlViqFw,kRt7jKP4-EuzjwcNB2pAAQ,RdBkvgSVn0yZG29oHg4AQw?mode=read&tenantId=3b7af2bc-4b8b-45f1-9246-ad88f46051b8

Continue Reading Infrastructure as Code Webiner Serisi – BICEP

Infrastructure as Code Webiner Serisi – ARM Templates ve PowerShell ile Otomasyon

Kayit Linki: https://teams.microsoft.com/registration/vPJ6O4tL8UWSRq2I9GBRuA,A9z1-HM02EuLIk92LJW-bA,lBAa9w0yAkaS4c1QDt_8YA,NmJO9m3m-0ad6rgnUUvV4w,Q9U7gHl82UKq0RCv4FsD6g,_PJWZKZ3P0S30_zBw68s-g?mode=read&tenantId=3b7af2bc-4b8b-45f1-9246-ad88f46051b8

Continue Reading Infrastructure as Code Webiner Serisi – ARM Templates ve PowerShell ile Otomasyon

PowerShell ile Azure Key Vault Purge Protection Enable/Disable Etmek

Bir Key Vault’un ne olursa olsun, belirnene bir zaman diliminde, silinse bile tamamen Azure ortamindan kaldirilmamasini istiyor olabilirsiniz. Bu, genellikle yasal gereksinimlerden dolyai olur. Silinen Key Vault’lar Retention Period adi verilen bir sure icin Azure ortaminda muhaza edilirler. Ancak Purge islemi uygulaniginda bu silinmis ama gecici bir alanda tutulan Key Vault’lar “tamanen” ve geri donusu olmayan bir bicimde silinirler. Bunun onune gecmek icin Purge Protection ozelligi kullanilir. Bu ozellik bir kez aktif hale getirildiginde, o Key Vault icin bu ayar bir daha degistirilemez. Peki bunu nasil kullanabiliriz? Gorelim!

Oncelikle ornekteki Key Vault’unPurge Protection ozelligini acalim.

Simdi bu Key Vault’u silelim. Evet silelim diyorum cunku gercekte “tamamen” silinmeyecegini biliyorum. Silme isleminin ardindan ise Purge islemini uygualamaya calisalim. Yani komple ortamdan kaldirma islemi.

Sonuc beklendigi gibi basarisiz. Cunku Purge Protection aktif durumda. Bu Key Vault’u tamamen silmek icin 90 gun beklememiz gerekiyor. Bu 90 gun ayarini Purge Protection ozelligini aktif ederken ayarlayabilirdik. Ama artik cok gec. Neyse sayili gun cabuk gecer diyelim!

Continue Reading PowerShell ile Azure Key Vault Purge Protection Enable/Disable Etmek

PowerShell ile Azure AD Kullanicilarini Listelemek

Oncelikle AzureAD modulunun yuklu oldugundan emin olalim.

Yuklu degilse “Import-Module AzureAD” komutuyla yukleyelim.

Yukledikten sonra “Connect-AzureAD -TenantID “XXXXX–xxxxxx-xxxxxx-xxxx” komutuyla TenantID belirterek Azure AD’ye baglanti saglayalim. Sonrasinda gerisi kolay.

Get-AzureAdUser

Spesifik listeleme icin bir ornek

Get-AzureADUser -SearchString ‘DisplayName eq Baki Onur Okutucu’

Continue Reading PowerShell ile Azure AD Kullanicilarini Listelemek

PowerShell ile Azure StorageAccount Blob Icerigini Okumak

Bir Storage Account icindeki Container’in altinda yer alan dosyanin icerigini ekrana yazdirabilir miyiz? Elbette!

Once Context olusturuyor ve akabinde ilgili Container icindeki dosyayi (Blob) hedef gosteriyoruz. Son olarak Blob icerigini tumlesik bir fonksiyon ile okutuyoruz.

$context = (Get-AzStorageAccount -Name storageaccountfunct94f4 -ResourceGroupName functionapps).context

$blob = Get-AzStorageBlob -Container test -Blob testdosya1.txt -Context $context

$blob.ICloudBlob.DownloadText()

Continue Reading PowerShell ile Azure StorageAccount Blob Icerigini Okumak

PowerShell ile Azure Subscription Offer bilgisini goruntulemek

PowerShell ile Azure Subscription Offer bilgisini goruntulemek

Azure uzerindeki abonliklerinizin “Offer” bilgisini Portal icinden asagidaki gibi goruntuleyebiliyoruz.

Peki bu bilgiye PowerShell ile nasil erisebiliriz?

Get-AzSubscription | select -ExpandProperty SubscriptionPolicies

Subscription Policies altindaki QutaId sutunu bu bilgiyi tutar. MSDN, PayAsYouGo vs. gibi bilgiler burada listelenir.

Continue Reading PowerShell ile Azure Subscription Offer bilgisini goruntulemek

PowerShell ile Azure Key Vault Access Policy Yonetimi

Bir Azure Key Vault icindeki Access Policy’lerde degisiklik yaparak, bir kisiye, gruba ya da uygulamaya erisim yetkisi verebiliriz. Bunun icin asagidaki komutu calistirabiliriz. Ben kendi ornegimde octopus adindaki Azure AD uygulamama yetki vermek istedim. Secret, Certificate, Keys ve Managed Storage uzerinde “full” yetki verdim. Evet biraz bonkor davrandim bugun!

Siz de ServicePrincipalName parametresi icin kendi AAD uygulamanizin ApplicationID’sini yazabilirsiniz.

Set-AzKeyVaultAccessPolicy -VaultName testvault2000 -ResourceGroupName keyvaults -ServicePrincipalName “c2e46ff8-cdc6-4c0b-a593-74fcda3657aa” -PermissionsToKeys all -PermissionsToSecrets all -PermissionsToCertificates all -PermissionsToStorage all

Asagidaki komutla yaptigim degisikligi goruntuleyebilirim

Get-AzKeyVault -VaultName testvault2000

Azure Portal icinden de bu degisikligi dogrulayabiliriz.

Continue Reading PowerShell ile Azure Key Vault Access Policy Yonetimi

PowerShell ile Mevcut Bir Automation Account Icerisine Yeni Bir Runbook Eklemek

Yeni bir Runbook ihtiyaciniz var. Bir de daha onceden yazdiginiz kodun Runbook icinde calismasini istiyorsunuz. Kolay.

Import-AzAutomationRunbook -ResourceGroupName demo
-AutomationAccountName AuatomationAccount1 -Path "D:\Temp\runbook1.ps1"
-Type PowerShell -Name YeniRunbook
-Force

Unutmayalim ki, yukaridaki komut bir Import komutu. Yani aslinda yeni bir runbook olusturmaktan tek farki, size daha onceden yazdiginioz kodu ekleme olanagi vermesi. Yani ayni isimle bos bir runbook olusturma komutunu kullansam hata alirim. Hatta buyrun hata alalim.

New-AzAutomationRunbook -Name 'YeniRunbook'
-Type PowerShell -ResourceGroupName demo
-Description ‘Yepisyeni’ `
-AutomationAccountName AuatomationAccount1

Continue Reading PowerShell ile Mevcut Bir Automation Account Icerisine Yeni Bir Runbook Eklemek

PowerShell ile Azure Management Group altindaki Abonelikleri Listelemek

PowerShell ile Azure Management Group altindaki Abonelikleri Listelemek

Azure icindeki abonelikleri, yonetimsel kolaylik ve Policy uygulama noktasindaki avantajlari sebebiyle Management Group’lar icine yerlestirebiliyoruz. Peki buyuk organizasyonlarda Azure Portal icinden rahatlikla listeyebildigimiz bu abonelikleri PowerShell ile nasil listeyebiliriz? Yani belirli bir Management Group icindeki abonelikleri nasil ekrana yazdirabiliriz? Gorelim!

Once butun abonelikleri, icinde bulunduklari Management Group bilgisine gore listeleyelim. Malum, bazen ic ice gecmis management group yapisi kullaniyoruz ve bir abonelik derinlerde bir management group icinde yer alabiliyor.

$sorgu = “
resourcecontainers
| where type == ‘microsoft.resources/subscriptions’

$cevap = Search-AzGraph -Query $sorgu
$cevap | select name,id,@{l=”managementgroup”;e={$_.properties.managementGroupAncestorsChain.displayname}}

Peki ben sadece spesifik Manegement Group icindeki abonelikleri goruntulemek istiyorsam. Yani bana yukaridan asagiya kadar butun management group bilgisi lazim degilse? O zaman da yontem su sekilde!

$managementGroup = “Prod”
$sorgu = “
resourcecontainers
| where type == ‘microsoft.resources/subscriptions’
| where properties.managementGroupAncestorsChain[0].displayName == ‘$managementGroup’
| project ParentManagementGroup = properties.managementGroupAncestorsChain[0].displayName, name, id

$cevap = Search-AzGraph -Query $sorgu
$cevap | select name, id, ParentManagementGroup

Continue Reading PowerShell ile Azure Management Group altindaki Abonelikleri Listelemek