Skip to content

Commit 9d8cba8

Browse files
committed
Added UMI related config
1 parent a22f115 commit 9d8cba8

File tree

7 files changed

+33
-25
lines changed

7 files changed

+33
-25
lines changed

src/Sql/Sql.LegacySdk/Generated/Models/EncryptionProtectorCreateOrUpdateProperties.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ public string ServerKeyType
5353
get { return this._serverKeyType; }
5454
set { this._serverKeyType = value; }
5555
}
56-
56+
5757
/// <summary>
5858
/// Initializes a new instance of the
5959
/// EncryptionProtectorCreateOrUpdateProperties class.

src/Sql/Sql/Auditing/Services/AuditingEndpointsCommunicator.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,7 @@ public DiagnosticSettingsResource UpdateDiagnosticSettings(DiagnosticSettingsRes
226226
if (server.Identity == null ||
227227
server.Identity.Type != ResourceIdentityType.SystemAssigned.ToString())
228228
{
229-
server.Identity = ResourceIdentityHelper.GetIdentityObjectFromType(true);
229+
server.Identity = ResourceIdentityHelper.GetIdentityObjectFromType(server.Identity.Type, null);
230230
server = GetCurrentSqlClient().Servers.CreateOrUpdate(resourceGroupName, serverName, server);
231231
}
232232

src/Sql/Sql/Common/ResourceIdentityHelper.cs

Lines changed: 27 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@
1212
// limitations under the License.
1313
// ----------------------------------------------------------------------------------
1414

15+
using Microsoft.Azure.Management.Sql.Models;
1516
using System.Collections.Generic;
17+
using System.Linq;
18+
using System.Runtime.CompilerServices;
1619

1720
namespace Microsoft.Azure.Commands.Sql.Common
1821
{
@@ -24,30 +27,35 @@ public enum ResourceIdentityType
2427
}
2528

2629
public class ResourceIdentityHelper
27-
{
28-
public static Management.Sql.Models.ResourceIdentity GetSystemAssignedIdentity()
30+
{
31+
public static Management.Sql.Models.ResourceIdentity GetIdentityObjectFromType(string AssignIdentity, List<string> userAssignedIdentities)
2932
{
3033
Management.Sql.Models.ResourceIdentity identityResult = null;
31-
32-
identityResult = new Management.Sql.Models.ResourceIdentity()
34+
35+
if (AssignIdentity.Equals(ResourceIdentityType.SystemAssigned))
3336
{
34-
Type = ResourceIdentityType.SystemAssigned.ToString()
35-
};
36-
37-
return identityResult;
38-
}
37+
identityResult = new Management.Sql.Models.ResourceIdentity()
38+
{
39+
Type = ResourceIdentityType.SystemAssigned.ToString()
40+
};
41+
}
3942

40-
public static Management.Sql.Models.ResourceIdentity GetUserAssignedIdentity(List<string> userAssignedIdentities)
41-
{
42-
Management.Sql.Models.ResourceIdentity identityResult = null;
43-
44-
identityResult = new Management.Sql.Models.ResourceIdentity()
43+
if (AssignIdentity.Equals(ResourceIdentityType.UserAssigned) && userAssignedIdentities.Any())
4544
{
46-
Type = ResourceIdentityType.UserAssigned.ToString(),
47-
// TODO
48-
// Add user assigned identities.
49-
};
50-
45+
Dictionary<string, UserIdentity> umiDict = new Dictionary<string, UserIdentity>();
46+
47+
foreach (string identity in userAssignedIdentities)
48+
{
49+
umiDict.Add(identity, new UserIdentity());
50+
}
51+
52+
identityResult = new Management.Sql.Models.ResourceIdentity()
53+
{
54+
Type = ResourceIdentityType.UserAssigned.ToString(),
55+
UserAssignedIdentities = umiDict
56+
};
57+
}
58+
5159
return identityResult;
5260
}
5361
}

