Exemplo n.º 1
0
        public static void SysAuth()
        {
            string           key     = Guid.NewGuid().ToString().Replace("-", string.Empty);
            AppAuthorizeInfo appInfo = new AppAuthorizeInfo();

            appInfo.FromSignData("timespan=1434372013;appsource=1;appclient=1;token=SeBCjJYRkujxEsgv9XupyHY7aMkdQuQcqGMu0wQMbhw=;appversion=1.0;");

            var newSignData = appInfo.ToSignData(key);

            appInfo.FromSignData(newSignData);
            var result = appInfo.CheckSign(key);
        }
Exemplo n.º 2
0
        public void SysAuth()
        {
            var key = Guid.NewGuid().ToString().Replace("-", string.Empty);

            var appInfo = new AppAuthorizeInfo
            {
                DeviceId  = "mmnsnd",
                IpAddress = "127.0.0.1"
            };

            var newSignData = appInfo.ToTicket("app_hlgu80900p0", "1.0", key, "ext");

            appInfo.FromTicket(newSignData);

            Assert.IsTrue(appInfo.CheckSign(key, 60, "ext").IsSuccess());
        }
Exemplo n.º 3
0
        public void SysAuth()
        {
            var key = Guid.NewGuid().ToString().Replace("-", string.Empty);

            var appInfo = new AppAuthorizeInfo
            {
                AppClient  = AppClientType.Android,
                AppSource  = "mmmmm",
                AppVersion = "1.0.1",
                DeviceId   = "mmnsnd",
                Token      = "SeBCjJYRkujxEsgv9XupyHY7aMkdQuQcqGMu0wQMbhw=",
                IpAddress  = "127.0.0.1"
            };

            var newSignData = appInfo.ToTicket(key);

            appInfo.FromTicket(newSignData);

            var result = appInfo.CheckSign(key);
        }
Exemplo n.º 4
0
        public void OnAuthorization(AuthorizationFilterContext context)
        {
            AppAuthorizeInfo sysInfo = null;
            var checkSign            = !context.Filters.Any(filter => filter is AllowNoSignAttribute);

            if (checkSign)
            {
                string auticketStr = context.HttpContext.Request.Headers[GlobalKeysUtil.AuthorizeTicketName];
                if (string.IsNullOrEmpty(auticketStr))
                {
                    context.Result = new JsonResult(new ResultMo(ResultTypes.UnKnowSource, "未知应用来源"));
                    return;
                }

                sysInfo = new AppAuthorizeInfo();
                sysInfo.FromTicket(auticketStr);

                var secretKeyRes = ApiSourceKeyUtil.GetAppSecretKey(sysInfo.AppSource, sysInfo.TenantId);
                if (!secretKeyRes.IsSuccess())
                {
                    context.Result = new JsonResult(secretKeyRes);
                    return;
                }

                if (!sysInfo.CheckSign(secretKeyRes.data))
                {
                    context.Result = new JsonResult(new ResultMo(ResultTypes.ParaError, "非法应用签名!"));
                    return;
                }
            }

            if (sysInfo == null)
            {
                sysInfo = new AppAuthorizeInfo();
            }

            SetSystemAuthorizeInfo(sysInfo, context);
            MemberShiper.SetAppAuthrizeInfo(sysInfo);
        }