后勤支持管理系统ADFS认证集成的应用与研究

来源 :科技尚品 | 被引量 : 0次 | 上传用户:guanjuntpplgj
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:后勤支持管理系统服务于整个渤海油田的后勤保障工作。渤海油田范围内的所有海上平台及基地等内、外部单位,均需使用该系统进行海上后勤管理的保障工作。故此,该系统不仅仅服务于企业内部,还有很多外部单位也需要访问。同时,随着渤海油田信息化建设的不断深入,以及国家对国有企业信息系统安全等保要求的逐步提升,原来基于内网环境下的LDAP协议的AD域登录模式,已经不能满足渤海油田信息化的安全要求。文章探讨如何采用基于SAML的ADFS联合身份验证,实现用户身份验证的安全性,保证渤海油田后勤支持管理系统的安全外网访问,以供参考。
  关键词:ADFS;安全管理;后勤管理;渤海油田
  中图分类号:TP311.52;TP309.2 文献标识码:A 文章编号:1674-1064(2021)09-0-04
  DOI:10.12310/j.issn.1674-1064.2021.09.020
  1 概况
  后勤支持管理系统,服务于渤海油田的后勤业务管理,面向内外部单位提供后勤业务系统支撑。后勤支持管理系统通过PC、移动终端(手机)等途径采集后勤作业数据,通过PC端浏览器及移动端App向用户提供服务。系统采用PAAS云+IAAS云架构,应用服务器搭建在PAAS云,数据库服务器搭建在IAAS云,依托总公司PAAS云\IAAS云服务器资源,向系统提供计算、存储、网络、负载平衡等能力。
  后勤支持管理系统采用业内主流的Java EE三层架构设计,PC端采用B/S方式实现。移动App端采用总公司移动云,系统通过数据接口与App端进行业务数据对接。
  后勤支持管理系统主要使用以下核心技术:表现层采用Spring MVC做控制,HTML做页面展现,CSS样式做页面美化,ECharts做曲线,Ajax做数据交互。业务层主框架使用SpringBoot,使用流程工具,加入消息引擎做消息推送,项目根据业务情况,自主开发调控模型来做调控算法。持久层采用MybatisPlus做数据持久化,HikariCP建立数据库连接池。
  2 现状与要求
  后勤支持管理系统之前使用系统自己的用户密码管理体系,没有与AD对接。因为总公司系统安全等保的要求,如果需要提供外网访问的系统,均需要保证用户身份验证的安全性,必须采用基于SAML的ADFS联合身份验证方案。需要按照以下流程完成ADFS联合身份验证。
  ADFS用户认证流程图中一共分三个角色,如图1所示:
  Server Provider(SP):提供服务和资源的服务提供者;
  Identity Provider(IDP):用来身份鉴别的服务器,主要是认证用户,同时生成ADFS服务器(SAML断言);
  Client:用户访问服务的客户端,比如浏览器。
  验证步骤要求主要如下:
  用户尝试访问SP提供的服务。
  SP根据配置生成一个SAML格式的身份验证请求数据包。配置包括ADFS服务器地址、证书、IDP返回SP消息数据的URL地址、身份认证协议等信息,通过浏览器重定向到ADFS服务器进行SAML身份认证。
  IDP解码SAML请求,并对用户进行身份验证,IDP要求提供有效登录凭据以验证用户身份。
  IDP生成一个SAML响应,其中包含经过验证的用户的用户名等信息。按照SAML 2.0规范,此响应将使用IDP的DSA/RSA公钥和私钥进行数字签名。
  IDP将信息返回到用户的浏览器。根据配置的返回路径,浏览器将该信息转发到SP。
  SP使用IDP的公钥验证SAML响应。如果成功验证该响应,SP则会将用户重定向到目标网址。当认证步骤中发生认证错误时,SP通过浏览器向当前用户显示明确的错误信息,如密码错误、密码过期、账号已锁定等。
  用户成功登录系统[1]。
  3 ADFS登录的方法
  在用户访问站点(后勤支持管理系统网站)时,初始化时调用后勤项目的登录接口。
  登录接口通过配置信息,生成数据包,并把地址转发到ADFS服务器登录地址。
  使用ADFS界面作为登录界面,由用户开始填写登录信息。
  执行登录时将登录信息发送到IDP服务中。
  由IDP来做用户凭证的信息认证,经过验证信息后再生成数据包,响应给浏览器。
  浏览器拿到IDP的响应后,去访问后勤系统的ssoLogin接口。
  ssoLogin接口对密钥/公钥及token的数据处理后,然后使用公钥验证IDP服务的响应,如IDP服务响应并返回“成功”状态,将浏览器页面重定向到后勤系统首页并进行页面渲染;否则在浏览器页面渲染ADFS验证失败页面。
  后勤支持管理系统向用户授权访问系统的权限。
  4 ADFS集成配置说明
  使用spring框架實现saml协议认证:spring-security-saml2-core。
  信息配置:
  sp:
   # base url
   base_url: http://localhost:9090
   # Entity ID of the SP
   entity_id: http://mock-sp
   # Private key used to sign the SAML response
   private_key: MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDQRsCf6qU0DYkoFIJUhNlMxJFKMPsEvK+u3rcaBIZcyWX4Cv5OU3xtcCAg6mqRwMRFYFDNdGgR0XLTaHAOcJpR7cXYnYc0Wa6Kh8KSstgZrCl+WdqCtuUS6bMrrAdSq6HpoAPwo1JyOqyC9ccRZ9ysjhYdWQS1ELSjUHjEuxxRoEgwKfrF7kxbo89dixQ7oF9E9CgeWtftJfMtDxGtMhmtaIurHjjcfOPWR8TND0b1Lp1pLkzPn6GdI2aRWqV3tNsljKoXP9omDInhP9xrzoLiXISbekfnLrfFQW+rmylCBiu6ZqKv0weg1V6b7B6rAyV3nIcXInLuKXSlQx0nnPOdAgMBAAECggEAOrAlKSqyYIeL5XpZ+zzwCly9X/2LThtpGcpyJ+esgMrTa+CVJjcKMcBNnVjQrL93zuDEBBDQHm05gO7F3JvIMFviyxYgehTnROvaXQH+OMW1b4AcPYcR55Foxl6UNaxdVHqdgZpT6hI0eDaPYI02tnzXKG/kDq1laTuMvErJQQp6Cd611yyAhBvpX1ibpAYvex10sfTkj0GRKmOrGqwVXibN29szaRei7Xeg/RStdVBgrYJoR5/4++dkGapa27oRdOh4VJUChRfXuJtH6pyxC7uay1fMRcmo2u6NcWAT6qMOvxLcuesnNFrbSlPoZaxWNiZRX/SVqeieyRAA0WS7IQKBgQDoywh4DkdL+SPrkA/sB0rOQF3kJjlzWibk9OM17In1P+obQk37kSRYKfBvsk48VWdG1fN33Up05Pxe+f36F//AZ8mp7uTmBtd6CAoR/005WxwkCSihF6LaDiB3VtxlpcfRA/TUZ10PMud43w0AeG30AG0KpCokfIiY87OpyTjJWQKBgQDlCgsgZ9rL3Wm7FbEDZ4f2uTB5rlT0Vz80paV0OOJdUQECrZW1PjemQpqIJocr8yoNupkrZKPSi4mbNoMFF1wXIydOjLq6iQ6KWIKRdsvmeXL++tWg6TiD8nDpBxuKzjRhwMcQN2lakb/SusoXnmG8qq12PCFUvpbhoZRqRPWv5QKBgQC8jUasxxPka0U21RawXC+w4t2pn3RFBC4goGEwGgibxkr+DTRQoHzJlB6Uud04bQwbicuLuIdIKvhmjSGzYaDa3LWwmDh6P+xjgQN3FEweOreOUITCBfz3lR2iy430HtS7bPLu31G2r8pgUnmbee/FBFtNlS41I1EYYbuRt9Pw8QKBgD6aPSpRWKtqTHD3X9e3X6FfQtGvhcb3Ze5E7HFU7wJklqsduRK9+8X05HocVcv8fd0cyKrkqiZtP2JuRueIWAJ2+FJvAsbjmVbVFHMgDmFjhrwM4YFG3cyq4pO+/pc0/3pMj9xt2N0Jg23c4koMX1iLKjhr/QxFv8XSPVfCm4jFAoGALfejdx4PpFgTWpbm5ZWRxukhZRhmfCIAWifYeJbsGTB5y7bheVxKmTpP9mKEqGL+gh3cLVPcZ557HWpc4d6NetdyrHffEhWULh4NWYDKC5BRCr9HjLKydBUQUMCFeJs3XZQTtN+CZORcuaI2ISH2QvfYki9ns4ujeH8OjzfHpvI=    # Public certificate to verify the signature of the SAML response
   certificate: MIIDEzCCAfugAwIBAgIJAKoK/heBjcOYMA0GCSqGSIb3DQEBBQUAMCAxHjAcBgNVBAoMFU9yZ2FuaXphdGlvbiwgQ049T0lEQzAeFw0xNTExMTExMDEyMTVaFw0yNTExMTAxMDEyMTVaMCAxHjAcBgNVBAoMFU9yZ2FuaXphdGlvbiwgQ049T0lEQzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANBGwJ/qpTQNiSgUglSE2UzEkUow+wS8r67etxoEhlzJZfgK/k5TfG1wICDqapHAxEVgUM10aBHRctNocA5wmlHtxdidhzRZroqHwpKy2BmsKX5Z2oK25RLpsyusB1KroemgA/CjUnI6rIL1xxFn3KyOFh1ZBLUQtKNQeMS7HFGgSDAp+sXuTFujz12LFDugX0T0KB5a1+0l8y0PEa0yGa1oi6seONx849ZHxM0PRvUunWkuTM+foZ0jZpFapXe02yWMqhc/2iYMieE/3GvOguJchJt6R+cut8VBb6ubKUIGK7pmoq/TB6DVXpvsHqsDJXechxcicu4pdKVDHSec850CAwEAAaNQME4wHQYDVR0OBBYEFK7RqjoodSYVXGTVEdLf3kJflP/sMB8GA1UdIwQYMBaAFK7RqjoodSYVXGTVEdLf3kJflP/sMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBADNZkxlFXh4F45muCbnQd+WmaXlGvb9tkUyAIxVL8AIu8J18F420vpnGpoUAE+Hy3evBmp2nkrFAgmr055fAjpHeZFgDZBAPCwYd3TNMDeSyMta3Ka+oS7GRFDePkMEm+kH4/rITNKUF1sOvWBTSowk9TudEDyFqgGntcdu/l/zRxvx33y3LMG5USD0x4X4IKjRrRN1BbcKgi8dq10C3jdqNancTuPoqT3WWzRvVtB/q34B7F74/6JzgEoOCEHufBMp4ZFu54P0yEGtWfTwTzuoZobrChVVBt4w/XZagrRtUCDNwRpHNbpjxYudbqLqpi1MQpV9oht/BpTHVJG2i0ro=
   # Passphrase of the keystore
   passphrase: secret
   # Resource URL for the idp metadata
   idp_metadata_url: classpath:metadata/mujina.local.idp.metadata.xml
   # SingleSignOnServiceLocation
   single_sign_on_service_location: http://localhost:8080/SingleSignOnService
   # ACS location
   acs_location_path: /saml/SSO
   # Protocol binding
   protocol_binding: urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST
   # Do we sign the authnRequest
   needs_signing: true
   # Are endpoints compared. If so then pay notice to the base_url when behind a load balancer
   compare_endpoints: true
  [此數据只是虚构数据]
  Metadata.xml文件中数据配置
  <?xml version="1.0" encoding="UTF-8"?>
  <md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" ID="6ceb7b22-a038-4d51-a1b0-a4f087814e79"
  entityID="http://mock-idp" cacheDuration="P1Y">
   <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
   <ds:SignedInfo>
   <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
   <ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
   <ds:Reference URI="#6ceb7b22-a038-4d51-a1b0-a4f087814e79">
   <ds:Transforms>    <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
   <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
   </ds:Transforms>
   <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
   <ds:DigestValue/>
   </ds:Reference>
   </ds:SignedInfo>
   <ds:SignatureValue/>
   </ds:Signature>
   <md:IDPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
   <md:KeyDescriptor use="signing">
   <ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
   <ds:X509Data>
   <ds:X509Certificate>MIIDEzCCAfugAwIBAgIJAKoK/heBjcOYMA0GCSqGSIb3DQEBBQUAMCAxHjAcBgNVBAoMFU9yZ2Fu
   aXphdGlvbiwgQ049T0lEQzAeFw0xNTExMTExMDEyMTVaFw0yNTExMTAxMDEyMTVaMCAxHjAcBgNV
   BAoMFU9yZ2FuaXphdGlvbiwgQ049T0lEQzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
   ANBGwJ/qpTQNiSgUglSE2UzEkUow+wS8r67etxoEhlzJZfgK/k5TfG1wICDqapHAxEVgUM10aBHR
   ctNocA5wmlHtxdidhzRZroqHwpKy2BmsKX5Z2oK25RLpsyusB1KroemgA/CjUnI6rIL1xxFn3KyO
   Fh1ZBLUQtKNQeMS7HFGgSDAp+sXuTFujz12LFDugX0T0KB5a1+0l8y0PEa0yGa1oi6seONx849ZH
   xM0PRvUunWkuTM+foZ0jZpFapXe02yWMqhc/2iYMieE/3GvOguJchJt6R+cut8VBb6ubKUIGK7pm
   oq/TB6DVXpvsHqsDJXechxcicu4pdKVDHSec850CAwEAAaNQME4wHQYDVR0OBBYEFK7RqjoodSYV
   XGTVEdLf3kJflP/sMB8GA1UdIwQYMBaAFK7RqjoodSYVXGTVEdLf3kJflP/sMAwGA1UdEwQFMAMB
   Af8wDQYJKoZIhvcNAQEFBQADggEBADNZkxlFXh4F45muCbnQd+WmaXlGvb9tkUyAIxVL8AIu8J18
   F420vpnGpoUAE+Hy3evBmp2nkrFAgmr055fAjpHeZFgDZBAPCwYd3TNMDeSyMta3Ka+oS7GRFDeP
   kMEm+kH4/rITNKUF1sOvWBTSowk9TudEDyFqgGntcdu/l/zRxvx33y3LMG5USD0x4X4IKjRrRN1B
   bcKgi8dq10C3jdqNancTuPoqT3WWzRvVtB/q34B7F74/6JzgEoOCEHufBMp4ZFu54P0yEGtWfTwT
   zuoZobrChVVBt4w/XZagrRtUCDNwRpHNbpjxYudbqLqpi1MQpV9oht/BpTHVJG2i0ro=
   </ds:X509Certificate>
   </ds:X509Data>
   </ds:KeyInfo>
   </md:KeyDescriptor>
   <md:NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:persistent</md:NameIDFormat>
   <md:SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
   Location="http://localhost:8080/SingleSignOnService"/>
   </md:IDPSSODescriptor>
  </md:EntityDescriptor>
  在初始化時整合这些配置数据,重定向发送到single_sign_on_service_location配置的地址中,由用户输入认证凭证,并提交。
  完成凭证验证之后,携带需要响应的数据返回给前端。
  前端通过调用后勤系统sso接口地址,将密钥/公钥及token传入后端,然后由后端对IDP系统进行验证。
  通过后由后端跳转到系统页面当中完成认证操作。
  5 结语
  随着数字化和云计算进程的深入,企业信息安全的维度和边界越来越立体,越来越复杂。保障企业信息安全服务的时间,已经由原来的8小时,转变为现在的7*24小时,全年365天不间断提供服务。同时,也不再有物理地点的限制,数据泄露会对企业造成巨大的损失,身份认证是访问系统资源的入口,对于保障企业信息资源的安全极其重要。集团公司提供的统一的ADFS身份认证服务,通过多因素身份认证、弱密码监测、密码错误次数超限账号锁定策略、大数据分析等安全技术,可以提供非常安全地对信息资源的保护,同时还可以促进企业各信息系统数据共享,提升企业效率。渤海油田后勤系统与集团公司的基于SAML 2.0协议的、启用双因素认证的ADFS联合身份认证服务的集成,实现了后勤系统用户需要登录集团公司统一的ADFS单点登录页面进行AD身份认证。只有通过了短信或邮件接收的登录验证码和AD密码的双重认证后,才能访问后勤系统资源,极大提高了后勤支持管理系统身份认证的安全性,降低了后勤信息数据泄露的风险。同时,后勤系统也不再需要管理用户密码,减轻了系统工作量;后勤系统的用户也不再需要记忆和维护不同的用户账号和密码,提高了工作效率。渤海油田生产作业的正常运行与优质的后勤作业管理密不可分,后勤资源管理系统正是为了高效支持渤海油田后勤业务的运营而建设的,ADFS身份认证在后勤资源管理系统中的应用,为后勤系统提供了强有力的保障,具有极大的推广价值。
  参考文献
  [1] 灰信网.基于SAML的ADFS认证集成方案[EB/OL].https://www.freesion.com/article/8033848552,2021-8-20.
