Beispiel #1
0
        public void TestSerializerValidIdentity()
        {
            UserAssignedIdentity userAssignedIdentity = new UserAssignedIdentity(new Guid("72f988bf-86f1-41af-91ab-2d7cd011db47"), new Guid("de29bab1-49e1-4705-819b-4dfddceaaa98"));
            string expected = "{\"clientId\":\"72f988bf-86f1-41af-91ab-2d7cd011db47\",\"principalId\":\"de29bab1-49e1-4705-819b-4dfddceaaa98\"}";

            JsonAsserts.AssertSerialization(expected, userAssignedIdentity);
        }
Beispiel #2
0
        public void TestSerializerNullIdentity()
        {
            UserAssignedIdentity userAssignedIdentity = null;

            Assert.Throws <NullReferenceException>(delegate
                                                   { JsonAsserts.AssertSerializes(userAssignedIdentity); });
        }
Beispiel #3
0
        public void TestSerializerValidIdentityNull()
        {
            ResourceIdentity identity = new ResourceIdentity();
            string           expected = "{\"identity\":\"null\"}";

            JsonAsserts.AssertSerialization(expected, identity);
        }
Beispiel #4
0
        public void TestSerializerInvalidNullIdentity()
        {
            ResourceIdentity identity = null;

            Assert.Throws <NullReferenceException>(delegate
                                                   { JsonAsserts.AssertSerializes(identity); });
        }
        public void TestDeserializeFromV3AndSerializeToV4SystemAndUser()
        {
            //Deserialize from v3
            var identityJsonProperty = DeserializerHelper("SystemAndUserAssignedValidV3.json");
            var identityJsonV3       = identityJsonProperty.Value.ToString();

            Assert.IsTrue(identityJsonV3.Contains("SystemAssigned,UserAssigned"));
            var serializeOptions = new JsonSerializerOptions {
                Converters = { new ManagedServiceIdentityTypeV3Converter() }
            };
            ManagedServiceIdentity back = JsonSerializer.Deserialize <ManagedServiceIdentity>(identityJsonV3, serializeOptions);
            var userIdentities          = back.UserAssignedIdentities;

            Assert.IsTrue("22fdaec1-8b9f-49dc-bd72-ddaf8f215577".Equals(back.PrincipalId.ToString()));
            Assert.IsTrue("72f988af-86f1-41af-91ab-2d7cd011db47".Equals(back.TenantId.ToString()));
            Assert.AreEqual("/subscriptions/db1ab6f0-4769-4aa7-930e-01e2ef9c123c/resourceGroups/tester/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity", userIdentities.Keys.First().ToString());
            Assert.AreEqual("9a9eaa6a-b49c-4c63-afb5-3b72e3e65422", userIdentities.Values.First().ClientId.ToString());
            Assert.AreEqual("77563a98-c9d9-407b-a7af-592d21fa2153", userIdentities.Values.First().PrincipalId.ToString());
            Assert.AreEqual("SystemAssigned, UserAssigned", back.ManagedServiceIdentityType.ToString());
            //Serialize to v4
            string user       = "******";
            string expectedV4 = "{" +
                                "\"type\":\"SystemAssigned, UserAssigned\"," +
                                "\"userAssignedIdentities\":" +
                                "{" + "\"/subscriptions/db1ab6f0-4769-4aa7-930e-01e2ef9c123c/resourceGroups/tester/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity\":" +
                                user + "}}";

            JsonAsserts.AssertConverterSerialization(expectedV4, back);
        }
        public void TestSerializerValidSystemOnly()
        {
            ManagedServiceIdentity identity = new ManagedServiceIdentity(new Guid("de29bab1-49e1-4705-819b-4dfddceaaa98"), new Guid("72f988bf-86f1-41af-91ab-2d7cd011db47"), ManagedServiceIdentityType.SystemAssigned, new ChangeTrackingDictionary <ResourceIdentifier, UserAssignedIdentity>());
            //string system = "\"principalId\":\"de29bab1-49e1-4705-819b-4dfddceaaa98\",\"tenantId\":\"72f988bf-86f1-41af-91ab-2d7cd011db47\"";
            string expected = "{\"type\":\"SystemAssigned\"}";

            JsonAsserts.AssertConverterSerialization(expected, identity);
        }
Beispiel #7
0
        public void TestSerializerValidSystemOnly()
        {
            SystemAssignedIdentity systemAssignedIdentity = new SystemAssignedIdentity(new Guid("72f988bf-86f1-41af-91ab-2d7cd011db47"), new Guid("de29bab1-49e1-4705-819b-4dfddceaaa98"));
            ResourceIdentity       identity = new ResourceIdentity(systemAssignedIdentity, null);
            string system   = "\"principalId\":\"de29bab1-49e1-4705-819b-4dfddceaaa98\",\"tenantId\":\"72f988bf-86f1-41af-91ab-2d7cd011db47\"";
            string expected = "{\"identity\":{" +
                              system + "," +
                              "\"type\":\"SystemAssigned\"}}";

            JsonAsserts.AssertSerialization(expected, identity);
        }
        public void TestSerializerValidUserNullSystem()
        {
            UserAssignedIdentity userAssignedIdentity = new UserAssignedIdentity(new Guid("72f988bf-86f1-41af-91ab-2d7cd011db47"), new Guid("de29bab1-49e1-4705-819b-4dfddceaaa98"));
            var dict1 = new Dictionary<string, UserAssignedIdentity>();
            dict1["/subscriptions/db1ab6f0-4769-4aa7-930e-01e2ef9c123c/resourceGroups/tester/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity"] = userAssignedIdentity;
            ManagedServiceIdentity identity = new ManagedServiceIdentity(null, null, ManagedServiceIdentityType.UserAssigned, dict1);
            string user = "******";
            string expected = "{\"type\":\"UserAssigned\"," +
                "\"userAssignedIdentities\":" +
                "{" + "\"/subscriptions/db1ab6f0-4769-4aa7-930e-01e2ef9c123c/resourceGroups/tester/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity\":" +
                user + "}}";

            JsonAsserts.AssertConverterSerialization(expected, identity);
        }
