C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - SOA面向安全的服务调用接口

当开发人员多了,开发的系统多了,用户也多了,部署的服务器也多了,各种问题就出来了。

1:如何方式黑客捣乱?

2:如何防止竞争对手捣乱?

3:如何方式核心信息系统的安全?

4:如何可以灵活部署,互相不影响?

5:如何可以定期修改核心数据库密码、保证安全性,保证部署的灵活性?

6:如何保证你代码的整洁、增加方法、服务时可以灵活?

7:如何保证跨平台的调用?

8:如何保证调试、开发的效率?

9:如何保证服务的内部安全性?

部分代码参考如下:

        #region private void GetObject(HttpContext context, NameValueCollection nameValueCollection) 获取用户实体
        /// <summary>
        /// 获取用户实体
        /// </summary>
        /// <param name="context">上下文</param>
        /// <param name="nameValueCollection">参数集合</param>
        private void GetObject(HttpContext context, NameValueCollection nameValueCollection)
        {
            bool valid = true;
            string id = string.Empty;
            BaseUserEntity userEntity = null;
            if (valid && !string.IsNullOrEmpty(nameValueCollection["Id"]))
            {
                id = nameValueCollection["Id"];
                if (!string.IsNullOrEmpty(id) && ValidateUtil.IsInt(id))
                {
                    valid = true;
                }
            }
            else
            {
                valid = false;
            }
            if (valid)
            {
                // 获取处理人员ID
                BaseUserManager userManager = new BaseUserManager();
                // 根据ID获取用户信息
                userEntity = userManager.GetObject(id);
            }
            // 序列化
            JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
            string jsonResult = javaScriptSerializer.Serialize(userEntity);
            context.Response.Write(jsonResult);           
        }
        #endregion

        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            // 输入的参数是否有效,进行严格限制访问
            bool valid = true;
            string function = string.Empty;
            NameValueCollection nameValueCollection = SecretUtil.ProcessSecurityRequest(context, out valid, out function);
            if (valid && !string.IsNullOrEmpty(function))
            {
                if (function.Equals("GetUserByPage", StringComparison.OrdinalIgnoreCase))
                {
                    // 获取用户列表
                    GetUserByPage(context, nameValueCollection);
                }
                if (function.Equals("GetObject", StringComparison.OrdinalIgnoreCase))
                {
                    GetObject(context, nameValueCollection);
                }
            }
        }

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。