Azure App Service එකක් භාවිතා කරන දවස් වල, Key Vault රහස් අගයන් හිස් වීම, "Not Resolved" පණිවිඩ පෙන්වීම හෝ 401/403 දෝෂ පැනීම වැනි ගැටලු ඔබට හමුවේද? මේ ගැටලුවේ හේතුව, Azure Portal එකේ පෙනෙන්නා නොවන keyVaultReferenceIdentity ගුණය නිවැරදිව සකස් නොකිරීමයි. මෙහිදී, ARM (Azure Resource Manager) මට්ටමේ පමණක් මෙම ගුණය සක්රිය කරගත හැකි බවත්, ඒ නිසා Portal එකෙන් ඒක දැකගැනීමට නොහැකි බවත් අපි පැහැදිලි කරමු.
මෙම ලිපිය තුළ, PowerShell සහ Azure CLI භාවිතා කරමින්, ඔබේ App Service එකට Managed Identity එකක් සම්බන්ධ කර, ARM මට්ටමේ keyVaultReferenceIdentity ගුණය සකස් කිරීමේ පියවර 5ක් සරලව විස්තර කරමු. අවශ්ය පෙරකාර්ය, Azure Subscription, App Service, User‑Assigned Managed Identity, Key Vault සහ අවශ්ය RBAC අවසර (Contributor/Owner) යනවායි.
පියවර 1 – PowerShell පරිසරය සකසන්න
- Connect-AzAccount මගින් Azure සමඟ සම්බන්ධ වීම.
- Clear-AzTokenCache භාවිතා කර පරණ ටෝකන මැකීම.
- Get-AzContext මඟින් වත්මන් සම්බන්ධතා තත්ත්වය පරීක්ෂා කිරීම.
පියවර 2 – Subscription තෝරන්න
- Get-AzSubscription | Select-Object Name, Id, State මඟින් සියලු subscription ලැයිස්තුව ලබා ගැනීම.
- Set-AzContext -SubscriptionId "YOUR‑SUBSCRIPTION‑ID" මගින් ඉලක්ක subscription එක සකස් කිරීම.
පියවර 3 – ARM Fix Script ක්රියාත්මක කරන්න
- වෙනස්කම් සඳහා $subscriptionId, $resourceGroup, $identityName, $appName වැනි පරාමිතීන් සකස් කිරීම.
- User‑Assigned Identity URL එක නිර්මාණය කිරීම ("/subscriptions/.../resourceGroups/.../providers/Microsoft.ManagedIdentity/userAssignedIdentities/...").
- Set-AzResource –Property @{"keyVaultReferenceIdentity"=$identityUrl} –Force මඟින් App Service හි ARM ගුණය යාවත්කාලීන කිරීම.
මෙම පියවර අවසන් කළ පසු, App Service එක Managed Identity මගින් Key Vault වෙත ප්රවේශය ලබා ගනී. Key Vault රහස් අගයන් හිස් නොවී, නිවැරදිව ඇප් සෙටින්ග්ස් වලට පිරෙයි.
ශ්රී ලංකාවට ඇති වැදගත්කම
ශ්රී ලංකාවේ බොහෝ සංවර්ධකයින්, ස්ථානයේම හෝ Cloud‑based සේවා භාවිතා කරමින්, රහස් කළමනාකරණය සඳහා Azure Key Vault යොදා ගනී. මේ ගැටලුව නිවැරදිව විසඳීමෙන්:
- දත්ත ආරක්ෂාව – Managed Identity සහ Key Vault අතර සම්බන්ධතාවය සම්පූර්ණයෙන්ම සුරක්ෂිත වේ, අනිච්චිත පාර්ශවයන්ට ප්රවේශය නැත.
- විකාශක කාලය – ගැටලුවක් නිසා නව සංස්කරණයක් නිකුත් කිරීම අත්යවශ්ය නම්, ඒක තත්කාලිකව නවතාගත නොහැකි වෙනවා.
- ව්යාපාරික පිරිවැය – අසාර්ථක ඇප් ධාවනය හේතුවෙන් ඇතිවන downtime හෝ අමතර troubleshooting කාලය අඩු වේ.
ඉතින්, Azure Cloud සේවා භාවිතා කරන ශ්රී ලාංකීය තාක්ෂණික ආයතන, මෙම පියවර අනුගමනය කර, තමන්ගේ ඇප්ලිකේෂන් වල රහස් කළමනාකරණය නිරවද්යව තබාගත හැක.
අවසන් වශයෙන්, Azure CLI extension az extension add --name keyvault එක ස්ථාපනය කර, CLI හරහාද එම සැකසීම සිදු කළ හැකි බවත්, ඔබේ පරිසරය අනුව PowerShell හෝ CLI එකක් තෝරාගන්න.
මෙම පියවර අනුගමනය කිරීමෙන්, Azure App Service එකේ Key Vault රහස් පිළිබඳ ගැටළු ඉක්මනින් විසඳා, ඔබේ ව්යාපාරික හෝ අධ්යාපනික ප්රෝජෙක්ට්ස් නවීන cloud security ප්රතිපත්ති වලට අනුකූල කරගත හැක.