Ejemplo n.º 1
0
        private IEnumerable <AgressoUserClaim> GetUserClaimFromEvent(INamedEventResult userMappingEventResult)
        {
            // event was fired and cancel was set to true -> the result should contain a valid user id
            var userId     = userMappingEventResult["userId"] as string;
            var userName   = userMappingEventResult["userName"] as string;
            var domainInfo = userMappingEventResult["domainInfo"] as string;


            // build mapped claims list
            if (!String.IsNullOrEmpty(userId))
            {
                yield return(new AgressoUserClaim()
                {
                    AgressoUserClaimType = AgressoUserClaimType.UserId, AgressoUserClaimValue = userId
                });
            }
            if (!String.IsNullOrEmpty(userName))
            {
                yield return(new AgressoUserClaim()
                {
                    AgressoUserClaimType = AgressoUserClaimType.UserName, AgressoUserClaimValue = userName
                });
            }
            if (!String.IsNullOrEmpty(domainInfo))
            {
                yield return(new AgressoUserClaim()
                {
                    AgressoUserClaimType = AgressoUserClaimType.DomainUser, AgressoUserClaimValue = domainInfo
                });
            }
        }
Ejemplo n.º 2
0
        internal static bool NamedEventWasRaised(this INamedEventResult result)
        {
            if (!result.WasFired)
            {
                return(false);
            }

            return(result.Cancel.HasValue && result.Cancel.Value);
        }
Ejemplo n.º 3
0
        public override IEnumerable <AgressoUserClaim> GetUserClaims(IEnumerable <Claim> claims)
        {
            INamedEventResult userMappingEventResult = NamedEventRaiser.Raise("CLAIMS_AUTHENTICATION", "USER_MAPPING", "claims", claims);

            if (userMappingEventResult.NamedEventWasRaised())
            {
                return(GetUserClaimFromEvent(userMappingEventResult));
            }

            return(base.GetUserClaims(claims));
        }