Yönetilen HSM rol yönetimi

Not

Key Vault iki tür kaynak destekler: kasaların ve yönetilen HSM 'ler. Bu makale, YÖNETILEN HSM ile ilgilidir. Kasayı yönetme hakkında bilgi edinmek istiyorsanız lütfen bkz. Azure CLI kullanarak Key Vault yönetme.

Yönetilen HSM 'ye genel bakış için bkz. YÖNETILEN HSM nedir?. Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.

Bu makalede, yönetilen bir HSM veri düzlemi için rolleri nasıl yöneteceğiniz gösterilmektedir. Yönetilen HSM erişim denetimi modeli hakkında bilgi edinmek için bkz. YÖNETILEN HSM erişim denetimi.

Bir güvenlik sorumlusuna (örneğin, bir Kullanıcı, hizmet sorumlusu, Grup veya yönetilen kimlik) yönetilen HSM veri düzlemi işlemleri gerçekleştirmesini sağlamak için, bu işlemleri gerçekleştirmeye izin veren bir rol atanması gerekir. Örneğin, bir uygulamanın anahtar kullanarak bir imzalama işlemi gerçekleştirmesine izin vermek istiyorsanız, veri eylemlerinden biri olarak "Microsoft. Keykasası/managedHSM/Keys/Sign/Action" öğesini içeren bir rol atanması gerekir. Bir rol, belirli bir kapsamda atanabilir. Yönetilen HSM yerel RBAC, HSM genelinde iki kapsam ( / veya /keys ) ve anahtar başına () destekler /keys/<keyname> .

Tüm yönetilen HSM yerleşik rollerinin ve izin verdikleri işlemlerin listesi için bkz. YÖNETILEN HSM yerleşik rolleri.

Önkoşullar

Bu makaledeki Azure CLı komutlarını kullanmak için aşağıdaki öğelere sahip olmanız gerekir:

Azure Cloud Shell kullanma

Azure, tarayıcınız aracılığıyla kullanabileceğiniz etkileşimli bir kabuk ortamı olan Azure Cloud Shell’i barındırır. Azure hizmetleriyle çalışmak için Cloud Shell ile Bash veya PowerShell kullanabilirsiniz. Bu makaledeki kodu, yerel ortamınıza herhangi bir şey yüklemeye gerek kalmadan çalıştırmak için Cloud Shell’in önceden yüklenmiş komutlarını kullanabilirsiniz.

Azure Cloud Shell’i başlatmak için:

Seçenek Örnek/Bağlantı
Kod bloğunun sağ üst köşesindeki Deneyin’i seçin. Deneyin seçeneği belirlendiğinde, kod otomatik olarak Cloud Shell’e kopyalanmaz. Azure Cloud Shell için Deneyin örneği
Cloud Shell’i tarayıcınızda açmak için https://shell.azure.com bölümüne gidin veya Cloud Shell’i Başlat düğmesini seçin. Cloud Shell’i yeni bir pencerede başlatma
Azure portalın sağ üst köşesindeki menü çubuğunda yer alan Cloud Shell düğmesini seçin. Azure portaldaki Cloud Shell düğmesi

Azure Cloud Shell’de bu makaledeki kodu çalıştırmak için:

  1. Cloud Shell’i başlatın.

  2. Kodu kopyalamak için kod bloğunda Kopyala düğmesini seçin.

  3. Windows ve Linux sisteminde Ctrl+Shift+V tuşlarını kullanarak veya macOS’de Cmd+Shift+V tuşlarını kullanarak kodu Cloud Shell oturumuna yapıştırın.

  4. Kodu çalıştırmak için Enter tuşuna basın.

Azure'da oturum açma

CLı kullanarak Azure 'da oturum açmak için şunu yazabilirsiniz:

az login

CLı aracılığıyla oturum açma seçenekleri hakkında daha fazla bilgi için bkz. Azure CLI ile oturum açma

Yeni bir rol ataması oluştur

Tüm anahtarlar için roller atama

az keyvault role assignment createContosoHSM içindeki tüm anahtarlar (kapsam) için Kullanıcı asıl adı kullanıcı2 @ contoso.com tarafından tanımlanan kullanıcıya yönetilen bir HSM şifre Müdürü rolü atamak için komutunu kullanın /keys .

az keyvault role assignment create --hsm-name ContosoMHSM --role "Managed HSM Crypto Officer" --assignee user2@contoso.com  --scope /keys

Belirli bir anahtar için rol ata

az keyvault role assignment create Myrsakey adlı belirli bir anahtar için Kullanıcı asıl adı kullanıcı2 @ contoso.com tarafından tanımlanan kullanıcıya yönetilen bir HSM şifre Müdürü rolü atamak için komutunu kullanın.

az keyvault role assignment create --hsm-name ContosoMHSM --role "Managed HSM Crypto Officer" --assignee user2@contoso.com  --scope /keys/myrsakey

