首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

系统管理及安全规范

如测试环境和生产环境网络从物理上隔离;系统端口/应用端口段规范;对外提供web服务的机器和核心应用数据环境的分离; 1.测试机集中管理,在物理机上采用虚拟机方式部署测试环境,与核心生产环境隔离。 2.类似于web服务,邮件服务器这种对外服务的业务环境,与核心业务线上环境隔离,集中管理并使用虚拟机部署 3.网关这类需要面向所有用户开放的服务器,严格控制WEB服务的IP访问许可,不允许部署完全开放的WEB服务。 4.所有核心业务的WEB服务从根目录开始必须配置IP访问控制,针对特定需求对子目录配置权限白名单。 5.核心业务的数据库服务器在配置完成后即只能通过指定的IP连接,需要WEB管理的后台,严格限制IP访问许可。 6.当在服务器上安装系统时,如果服务器是业务部门申请使用的机器,则根据业务部门的申请,确认审批后开放适当的端口,并且必须限制访问IP。否则一律只开ssh登陆端口和监控端口。SSH远程连接仅限公司堡垒机。 7.每台服务器系统禁止root用户远程登陆,并开通仅供系统部门服务器管理人员使用的管理账号,远程连接必须密钥登陆,使用sudo来执行管理命令,每次连接服务器第一次执行sudo相关命令时,需要输入密码。 8.如果服务器是给指定项目使用,则此服务器上存在仅供项目负责人使用的账号,这个账号可以启动关闭应用服务,可以对应用服务所在的目录进行数据的增删改查。如果项目内其他人需要有开启关闭服务的权限。

03

SQL Server的六种数据移动方法

1.通过工具DTS的设计器进行导入或导出       DTS的设计器功能强大,支持多任务,也是可视化界面,容易操作,但知道的人一般不多,如果只是进行SQL   Server数据库中部分表的移动,用这种方法最好,当然,也可以进行全部表的移动。在SQL   Server   Enterprise   Manager中,展开服务器左边的+,选择数据库,右击,选择All   tasks/Import   Data...(或All   tasks/Export   Data...),进入向导模式,按提示一步一步走就行了,里面分得很细,可以灵活的在不同数据源之间复制数据,很方便的。而且可以另存成DTS包,如果以后还有相同的复制任务,直接运行DTS包就行,省时省力。也可以直接打开DTS设计器,方法是展开服务器名称下面的Data   Transformation   Services,选Local   Packages,在右边的窗口中右击,选New   Package,就打开了DTS设计器。值得注意的是:如果源数据库要拷贝的表有外键,注意移动的顺序,有时要分批移动,否则外键主键,索引可能丢失,移动的时候选项旁边的提示说的很明白,或者一次性的复制到目标数据库中,再重新建立外键,主键,索引。         其实建立数据库时,建立外键,主键,索引的文件应该和建表文件分开,而且用的数据文件也分开,并分别放在不同的驱动器上,有利于数据库的优化。         2.   利用Bcp工具         这种工具虽然在SQL   Server7的版本中不推荐使用,但许多数据库管理员仍很喜欢用它,尤其是用过SQL   Server早期版本的人。Bcp有局限性,首先它的界面不是图形化的,其次它只是在SQL   Server的表(视图)与文本文件之间进行复制,但它的优点是性能好,开销小,占用内存少,速度快。有兴趣的朋友可以查参考手册。         3.   利用备份和恢复         先对源数据库进行完全备份,备份到一个设备(device)上,然后把备份文件复制到目的服务器上(恢复的速度快),进行数据库的恢复操作,在恢复的数据库名中填上源数据库的名字(名字必须相同),选择强制型恢复(可以覆盖以前数据库的选项),在选择从设备中进行恢复,浏览时选中备份的文件就行了。这种方法可以完全恢复数据库,包括外键,主键,索引。       4.   直接拷贝数据文件         把数据库的数据文件(*.mdf)和日志文件(*.ldf)都拷贝到目的服务器,在SQL   Server   Query   Analyzer中用语句进行恢复:     EXEC   sp_attach_db   @dbname   =   ’test’,     @filename1   =   ’d:mssql7data   est_data.mdf’,     @filename2   =   ’d:mssql7data   est_log.ldf’         这样就把test数据库附加到SQL   Server中,可以照常使用。如果不想用原来的日志文件,可以用如下的命令:       EXEC   sp_detach_db   @dbname   =   ’test’     EXEC   sp_attach_single_file_db   @dbname   =   ’test’,     @physname   =   ’d:mssql7data   est_data.mdf’         这个语句的作用是仅仅加载数据文件,日志文件可以由SQL   Server数据库自动添加,但是原来的日志文件中记录的数据就丢失了。         5.   在应用程序中定制         可以在应用程序(PB、VB)中执行自己编写的程序,也可以在Query   Analyzer中执行,这种方法比较灵活,其实是利用一个平台连接到数据库,在平台中用的主要时SQL语句,这种方法对数据库的影响小,但是如果用到远程链接服务器,要求网络之间的传输性能好,一般有两种语句:     1>select   ...   into   new_tablename   where   ...     2>insert   (into)   old_tablename   select   ...   from   ...   where   ...       区别是前者把数据插入一个新表(先建立表,再插入数据),后者是把数据插入已经存在的一个表中,我个人喜欢后者,因为在编程的结构上,应用的范围上,第二条语句强于前者。         6.

03

jwt解析网站_jwt工作原理

在登录一个网站进行访问时由于HTTP协议是无状态的就是说一次HTTP请求后他就会被销毁,比如我在www.a.com/login里面登录了,然后你就要访问别的了比如要访问www.a.com/index但是你访问这个网站你就得再发一次HTTP请求,至于说之前的请求跟现在没关,不会有任何记忆,这次访问会失败,因为无法验证你的身份。所以你登录完之后每次在请求上都得带上账号密码等验证身份的信息,但是你天天这么带,那太麻烦了。那还可以这样,把我第一次登录的信息状态都放在数据库里,下次我一访问,我查一下数据库就知道我登没登陆了,但是频繁查找数据库会给后台服务器造成非常大的压力所以就出现了Cookie,第一次登录就会返回一个Cookie,将一些简单地信息放在Cookie里返回给客户端,然后在客户端保存,每个域名下对应有一堆Cookie,下次我带Cookie来访问就行了。这样做也行但是Cookie很容易被篡改放在客户端并不安全,而且Cookie多了会无形的增加客户端与服务端的传输数据量。所以Session就出现了,Session放在后台服务器,将SessionID返回给客户端作为Cookie的值下次我带Cookie过来通过SessionID来查找Session中的一些登录或其他信息就行了。这样做也挺好。但是如果是集群环境下,那就不行了Session不能跨域也就是说你用www.baidu.com下的SessionID访问www.bilibili.com下的Session是不行的为了解决这个问题我们还得将Session在每台服务器上进行同步这也是一笔巨大的开销。

06
领券