用于访问制造执行系统中的数据库的数据的方法和系统的利记博彩app

文档序号:6551334阅读:283来源:国知局
用于访问制造执行系统中的数据库的数据的方法和系统的利记博彩app
【专利摘要】提供一种通过客户端应用访问MES系统中数据库数据的方法和系统,数据库访问需要满足取决于用户凭证集合的自定义数据保护规则集合,包括:在开发时,考虑自定义数据保护规则集合,提供安全访问层用于使客户端应用以受保护方式到/从数据库访问数据;在运行或设计时:通过将给定用户凭证和给定数据访问描述符发送到安全访问层来请求到/从数据库的数据访问;由安全访问层处理数据访问描述符以产生给定SQL语句,处理自定义数据保护规则集合以及给定用户凭证以产生给定SQL“where”子句,以给定SQL“where”子句扩展给定访问SQL语句以产生给定安全访问SQL语句,执行给定安全访问SQL语句来访问数据库,将给定结果返回安全访问层,处理给定结果以产生最终逻辑表示。
【专利说明】用于访问制造执行系统中的数据库的数据的方法和系统

【技术领域】
[0001]本发明涉及一种通过具有认证的用户的客户端应用来访问MES系统中的数据库 的数据的系统和方法,其中,需要数据库的访问满足取决于一组用户凭证的一组自定义数 据保护规则。

【背景技术】
[0002]在现今的工业自动化领域中,为了提高竞争力,制造公司需要同时缩短上市时间、 提高过程可见性和生产灵活性、优化预测和调度以及降低废品率、库存水平和停工时间;同 时确保所有全球设施的最佳质量和生产效率。
[0003]因此,为了满足这些高要求,制造公司需要集成的IT基础设施,其帮助它们在全 球范围内协调生产并且如果需要的话,实时地协调生产。制造执行系统(MES)通常被称为 是集成了商业系统(例如ERP(企业资源计划))和生产控制系统的 IT层。
[0004]西门子公司在其SIMATIC? IT产品系列下提供范围广泛的MES产品。
[0005] 如制造企业解决方案协会(MESA国际)所定义的,MES系统是通过管理"从订单下 达到制造的点至产品交付到成品的点的生产操作",以及通过"经由双向通讯跨组织和供应 链地向其他系统提供有关生产活动的任务关键信息"来"推动制造过程的有效执行的动态 信息系统"。用于开发MES系统的国际标准通常被称为ISA-95或者S95。
[0006] MES系统通常包括的功能有资源分配与状态、分派生产订单、数据收集/获取、质 量管理、维护管理、性能分析、操作/详细调度、文档控制、劳动力管理、过程管理和产品跟 踪。
[0007] 因此,由软件供应商开发的MES系统的目的在于向制造公司(客户)提供用于测 量和控制生广活动的工具,其目的是为制造工厂提尚盈利能力、提高生产率、改进质量和过 程性能。
[0008] 如本文中所使用的,软件应用是在软件开发阶段由软件开发者开发的一组软件组 件,其使得能够在MES系统内执行一些有用动作(例如,监控来自工厂处理的值或控制工厂 设备)。
[0009] 通常,在工程设计(engineering)或配置时,系统工程师根据特定的制造工厂要 求来灵活地定制MES应用。
[0010] 而在运行时,由可能是工厂操作员或生产线负责人的终端用户来使用MES应用。
[0011] 在MES系统中,经常要求:在工程设计或运行时数据库中要被访问的至少一些信 息被认为是"敏感的"。因此,客户的需求是通过为用户和/或用户组调节这种信息来保护 对该信息的访问。
[0012] 在现有技术的方法中,通过具有支持用于信息保护特征的应用来实现数据访问调 节。
[0013] 这种应用的缺点是包含非集中式的并且可配置程度低的模块。
[0014] 现有技术的另一缺点是,保护逻辑通常难以直接编码为应用代码中,而是经常以 片段方式被编码。
[0015] 现有技术的又一缺点是,保护逻辑被直接预编在数据上。实际上,保护逻辑与数据 库结构密切相关联的事实意味着任何数据库变化都要求应用代码的变化。
[0016] 因此,鉴于上述情况,迄今使用的已知技术有以下不足:
[0017] -它们要求高的维护成本;
[0018] -它们易于出错;
[0019] -为了在项目基础上实施客户的要求而由过程/系统工程师做出的努力确实需要 较高的软件技巧。