src/Sql/Sql/ManagedInstance/Cmdlet/NewAzureSqlManagedInstance.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -517,7 +517,7 @@ public override void ExecuteCmdlet()
517517
AdministratorPassword = (this.AdministratorCredential != null) ? this.AdministratorCredential.Password : null,
518518
AdministratorLogin = (this.AdministratorCredential != null) ? this.AdministratorCredential.UserName : null,
519519
Tags = TagsConversionHelper.CreateTagDictionary(Tag, validate: true),
520-
Identity = this.AssignIdentity.Equals(ResourceIdentityType.SystemAssigned) ? ResourceIdentityHelper.GetSystemAssignedIdentity() : ResourceIdentityHelper.GetUserAssignedIdentity(this.UserAssignedIdentities),
520+
Identity = ResourceIdentityHelper.GetIdentityObjectFromType(this.AssignIdentity.IsPresent ? this.AssignIdentity.ToString() : null, UserAssignedIdentities ?? null),
521521
LicenseType = this.LicenseType,
522522
// `-StorageSizeInGB 0` as a parameter to this cmdlet means "use default".
523523
// For non-MI database, we can just pass in 0 and the server will treat 0 as default.

src/Sql/Sql/ManagedInstance/Cmdlet/SetAzureSqlManagedInstance.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -308,7 +308,7 @@ protected override IEnumerable<AzureSqlManagedInstanceModel> ApplyUserInputToMod
308308
PublicDataEndpointEnabled = this.PublicDataEndpointEnabled,
309309
ProxyOverride = this.ProxyOverride,
310310
Tags = TagsConversionHelper.CreateTagDictionary(Tag, validate: true),
311-
Identity = this.AssignIdentity.Equals(ResourceIdentityType.SystemAssigned) ? ResourceIdentityHelper.GetSystemAssignedIdentity() : ResourceIdentityHelper.GetUserAssignedIdentity(this.UserAssignedIdentities),
311+
Identity = model.FirstOrDefault().Identity ?? ResourceIdentityHelper.GetIdentityObjectFromType(this.AssignIdentity.IsPresent ? this.AssignIdentity.ToString() : null, UserAssignedIdentities ?? null),
312312
InstancePoolName = this.InstancePoolName,
313313
MinimalTlsVersion = this.MinimalTlsVersion,
314314
MaintenanceConfigurationId = this.MaintenanceConfigurationId,

src/Sql/Sql/Server/Cmdlet/NewAzureSqlServer.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,7 @@ public override void ExecuteCmdlet()
205205
SqlAdministratorPassword = (this.SqlAdministratorCredentials != null) ? this.SqlAdministratorCredentials.Password : null,
206206
SqlAdministratorLogin = (this.SqlAdministratorCredentials != null) ? this.SqlAdministratorCredentials.UserName : null,
207207
Tags = TagsConversionHelper.CreateTagDictionary(Tags, validate: true),
208-
Identity = this.AssignIdentity.Equals(ResourceIdentityType.SystemAssigned) ? ResourceIdentityHelper.GetSystemAssignedIdentity() : ResourceIdentityHelper.GetUserAssignedIdentity(this.UserAssignedIdentities),
208+
Identity = ResourceIdentityHelper.GetIdentityObjectFromType(this.AssignIdentity.IsPresent ? this.AssignIdentity.ToString() : null, UserAssignedIdentities ?? null),
209209
MinimalTlsVersion = this.MinimalTlsVersion,
210210
PublicNetworkAccess = this.PublicNetworkAccess,
211211
PrimaryUserAssignedIdentityId = this.PrimaryUserAssignedIdentityId,

src/Sql/Sql/Server/Cmdlet/SetAzureSqlServer.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ public class SetAzureSqlServer : AzureSqlServerCmdletBase
141141
Tags = TagsConversionHelper.ReadOrFetchTags(this, model.FirstOrDefault().Tags),
142142
ServerVersion = this.ServerVersion,
143143
Location = model.FirstOrDefault().Location,
144-
Identity = this.AssignIdentity.Equals(ResourceIdentityType.SystemAssigned) ? ResourceIdentityHelper.GetSystemAssignedIdentity() : ResourceIdentityHelper.GetUserAssignedIdentity(this.UserAssignedIdentities),
144+
Identity = model.FirstOrDefault().Identity ?? ResourceIdentityHelper.GetIdentityObjectFromType(this.AssignIdentity.IsPresent ? this.AssignIdentity.ToString() : null, UserAssignedIdentities ?? null),
145145
PublicNetworkAccess = this.PublicNetworkAccess,
146146
MinimalTlsVersion = this.MinimalTlsVersion,
147147
SqlAdministratorLogin = model.FirstOrDefault().SqlAdministratorLogin,

0 commit comments

Comments
 (0)