Varolan rol atamalarını listeleyin

az keyvault role assignment listRol atamalarını listelemek için kullanın.

Tüm kullanıcılar için kapsam/(hiçbir kapsam belirtilmediğinde varsayılan) tüm rol atamaları (--atane belirtildiğinde varsayılan)

az keyvault role assignment list --hsm-name ContosoMHSM

Tüm rol atamaları belirli bir kullanıcı için HSM düzeyinde user1@contoso.com .

az keyvault role assignment list --hsm-name ContosoMHSM --assignee user@contoso.com

Not

Kapsam/(veya/anahtarlar) olduğunda list komutu yalnızca en üst düzeydeki tüm rol atamalarını listeler ve tek bir anahtar düzeyinde rol atamalarını göstermez.

Belirli bir anahtar için belirli bir kullanıcı için tüm rol atamaları user2@contoso.com myrsakey.

az keyvault role assignment list --hsm-name ContosoMHSM --assignee user2@contoso.com --scope /keys/myrsakey

Belirli bir user2@contoso.com anahtar myrsakey için belirli BIR kullanıcı Için rol yönetimli HSM şifre müdürü için belirli bir rol ataması

az keyvault role assignment list --hsm-name ContosoMHSM --assignee user2@contoso.com --scope /keys/myrsakey --role "Managed HSM Crypto Officer"

Rol atamasını silme

az keyvault role assignment deleteKey myrsakey2 için Kullanıcı kullanıcı2 @ contoso.com 'e atanan bir yönetilen HSM şifre Müdürü rolünü silmek için komutunu kullanın.

az keyvault role assignment delete --hsm-name ContosoMHSM --role "Managed HSM Crypto Officer" --assignee user2@contoso.com  --scope /keys/myrsakey2

Tüm kullanılabilir rol tanımlarını listeleyin

az keyvault role definition listTüm rol tanımlarını listelemek için komutunu kullanın.

az keyvault role definition list --hsm-name ContosoMHSM

Yeni bir rol tanımı oluştur

Yönetilen HSM, en yaygın kullanım senaryoları için faydalı olan çeşitli yerleşik (önceden tanımlanmış) roller içerir. Rolün gerçekleştirmesine izin verilen belirli eylemlerin bir listesiyle kendi rolünüzü tanımlayabilirsiniz. Ardından, belirtilen eylemlere izin vermek için bu rolü sorumlularına atayabilirsiniz.

az keyvault role definition createBIR JSON dizesi kullanarak özel rol adlı bir rol için komutunu kullanın.

az keyvault role definition create --hsm-name ContosoMHSM --role-definition '{
    "roleName": "My Custom Role",
    "description": "The description of the custom rule.",
    "actions": [],
    "notActions": [],
    "dataActions": [
        "Microsoft.KeyVault/managedHsm/keys/read/action"
    ],
    "notDataActions": []
}'

az keyvault role definition createBir rol tanımı IÇIN JSON dizesini içeren my-custom-role-definition.js adlı dosyadan bir rol için komutunu kullanın. Yukarıdaki örneğe bakın.

az keyvault role definition create --hsm-name ContosoMHSM --role-definition @my-custom-role-definition.json

Rol tanımının ayrıntılarını göster

az keyvault role definition showAdı (bır GUID) kullanarak belirli bir rol tanımının ayrıntılarını görmek için komutunu kullanın.

az keyvault role definition show --hsm-name ContosoMHSM --name xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Özel bir rol tanımını güncelleştirme

az keyvault role definition updateJSON dizesi kullanarak özel rolmy adlı bir rolü güncelleştirmek için komutunu kullanın.

az keyvault role definition create --hsm-name ContosoMHSM --role-definition '{
            "roleName": "My Custom Role",
            "name": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
            "id": "Microsoft.KeyVault/providers/Microsoft.Authorization/roleDefinitions/xxxxxxxx-
        xxxx-xxxx-xxxx-xxxxxxxxxxxx",
            "description": "The description of the custom rule.",
            "actions": [],
            "notActions": [],
            "dataActions": [
                "Microsoft.KeyVault/managedHsm/keys/read/action",
                "Microsoft.KeyVault/managedHsm/keys/write/action",
                "Microsoft.KeyVault/managedHsm/keys/backup/action",
                "Microsoft.KeyVault/managedHsm/keys/create"
            ],
            "notDataActions": []
        }'

Özel rol tanımını sil

az keyvault role definition deleteAdı (bır GUID) kullanarak belirli bir rol tanımının ayrıntılarını görmek için komutunu kullanın.

az keyvault role definition delete --hsm-name ContosoMHSM --name xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Not

Yerleşik roller silinemez. Özel roller silindiğinde, bu özel rolü kullanan tüm rol atamaları işlevsiz olur.

Sonraki adımlar