コード例 #1
0
        public void When_Passing_Null_Parameters_To_GenerateFilteredUserInfoPayload_Then_Exception_Is_Thrown()
        {
            // ARRANGE
            InitializeMockObjects();
            var authorizationParameter = new AuthorizationParameter();

            // ACT & ASSERT
            Assert.Throws <ArgumentNullException>(() => _jwtGenerator.GenerateFilteredUserInfoPayload(null, null, null));
            Assert.Throws <ArgumentNullException>(() => _jwtGenerator.GenerateFilteredUserInfoPayload(null, authorizationParameter, null));
        }
コード例 #2
0
        /// <summary>
        /// Generate the JWS payload for user information endpoint.
        /// If at least one claim is defined then returns the filtered result
        /// Otherwise returns the default payload based on the scopes.
        /// </summary>
        /// <param name="claimsPrincipal"></param>
        /// <param name="authorizationParameter"></param>
        /// <returns></returns>
        private async Task <JwsPayload> GenerateUserInformationPayload(IList <Claim> claims, AuthorizationParameter authorizationParameter)
        {
            JwsPayload jwsPayload;

            if (authorizationParameter.Claims != null && authorizationParameter.Claims.IsAnyUserInfoClaimParameter())
            {
                jwsPayload = _jwtGenerator.GenerateFilteredUserInfoPayload(Clone(authorizationParameter.Claims.UserInfo), authorizationParameter, claims);
            }
            else
            {
                jwsPayload = await _jwtGenerator.GenerateUserInfoPayloadForScopeAsync(authorizationParameter, claims);
            }

            return(jwsPayload);
        }