其他文献
地理核心素养是地理能力、地理方法、地理观念和地理思维的凝练与升华,是中学地理课程的核心目标,中学地理教学应该围绕这个目标展开,在教学中渗透地理核心素养教学理念.本文
摘 要:文章针对SS4B型电力机车在运用过程中出现的轮对抱轴漏油问题进行深入分析,并结合实际情况提出相应的解决方案及措施。通过改进齿轮箱安装工艺及封堵透气孔,有效改善了轮对抱轴漏油问题,改进效果显著。  关键词:轮对;抱轴;漏油  中图分类号:U2 文献标识码:A 文章编号:1674-1064(2021)09-015-02  DOI:10.12310/j.issn.16
摘 要:随着科学技术的不断发展,社会经济步入了高速发展时期。在我国,基础设施建设的完善使家家户户都能有电,为国家电网建设和电力调度带来了巨大挑战。文章通过对HVDC—高压直流输电技术、FACTS—柔性交流输电技术等电力技术的讨论,分析了电力技术在电力调度中的应用,希望能够为今后电力行业的发展提供相应的理论支持,为我国的经济社会发展提供不竭的动力。  关键词:现代电力技术;调度运行;应用  中图分类
文章首先对西门子PLC技术进行简单概述,对西门子PLC技术在现代冶金工业中的应用进行深入分析,并探讨该技术应用过程中需要注意的事项,进而充分发挥西门子PLC技术在现代冶金工业
摘 要:摩天轮轿厢门锁装置锁紧可靠,是保证摩天轮安全运行的关键因素。通过对轿厢门锁装置的锁紧状态进行监控,可进一步保障设备安全运行。文章介绍了一种简易的具有锁紧状态监控功能的轿厢门锁装置,文章提出的解决方案对摩天轮轿厢门锁装置的优化设计具有一定参考意义。  关键词:轿厢;门锁装置;监控  中图分类号:TS952.8 文献标识码:A 文章编号:1674-1064(2021
摘 要:为充分了解SWAT模型在我国的研究现状与发展趋势,笔者采用文献计量法对中国期刊全文数据库中的文献,从不同年份、学科领域方面的发文量进行统计,并通过CiteSpace软件构建合作可视化图谱,及对关键词进行聚类、突现分析。研究结果表明:关于SWAT研究的发文量呈上升趋势;通过关键词共线分析可以看出,研究集中于水文过程模拟、土地利用变化对水文过程的影响、农业活动造成的污染、水资源时空变化等方面;
摘 要:随着现代科技智能化的不断发展和人工智能算法的渐渐成熟,机器人如今在各个领域中有了更加广阔的市场。在此大环境下,写字机器人因此诞生。写字机器人虽然是一种教育、科普的工具,但仍有人将其用在其他领域上,如不法分子用其摹写他人笔迹,用来伪造合同等违法犯罪行为。这一现象还未泛滥,因此文章将先从写字机器人的工作原理入手,再对写字机器人和人类手写笔迹特征进行比较分析,最后研究总结笔迹分析法在写字机器人中
摘 要:在当前水资源短缺及水环境污染日益严峻的大背景下,污水处理工作越来越引起社会的关注。新型污水处理方式和设备不断涌现,与传统污水处理形式相互冲击,也彼此印证。其中,曝气生物滤池处理技术优势鲜明,具有较大程度的推广及深入发展潜力。文章将通过多角度,对曝气生物滤池在污水处理厂运营中的常见问题及改造优化措施进行针对性分析和探究。  关键词:曝气生物滤池;污水处理;分析;改造  中图分类号:X7
摘 要:随着现代社会经济快速发展,越来越多的科学技术被运用于医疗卫生领域,不断提升医疗卫生整体发展水平,促进我国医疗卫生事业的建设与发展。灵活运用计算机软硬件技术,借助软件系统明确医疗设备的运行问题、辅助开展医疗设备还原操作与修复作业,可以将其投入医疗设备的结构维修、硬件维修,为医疗设备的有效运行提供保障。文章分别从软件技术、硬件技术角度出发,对计算机软硬件技术在医疗设备维修中的有效运用进行深入探
摘 要:进入新时期,我国的社会经济发展得到了显著提升,电力行业迎来了难得的发展机会。在这一趋势下,电力市场规模得到了极大的扩展,内部组织成分愈发复杂,所需人力资源也随之增多。基于此,文章将对新时期农电营销管理工作存在的问题展开研究,提出了具体解决措施。  关键词:电营销管理;电力企业;电能计量;解决措施  中图分类号:F27 文献标识码:A 文章编号:1674-1064