internal static ServicePrincipalInKeyVaultDataSourceCredential DeserializeServicePrincipalInKeyVaultDataSourceCredential(JsonElement element) { ServicePrincipalInKVParam parameters = default; DataSourceCredentialType dataSourceCredentialType = default; Optional <string> dataSourceCredentialId = default; string dataSourceCredentialName = default; Optional <string> dataSourceCredentialDescription = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("parameters")) { parameters = ServicePrincipalInKVParam.DeserializeServicePrincipalInKVParam(property.Value); continue; } if (property.NameEquals("dataSourceCredentialType")) { dataSourceCredentialType = new DataSourceCredentialType(property.Value.GetString()); continue; } if (property.NameEquals("dataSourceCredentialId")) { dataSourceCredentialId = property.Value.GetString(); continue; } if (property.NameEquals("dataSourceCredentialName")) { dataSourceCredentialName = property.Value.GetString(); continue; } if (property.NameEquals("dataSourceCredentialDescription")) { dataSourceCredentialDescription = property.Value.GetString(); continue; } } return(new ServicePrincipalInKeyVaultDataSourceCredential(dataSourceCredentialType, dataSourceCredentialId.Value, dataSourceCredentialName, dataSourceCredentialDescription.Value, parameters)); }
internal ServicePrincipalInKeyVaultCredentialEntity(DataSourceCredentialKind dataSourceCredentialType, string id, string name, string description, ServicePrincipalInKVParam parameters) : base(dataSourceCredentialType, id, name, description) { CredentialKind = dataSourceCredentialType; Endpoint = new Uri(parameters.KeyVaultEndpoint); KeyVaultClientId = parameters.KeyVaultClientId; KeyVaultClientSecret = parameters.KeyVaultClientSecret; TenantId = parameters.TenantId; SecretNameForClientId = parameters.ServicePrincipalIdNameInKV; SecretNameForClientSecret = parameters.ServicePrincipalSecretNameInKV; }