示例#1
0
        /// <summary>
        /// This method is called whenever claims about the user are requested (e.g. during token creation or via the userinfo endpoint)
        /// </summary>
        /// <param name="context">The context.</param>
        /// <returns></returns>
        public virtual async Task GetProfileDataAsync(ProfileDataRequestContext context)
        {
            await _delegateProfileService.GetProfileDataAsync(context);

            var query = from item in context.Subject.Claims
                        where item.Type.StartsWith("agent:", StringComparison.InvariantCultureIgnoreCase)
                        select item;

            context.IssuedClaims.AddRange(query);
            context.IssuedClaims.Add(new Claim("role", "agent_proxy"));
        }
        /// <summary>
        /// This method is called whenever claims about the user are requested (e.g. during token creation or via the userinfo endpoint)
        /// </summary>
        /// <param name="context">The context.</param>
        /// <returns></returns>
        public virtual async Task GetProfileDataAsync(ProfileDataRequestContext context)
        {
            await _delegateProfileService.GetProfileDataAsync(context);

            context.IssuedClaims.Add(new Claim("role", "support_agent"));
        }