Beispiel #9
0
        public void TestSerializerValidUserNullSystem()
        {
            UserAssignedIdentity userAssignedIdentity = new UserAssignedIdentity(new Guid("72f988bf-86f1-41af-91ab-2d7cd011db47"), new Guid("de29bab1-49e1-4705-819b-4dfddceaaa98"));
            var dict1 = new Dictionary <ResourceIdentifier, UserAssignedIdentity>();

            dict1[new ResourceIdentifier("/subscriptions/6b085460-5f21-477e-ba44-1035046e9101/resourceGroups/nbhatia_test/providers/Microsoft.Web/sites/autoreport")] = userAssignedIdentity;
            ResourceIdentity identity = new ResourceIdentity(dict1, false);
            string           user     = "******";
            string           expected = "{\"identity\":{" +
                                        "\"type\":\"UserAssigned\"," +
                                        "\"userAssignedIdentities\":" +
                                        "{" + "\"/subscriptions/6b085460-5f21-477e-ba44-1035046e9101/resourceGroups/nbhatia_test/providers/Microsoft.Web/sites/autoreport\":" +
                                        user + "}}}";

            JsonAsserts.AssertSerialization(expected, identity);
        }
        public void TestSerializerValidSystemAndUserV3()
        {
            UserAssignedIdentity userAssignedIdentity = new UserAssignedIdentity(new Guid("72f988bf-86f1-41af-91ab-2d7cd011db47"), new Guid("de29bab1-49e1-4705-819b-4dfddceaaa98"));
            var dict1 = new Dictionary <ResourceIdentifier, UserAssignedIdentity>();

            dict1[new ResourceIdentifier("/subscriptions/db1ab6f0-4769-4aa7-930e-01e2ef9c123c/resourceGroups/tester/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity")] = userAssignedIdentity;
            ManagedServiceIdentity identity = new ManagedServiceIdentity(new Guid("de29bab1-49e1-4705-819b-4dfddceaaa98"), new Guid("72f988bf-86f1-41af-91ab-2d7cd011db47"), ManagedServiceIdentityType.SystemAssignedUserAssigned, dict1);
            string user     = "******";
            string expected = "{" +
                              "\"type\":\"SystemAssigned,UserAssigned\"," +
                              "\"userAssignedIdentities\":" +
                              "{" + "\"/subscriptions/db1ab6f0-4769-4aa7-930e-01e2ef9c123c/resourceGroups/tester/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity\":" +
                              user + "}}";
            var serializeOptions = new JsonSerializerOptions {
                Converters = { new ManagedServiceIdentityTypeV3Converter() }
            };

            JsonAsserts.AssertConverterSerialization(expected, identity, serializeOptions);
        }
Beispiel #11
0
        public void TestSerializerValidSystemAndUser()
        {
            SystemAssignedIdentity systemAssignedIdentity = new SystemAssignedIdentity(new Guid("72f988bf-86f1-41af-91ab-2d7cd011db47"), new Guid("de29bab1-49e1-4705-819b-4dfddceaaa98"));
            UserAssignedIdentity   userAssignedIdentity   = new UserAssignedIdentity(new Guid("72f988bf-86f1-41af-91ab-2d7cd011db47"), new Guid("de29bab1-49e1-4705-819b-4dfddceaaa98"));
            var dict1 = new Dictionary <ResourceIdentifier, UserAssignedIdentity>();

            dict1["/subscriptions/6b085460-5f21-477e-ba44-1035046e9101/resourceGroups/nbhatia_test/providers/Microsoft.Web/sites/autoreport"] = userAssignedIdentity;
            ResourceIdentity identity = new ResourceIdentity(systemAssignedIdentity, dict1);
            string           system   = "\"principalId\":\"de29bab1-49e1-4705-819b-4dfddceaaa98\",\"tenantId\":\"72f988bf-86f1-41af-91ab-2d7cd011db47\"";
            string           user     = "******"clientId\":\"72f988bf-86f1-41af-91ab-2d7cd011db47\",\"principalId\":\"de29bab1-49e1-4705-819b-4dfddceaaa98\"}";
            string           expected = "{\"identity\":{" +
                                        system + "," +
                                        "\"type\":\"SystemAssigned, UserAssigned\"," +
                                        "\"userAssignedIdentities\":" +
                                        "{" + "\"/subscriptions/6b085460-5f21-477e-ba44-1035046e9101/resourceGroups/nbhatia_test/providers/Microsoft.Web/sites/autoreport\":" +
                                        user + "}}}";

            JsonAsserts.AssertSerialization(expected, identity);
        }