【发明内容】

[0020] 因此,本发明的目的是通过提供一种用于访问MES系统中数据库的数据的方法和 系统来克服上述缺点和不足,其中,数据库的访问需要满足一组自定义数据保护规则,在这 一组自定义数据保护规则中,保护逻辑是集中的,并且基于数据抽象而创建从而保护规则 对数据库结构没有直接的影响。
[0021] 通过一种用于访问MES系统中数据库的数据的方法和系统来实现上述目的,数据 库数据通过具有认证用户的客户端应用来访问,其中,数据库访问需要满足取决于用户凭 证集合的自定义数据保护规则集合;本发明包括:
[0022] 在开发时:
[0023] a)在考虑所述自定义数据保护规则集合的情况下,提供安全访问层用于使客户端 应用能够以受保护方式到/从所述数据库访问数据;
[0024] 在运行或工程设计时:
[0025] b)由所述客户端应用通过将给定认证用户的给定用户凭证和给定数据访问描述 符发送到所述安全访问层,来经由所述给定认证用户请求到/从所述数据库的数据访问;
[0026] c)由所述安全访问层对接收到的数据访问描述符进行处理,以产生相应的用于数 据访问的给定SQL语句;
[0027] d)由所述安全访问层对所述自定义数据保护规则集合以及所述给定用户凭证一 起进行处理,以产生给定SQL "where"子句;
[0028] e)由所述安全访问层以所述给定SQL "where"子句扩展给定访问SQL语句,以产 生给定安全访问SQL语句;
[0029] f)由所述安全访问层通过执行所述给定安全访问SQL语句来访问所述数据库;
[0030] g)由所述数据库将执行所述给定安全访问SQL语句的给定结果(D5)返回所述安 全访问层;
[0031] h)由所述安全访问层对所述给定结果进行处理,以产生要被发送到所述客户端应 用的、相应的最终逻辑表示。
[0032] 在发明的一个实施方式中:
[0033] -数据访问是从数据库的读取操作;
[0034] -数据访问描述符(D1)是数据模型描述符;
[0035] -给定访问SQL语句(D2)是查询"选择";
[0036] -给定结果D5是查询"选择"的检索数据;
[0037] -最终逻辑表示(D6)是检索数据的最终模型对象数据。
[0038] 在发明的第二实施方式中:
[0039] -数据访问是到数据库的写入操作;
[0040] -数据访问描述符(D1)包括数据模型描述符和模型对象数据;
[0041] -给定访问SQL语句(D2)是命令"插入、更新或删除";
[0042] -给定结果D5是命令命令"插入、更新或删除"的最终退出代码;
[0043] -最终逻辑表示(D6)是最终执行退出代码。
[0044] 此外,可以提供计算机程序元件,包括计算机程序代码,用于在计算机程序代码被 加载到计算装置的数字处理器中时,执行根据上述方法的步骤。
[0045] 此外,可以提供存储在计算机可用介质上的计算机程序产品,包括用于使计算装 置执行所述方法的计算机可读程序代码。
[0046] 本发明的实施方式用逻辑规则实现通用和集中实施,从而可以灵活地使用各种应 用结构。
[0047] 通过本发明的实施方式,自定义数据保护规则/逻辑以动态方式适于数据。
[0048] 本发明的实施方式使得数据库的敏感数据被直接锁在服务器侧,以及使得系统地 和动态地调用保护机制用于到/从数据库的每个数据访问操作,阻止了任何绕过数据保护 要求的可能性。
[0049] 本发明的实施方式允许以容易快速的方式将敏感数据保护功能集成到MES应用 中。事实上,安全访问层有利地使得以通用方式执行数据访问,并且便利了抽象数据模型的 定义。此外,由于提供安全访问层,MES应用便利地不需要数据库结构的知识作为暴露为数 据模型的数据,从而应用可以在数据库结构改变的情况下维持其兼容性。
[0050] 本发明的实施方式包括以下技术优点:
[0051] -用于对访问规则进行编码的标准的和通用的技术;
[0052] -不需要改变源代码以支持新的访问政策;
[0053] -应用的易维护性导致成本下降。

