Пример #1
0
        public void SetFromDictionary(Dictionary <string, string> dictionary)
        {
            IdentityClaim = new GirvsIdentityClaim
            {
                OtherClaims = dictionary
            };

            IdentityClaim.UserId =
                dictionary.GetDictionaryValueByKey(GirvsIdentityClaimTypes.UserId);

            IdentityClaim.UserName =
                dictionary.GetDictionaryValueByKey(GirvsIdentityClaimTypes.UserName);

            IdentityClaim.TenantId =
                dictionary.GetDictionaryValueByKey(GirvsIdentityClaimTypes.TenantId);

            IdentityClaim.TenantName =
                dictionary.GetDictionaryValueByKey(GirvsIdentityClaimTypes.TenantName);

            var identityType = dictionary.GetDictionaryValueByKey(GirvsIdentityClaimTypes.IdentityType);

            if (!identityType.IsNullOrEmpty())
            {
                IdentityClaim.IdentityType =
                    identityType.ToEnum <IdentityType>();
            }

            var systemModule = dictionary.GetDictionaryValueByKey(GirvsIdentityClaimTypes.ClaimSystemModule);

            if (!systemModule.IsNullOrEmpty())
            {
                IdentityClaim.SystemModule = systemModule.ToEnum <SystemModule>();
            }
        }
Пример #2
0
        public ClaimsIdentity BuildClaimsIdentity(GirvsIdentityClaim girvsIdentityClaim)
        {
            girvsIdentityClaim.OtherClaims.SetDictionaryKeyValue(GirvsIdentityClaimTypes.UserId,
                                                                 girvsIdentityClaim.UserId);
            girvsIdentityClaim.OtherClaims.SetDictionaryKeyValue(GirvsIdentityClaimTypes.UserName,
                                                                 girvsIdentityClaim.UserName);
            girvsIdentityClaim.OtherClaims.SetDictionaryKeyValue(GirvsIdentityClaimTypes.TenantId,
                                                                 girvsIdentityClaim.TenantId);
            girvsIdentityClaim.OtherClaims.SetDictionaryKeyValue(GirvsIdentityClaimTypes.TenantName,
                                                                 girvsIdentityClaim.TenantName);
            girvsIdentityClaim.OtherClaims.SetDictionaryKeyValue(GirvsIdentityClaimTypes.IdentityType,
                                                                 girvsIdentityClaim.IdentityType.ToString());
            girvsIdentityClaim.OtherClaims.SetDictionaryKeyValue(GirvsIdentityClaimTypes.ClaimSystemModule,
                                                                 girvsIdentityClaim.SystemModule.ToString());

            var claims = girvsIdentityClaim.OtherClaims.Select(x => new Claim(
                                                                   x.Key, x.Value));

            return(new ClaimsIdentity(claims));
        }