示例#1
0
            public void GetEffectiveUserId_NonAzureADToken_ReturnsUserIdClaim()
            {
                var expectedUserId = TestHelper.GenerateRandomString();

                this.AppConfiguration.AzureAuthenticationEnabled = false;
                claimResult.SchemeItem = "NotAzure";
                claimResult.UserId     = expectedUserId;

                var result = ClaimsService.GetEffectiveUserId(claimResult);

                Assert.Equal <string>(expectedUserId, result);
            }
示例#2
0
            public void GetEffectiveUserId_NullClaimResult_ReturnsException()
            {
                Exception excResult = null;

                try
                {
                    var result = ClaimsService.GetEffectiveUserId(null);
                    Assert.True(false, "Should not get past this function call.");
                }
                catch (Exception exc)
                {
                    excResult = exc;
                }

                Assert.NotNull(excResult);
                Assert.IsType <ArgumentNullException>(excResult);
                Assert.True(excResult.Message.Contains("The object name 'claimInformation' cannot be null."));
            }
示例#3
0
            public void GetEffectiveUserId_OIDAlternativeAzureClaim_ReturnsAzureSubjectId()
            {
                this.AppConfiguration.AzureAuthenticationEnabled = true;

                var expectedUserId = TestHelper.GenerateRandomString();
                var claimSubjectId = TestHelper.GenerateRandomString();

                claimResult.SchemeItem = FabricIdentityConstants.AuthenticationSchemes.Azure;
                claimResult.Claims     = new List <Claim>()
                {
                    new Claim(AzureActiveDirectoryJwtClaimTypes.OID_Alternative, claimSubjectId)
                };
                claimResult.UserId = expectedUserId;

                var result = ClaimsService.GetEffectiveUserId(claimResult);

                Assert.Equal <string>(claimSubjectId, result);
                Assert.Equal <string>(claimSubjectId, result);
                Assert.NotEqual <string>(expectedUserId, result);
            }
示例#4
0
            public void GetEffectiveUserId_NoAzureClaims_ReturnsUserIdClaim()
            {
                this.AppConfiguration.AzureAuthenticationEnabled = true;

                var expectedUserId = TestHelper.GenerateRandomString();
                var claimSubjectId = TestHelper.GenerateRandomString();

                claimResult.SchemeItem = FabricIdentityConstants.AuthenticationSchemes.Azure;
                claimResult.Claims     = new List <Claim>()
                {
                };
                claimResult.UserId = expectedUserId;

                var result = ClaimsService.GetEffectiveUserId(claimResult);

                Assert.Equal <string>(expectedUserId, result);

                Assert.Equal <string>(expectedUserId, result);
                Assert.NotEqual <string>(claimSubjectId, result);
            }
示例#5
0
            public void GetEffectiveUserId_SchemeItemNotAzure_ReturnsUserIdClaim()
            {
                this.AppConfiguration.AzureAuthenticationEnabled = true;

                var expectedUserId = TestHelper.GenerateRandomString();
                var claimSubjectId = TestHelper.GenerateRandomString();

                claimResult.SchemeItem = "not azure";
                claimResult.Claims     = new List <Claim>()
                {
                    new Claim(AzureActiveDirectoryJwtClaimTypes.OID_Alternative, claimSubjectId)
                };
                claimResult.UserId = expectedUserId;

                var result = ClaimsService.GetEffectiveUserId(claimResult);

                Assert.Equal(expectedUserId, result);

                Assert.Equal(expectedUserId, result);
                Assert.NotEqual(claimSubjectId, result);
            }