【专利附图】

【附图说明】
[0054] 参照附图,将以优选但非唯一实施方式来描述本发明,其中:
[0055] 图1示意性示出了根据本发明的示例实施方式的、通过客户端应用经由安全访问 层到/从数据库的数据访问的框图。

【具体实施方式】
[0056] 如图1所示,本发明的至少一些实施方式解决了上面描述的问题,其中,通过具有 认证用户的客户端应用CA,在MES系统中访问数据库数据,其中,数据库的访问需要满足取 决于一组用户凭证UC的一组自定义数据保护规则。
[0057] 在开发时,在考虑所述一组自定义数据保护规则的情况下,提供安全访问层用以 使客户端应用CA以受保护方式到/从数据库DB访问数据。
[0058] 在运行或工程设计时,以如下方式执行数据库的访问:
[0059] -客户端应用CA通过将给定认证用户的给定用户凭证UC和给定数据访问描述符 D1发送到安全访问层,而经由给定认证用户请求到/从数据库DB的数据访问;
[0060]-安全访问层SAL处理PRa接收到的数据访问描述符,以产生用于数据访问的相应 的给定SQL语句D2 ;
[0061]-安全访问层SAL处理PRb该一组自定义数据保护规则和给定用户凭证,以产生给 定 "where " 子句 D3 ;
[0062]-安全访问层SAL通过给定SQL "where"子句D3扩展PRc给定访问SQL语句D2, 以产生给定安全访问SQL语句D4 ;
[0063]-通过执行给定安全访问SQL语句D4,安全访问层SAL访问PRd数据库DB ;
[0064]-数据库DB将执行给定安全访问SQL语句D4的给定结果D5返回到安全访问层; [0065]-安全访问层SAL处理PRe给定结果D5,以产生要被发送到客户端应用CA的、相 应的最终逻辑(resulting logic)表示D6。
[0066] 值得注意的是,在数据库DB敏感数据的配置期间,因为在工程设计时也可以要求 保护逻辑,所以不仅在运行时,而且在工程设计时,可以执行安全的数据库访问。优选地,在 工程设计时配置自定义数据保护规则。
[0067] 在本发明的实施方式中,数据访问可以是从数据库DB的读取操作或到数据库DB 的写入操作。
[0068] 本文使用的术语"数据访问描述符"是描述将用于读取和写入操作的逻辑数据结 构的通用术语。
[0069]-如果数据访问是读取操作,则数据访问描述符是数据模型描述符。
[0070] -如果数据访问是写入操作,则数据访问描述符包括数据模型描述符和模型对象 数据。
[0071] 本文使用的术语"数据模型描述符"定义了用于描述要被访问的信息和怎样将信 息放一起的数据结构。"数据模型描述符"被单独使用以执行读取操作或与"模型对象数据" 一起使用以执行写入操作。
[0072] 本文使用的术语"模型对象数据"定义了用于描述这样一组数据值的数据结构,该 数据值指的是作为写入操作的输入或读取操作的输出的数据模型描述符的实例(一个或 更多个实例)。
[0073] 在写入操作中,模型对象数据是执行写入操作必需的输入数据,因为其表示数据 库DB中要被插入、更新或删除的数据实例。
[0074] 在读取操作中,最终逻辑表示D6是最终模型对象数据,其表示从数据库DB检索到 的一个或更多个数据实例。
[0075] 读取操作的情况
[0076] 在数据访问是从数据库DB的读取操作的情况下,数据访问描述符D1是数据模型 描述符。给定访问SQL语句D 2是查询"选择(SELECT) "。给定/授权的结果D5是查询"选 择"的检索数据。最终逻辑表示D6是检索数据的最终模型对象数据。
[0077] 写入操作的情况
[0078] 在数据访问是到数据库DB的写入操作的情况下,数据访问描述符D1包括数据模 型描述符和模型对象数据。给定访问SQL语句D 2是命令"插入(INSERT)、更新(UPDATE) 或删除(DELETE)"。给定/授权的结果D5是命令"插入、更新或删除"的最终退出代码。最 终逻辑表示D6是最终执行退出代码结果的表示。例如,这样的逻辑表示指示成功的或失败 的结果(例如故障情况下),还可以便利地报告故障接地的可读描述符。
[0079]在本发明的实施方式中,安全访问层SAL可以被实施为主层和子层,主层例如被 称为通用数据访问接口(CDAI),子层例如被称为数据保护层(DPL),其包括在CDAI层中。 CDAI可以看作用于客户端应用和数据库之间的数据抽象的服务,用于以"通用目的"/共用 方式(即不只用于特定数据,还对于所有数据共同的)执行访问数据。子层DPL可以看作 是对以"where子句"扩展的用户和/或用户组SQL语句的逻辑限制访问规则的翻译器。 [0080] 示例卖施方式I
[0081] 示出了包含分别被称为"护肤霜"和"多维生素补剂"的两种配方的MES数据库DB 的示例实施方式,其中,这两种配方描述了用于两种不同药物制剂的生产过程。
[0082] 取决于用户凭证集合的自定义数据保护规则集合例如要求:
[0083] -属于"化妆品"组的用户只能够访问配方"护肤霜";
[0084]-属于"质量控制"组的用户能够访问两种配方。
[0085] 在工程设计时,在安全访问层中自定义上面的自定义数据保护规则。
[0086] 在运行时,例如在制造操作期间,属于"化妆品"组的用户"化妆品操作员"登入到 MES管理应用并且打开具有"配方管理"页的应用,其被设计成通过使用根据本发明示例实 施方式的安全访问层而与特定数据源合作。在该阶段期间,客户端应用CA请求从数据库DB 的读取操作,以检索记录,从而通过数据访问描述符D1显示在页中。通过考虑先前收集的 用户凭证UC,由安全访问层SAL以安全/受保护的方式执行数据库上的查询D4。
[0087]安全访问层SAL采取涉及类型"配方"的元素的访问规则,将其转换PRb成 SQL "where子句"并将其集合PRc成SQL语句,以获得安全的查询"SELECT" D4。
[0088] 最后执行SQL查询,并且将最终行返回到请求页。
[0089]最后,"配方管理"页只显示用于"护肤霜"的配方,用户"化妆品操作员"没法访问 数据库DB中的其他配方。
[0090] 示例窀施方式Π
[0091]示出了另一示例实施方式,其中,要求MES应用显示显示生产订单信息的详细窗 口,并且要求列出计划的生产操作。为了用提出的本发明来实现它,MES应用可以声明"数 据模型描述符",指定:
[0092]-需要"生产订单"和"生产过程"的逻辑对象;
[0093]- "生产过程"对象属于"生产订单"对象。
[0094]然后,通过使用现有的"数据模型描述符,,和更新的"模型对象数据",详细窗口将 允许更新生产订单信息。
[0095] 使用的缩写词的表
[0096] MES制造执行系统
[0097] SQL结构化查询语言。
【权利要求】
1. 一种用于访问制造执行系统MES中的数据库的数据的方法,数据库数据通过具有认 证用户的客户端应用(CA)来访问,其中,数据库访问需要满足取决于用户凭证(UC)集合的 自定义数据保护规则集合; 所述方法包括以下步骤: 在开发时: a) 在考虑所述自定义数据保护规则集合的情况下,提供安全访问层(SAL)用于使客户 端应用(CA)能够以受保护方式到/从所述数据库访问数据; 在运行或工程设计时: b) 由所述客户端应用(CA)通过将给定认证用户的给定用户凭证(UC)和给定数据访问 描述符(D1)发送到所述安全访问层(SAL),来经由所述给定认证用户请求到/从所述数据 库的数据访问; c) 由所述安全访问层(SAL)对接收到的数据访问描述符(D1)进行处理(PRa),以产生 相应的用于数据访问的给定结构化查询语言SQL语句(D2); d) 由所述安全访问层(SAL)对所述自定义数据保护规则集合以及所述给定用户凭证 (UC) -起进行处理(PRb),以产生给定SQL "where"子句(D3); e) 由所述安全访问层(SAL)以所述给定SQL "where"子句(D3)扩展(PRc)给定访问 SQL语句(D2),以产生给定安全访问SQL语句(D4); f) 由所述安全访问层(SAL)通过执行所述给定安全访问SQL语句(D4)来访问(PRd) 所述数据库(DB); g) 由所述数据库(DB)将执行所述给定安全访问SQL语句(D4)的给定结果(D5)返回 所述安全访问层(SAL); h) 由所述安全访问层(SAL)对所述给定结果(D5)进行处理(PRe),以产生要被发送到 所述客户端应用(CA)的、相应的最终逻辑表示(D6)。
2. 如权利要求1所述的方法,其中: -所述数据访问是从所述数据库的读取操作; -所述数据访问描述符(D1)是数据模型描述符; -所述给定访问SQL语句(D2)是查询"选择"; -所述给定结果(D5)是所述查询"选择"的检索数据; -所述最终逻辑表示(D6)是所述检索数据的最终模型对象数据。
3. 如权利要求1所述的方法,其中: -所述数据访问是到所述数据库的写入操作; -所述数据访问描述符(D1)包括数据模型描述符和模型对象数据; -所述给定访问SQL语句(D2)是命令"插入、更新或删除"; -所述给定结果(D5)是所述命令"插入、更新或删除"的最终退出代码; -所述最终逻辑表示(D6)是最终执行退出代码。
4. 一种用于执行如权利要求1至3中任一项所述的方法的步骤的计算机程序产品。
5. -种用于访问制造执行系统MES中数据库的数据的系统,数据库数据通过具有认证 用户的客户端应用(CA)来访问,其中,数据库访问需要满足取决于用户凭证(UC)集合的自 定义数据保护规则集合; 所述系统包括以下装置: a) 用于在开发时,在考虑所述自定义数据保护规则集合的情况下,提供安全访问层 (SAL)用于使客户端应用(CA)能够以受保护方式到/从所述数据库(DB)访问数据的装置; b) 用于在工程设计或运行时,由所述客户端应用(CA)通过将给定认证用户的给定用 户凭证(UC)和给定数据访问描述符(D1)发送到所述安全访问层(SAL)、来经由所述给定认 证用户请求到/从所述数据库(DB)的数据访问的装置; c) 用于在工程设计或运行时,由所述安全访问层(SAL)对接收到的数据访问描述符 (D1)进行处理(PRa),以产生相应的用于数据访问的给定结构化查询语言SQL语句(D2)的 装置; d) 用于在工程设计或运行时,对所述自定义数据保护规则集合以及所述给定用户凭证 (UC) -起进行处理(PRb),以产生给定SQL "where"子句(D3)的装置; e) 用于在工程设计或运行时,由所述安全访问层(SAL)以所述给定SQL "where"子句 (D3)扩展(PRc)给定访问SQL语句(D2),以产生给定安全访问SQL语句(D4)的装置; f) 用于在工程设计或运行时,由所述安全访问层(SAL)通过执行所述给定安全访问 SQL语句(D4)来访问(PRd)所述数据库(DB)的装置; g) 用于在工程设计或运行时,由所述数据库(DB)将执行所述给定安全访问SQL语句 (D4)的给定结果(D5)返回所述安全访问层(SAL)的装置; h) 用于在工程设计或运行时,由所述安全访问层(SAL)对所述给定结果(D5)进行处理 (PRe),以产生要被发送到所述客户端应用(CA)的、相应的最终逻辑表示(D6)的装置。
【文档编号】G06F21/62GK104252603SQ201410301683
【公开日】2014年12月31日 申请日期:2014年6月27日 优先权日:2013年6月27日
【发明者】斯特凡诺·伊拉斯 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1