public PSKeyVault(Vault vault, IMicrosoftGraphClient graphClient)
        {
            var vaultTenantDisplayName = ModelExtensions.GetDisplayNameForTenant(vault.Properties.TenantId, graphClient);

            VaultName         = vault.Name;
            Location          = vault.Location;
            ResourceId        = vault.Id;
            ResourceGroupName = (new ResourceIdentifier(vault.Id)).ResourceGroupName;
            Tags                         = TagsConversionHelper.CreateTagHashtable(vault.Tags);
            Sku                          = vault.Properties.Sku.Name.ToString();
            TenantId                     = vault.Properties.TenantId;
            TenantName                   = vaultTenantDisplayName;
            VaultUri                     = vault.Properties.VaultUri;
            EnabledForDeployment         = vault.Properties.EnabledForDeployment ?? false;
            EnabledForTemplateDeployment = vault.Properties.EnabledForTemplateDeployment;
            EnabledForDiskEncryption     = vault.Properties.EnabledForDiskEncryption;
            EnableSoftDelete             = vault.Properties.EnableSoftDelete;
            EnablePurgeProtection        = vault.Properties.EnablePurgeProtection;
            EnableRbacAuthorization      = vault.Properties.EnableRbacAuthorization;
            PublicNetworkAccess          = vault.Properties.PublicNetworkAccess;
            SoftDeleteRetentionInDays    = vault.Properties.SoftDeleteRetentionInDays;
            AccessPolicies               = vault.Properties.AccessPolicies.Select(s => new PSKeyVaultAccessPolicy(s, graphClient)).ToArray();
            NetworkAcls                  = InitNetworkRuleSet(vault.Properties);
            OriginalVault                = vault;
        }
Beispiel #2
0
        public PSVault(KeyVaultManagement.Vault vault, PSResourceManagerModels.ActiveDirectory.ActiveDirectoryClient adClient)
        {
            var vaultTenantDisplayName = ModelExtensions.GetDisplayNameForTenant(vault.Properties.TenantId, adClient);

            VaultName         = vault.Name;
            Location          = vault.Location;
            ResourceId        = vault.Id;
            ResourceGroupName = (new PSResourceManagerModels.ResourceIdentifier(vault.Id)).ResourceGroupName;
            Tags                 = TagsConversionHelper.CreateTagHashtable(vault.Tags);
            Sku                  = vault.Properties.Sku.Name;
            TenantId             = vault.Properties.TenantId;
            TenantName           = vaultTenantDisplayName;
            VaultUri             = vault.Properties.VaultUri;
            EnabledForDeployment = vault.Properties.EnabledForDeployment;
            AccessPolicies       = vault.Properties.AccessPolicies.Select(s => new PSVaultAccessPolicy(s, adClient)).ToArray();
            OriginalVault        = vault;
        }
Beispiel #3
0
        public PSVault(Vault vault, ActiveDirectoryClient adClient)
        {
            var vaultTenantDisplayName = ModelExtensions.GetDisplayNameForTenant(vault.Properties.TenantId, adClient);

            VaultName         = vault.Name;
            Location          = vault.Location;
            ResourceId        = vault.Id;
            ResourceGroupName = (new ResourceIdentifier(vault.Id)).ResourceGroupName;
            Tags                         = TagsConversionHelper.CreateTagHashtable(vault.Tags);
            Sku                          = vault.Properties.Sku.Name.ToString();
            TenantId                     = vault.Properties.TenantId;
            TenantName                   = vaultTenantDisplayName;
            VaultUri                     = vault.Properties.VaultUri;
            EnabledForDeployment         = vault.Properties.EnabledForDeployment.HasValue ? vault.Properties.EnabledForDeployment.Value : false;
            EnabledForTemplateDeployment = vault.Properties.EnabledForTemplateDeployment;
            EnabledForDiskEncryption     = vault.Properties.EnabledForDiskEncryption;
            AccessPolicies               = vault.Properties.AccessPolicies.Select(s => new PSVaultAccessPolicy(s, adClient)).ToArray();
            OriginalVault                = vault;
        }
Beispiel #4
0
        public PSManagedHsm(ManagedHsm managedHsm, IMicrosoftGraphClient graphClient)
        {
            // PSKeyVaultIdentityItem's properties
            ResourceId        = managedHsm.Id;
            VaultName         = managedHsm.Name;
            ResourceGroupName = (new ResourceIdentifier(managedHsm.Id)).ResourceGroupName;
            Location          = managedHsm.Location;
            Tags = TagsConversionHelper.CreateTagHashtable(managedHsm.Tags);

            // PSManagedHsm's properties, hides type
            Name                      = managedHsm.Name;
            Sku                       = managedHsm.Sku.Name.ToString();
            TenantId                  = managedHsm.Properties.TenantId.Value;
            TenantName                = ModelExtensions.GetDisplayNameForTenant(TenantId, graphClient);
            InitialAdminObjectIds     = managedHsm.Properties.InitialAdminObjectIds.ToArray <string>();
            HsmUri                    = managedHsm.Properties.HsmUri;
            EnablePurgeProtection     = managedHsm.Properties.EnablePurgeProtection;
            EnableSoftDelete          = managedHsm.Properties.EnableSoftDelete;
            SoftDeleteRetentionInDays = managedHsm.Properties.SoftDeleteRetentionInDays;
            StatusMessage             = managedHsm.Properties.StatusMessage;
            ProvisioningState         = managedHsm.Properties.ProvisioningState;
            OriginalManagedHsm        = managedHsm;
        }