首页 > 数据库 >ABAP Software component SAP_BASIS 下的数据库表 URS02 的用途介绍

ABAP Software component SAP_BASIS 下的数据库表 URS02 的用途介绍

时间:2023-11-27 23:35:45浏览次数:32  
标签:Hash 哈希 BASIS 数据库 component 用户 密码 ABAP Key

数据库表 USR02 是 SAP 系统中的一个重要表,它用于存储用户的验证信息。在 ABAP 开发中,我们经常需要与此表进行交互,以管理和验证用户的凭据。

这张表里一些主要的字段含义罗列如下:

  • BNAME: 登录用户名
  • GLTGV: 用户在系统生效的起始时间
  • GLTGB: 用户在系统生效的截止时间
  • USTYP: 用户类型。A 代表 Dialog 用户,B 代表系统用户,C 代表 Communication Data 用户,L 代表 Reference 用户,S 代表 Service 用户。

  • ANAME: 创建这个用户的用户名,本例是 RFC_UVERWALT.

OCOD1: Password Hash Key

在计算机安全领域,我们通常不会直接存储用户的密码,而是存储密码的哈希值。这是因为,如果数据库被黑客攻破,直接存储的密码就可能会被窃取。但是,如果存储的是密码的哈希值,黑客即使窃取到了这些哈希值,也不能直接知道原始的密码是什么,因为哈希函数是单向的,不能从哈希值反推出原始数据。

"Password Hash Key",可以理解为用于生成密码哈希值的 "Key",它是哈希函数的一个输入。哈希函数会接受两个输入:一个是要哈希的数据(在这个场景下就是密码),另一个就是 "Hash Key"。这个 "Key" 是一个秘密的,只有系统知道,用户和其他人都不知道。系统在接收到用户的密码后,会将密码和 "Hash Key" 一起输入到哈希函数中,生成哈希值,然后将这个哈希值存储在数据库中。

那么,为什么要使用 "Hash Key" 呢?这是因为,如果我们直接使用密码作为哈希函数的输入,黑客可以通过 "彩虹表" 攻击来破解密码。"彩虹表" 是一种预先计算好的,包含了许多可能的密码和对应哈希值的表。黑客可以通过比较他窃取到的哈希值和 "彩虹表" 中的哈希值,来找出对应的密码。但是,如果我们使用了 "Hash Key",那么黑客即使有了 "彩虹表",也无法找到正确的密码,因为他不知道 "Hash Key"。

现在,我们来举一个简单的例子。假设我们有一个用户,他的密码是 "123456",我们的 "Hash Key" 是 "abc"。我们使用的哈希函数是 SHA256。首先,我们会将密码和 "Hash Key" 连接起来,得到 "123456abc"。然后,我们将 "123456abc" 输入到 SHA256 哈希函数中,得到一个哈希值,例如 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"。然后,我们将这个哈希值存储在数据库中。

当用户下次登录时,他会输入他的密码 "123456"。系统会将这个密码和 "Hash Key" 连接起来,得到 "123456abc",然后将其输入到 SHA256 哈希函数中,得到一个哈希值。系统会将这个哈希值和数据库中存储的哈希值进行比较,如果两者相同,那么说明用户输入的密码是正确的。

标签:Hash,哈希,BASIS,数据库,component,用户,密码,ABAP,Key
From: https://www.cnblogs.com/sap-jerry/p/17860831.html

相关文章

  • 【漏洞复现】蓝凌OA sysUiComponent 任意文件上传漏洞
    阅读须知此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。本文所提供的工具仅用于学习......
  • PCA (principal component analysis)算法
    一、PCA算法PCA(principalcomponentanalysis)是一种应用广泛的降维算法,其基本思想是想通过找到一个低维的“最具有代表性”的方向,并将原数据映射到这个低维空间中去,从而实现数据的降维。1.算法原理  我们先从二维数据简单说明,假设我们有n个二维数据组成的数据集\(D_{n\ti......
  • 什么是 SAP ABAP 的 Conversion Exits
    ConversionExits是ABAP中的一种技术,用于在数据库和用户界面之间转换数据。这是一个非常重要的概念,因为在不同的系统和应用中,相同的数据可能需要以不同的形式进行表示。例如,日期在数据库中可能以一种格式存储,但在用户界面上可能需要以另一种更易于理解的格式显示。ConversionE......
  • 关于 ABAP OPEN SQL 注入漏洞的防御
    SQL注入是一种代码注入技术,攻击者通过在查询中注入恶意SQL代码,以此改变查询的原始意图。这可能导致未授权的数据访问、数据篡改、甚至数据丢失。在SAPABAP中,SQL注入的风险主要来自于动态构造的SQL语句。ABAP提供了OpenSQL和NativeSQL两种方式来访问数据库,其中Op......
  • 什么是 SAP ABAP Cross Customizing Client
    CrossCustomizingClient(CCC)是SAP系统中的一个重要概念,它允许在不同的客户端(Client)之间共享和传输自定义的配置数据。在SAP中,客户端是系统中的独立实体,用于在同一系统中区分不同的业务场景或测试环境。CrossCustomizingClient的主要目的是通过一个客户端上的配置来影响另一个客......
  • 小技巧分享 - 找出 SAP ABAP SPRO 配置项后台对应配置表的两种办法试读版
    相信SPRO是广大ABAP开发人员每天使用频次最高的事务码之一了吧。毕竟SAP软件的复杂度摆在那里,无论是SAPOn-Premise产品,还是Cloud产品,在安装或者订阅之后,都要根据客户实际的业务需求,对SAP系统进行配置。在On-Premise系统里,事务码SPRO就是统一的配置入口。SPRO......
  • SAP ABAP 动态生成 ABAP 程序并动态调用的例子代码试读版
    本文回答笔者知识星球一个朋友的提问:汪老师您好,请教一个问题。ABAP里的程序能够动态生成吗?我的意思是,ABAP程序的源代码是从第三方传入的,然后在ABAP系统生成,并执行?有没有类似的例子可以参考?谢谢汪老师!首先笔者要提醒的是,这种根据第三方输入,动态生成ABAP程序并且执行的方......
  • Probabilistic principal component analysis-based anomaly detection for structure
    SHMcanprovidealargeamountofdatathatcanrevealthevariationinthestructurecondition什么是压缩传感,数据重构,研究背景与意义,怎么用基于模型的方法不可避免的缺点是模型的不确定性,因为很难创建能够模拟真实物理情况的可靠的结构模型。为了克服基于模型的方法的缺......
  • Visual Components软件典型功能描述 衡祖仿真
    1、即点即用,即插即用vc提供大量的组件模块,组件都已经赋子行为和渲染,看起来复杂的模拟场景,可以通过简单拖拉组合,即可成为一条运动的仿真。节省更多的时间,让布局更灵动。2、PLC功能过去,PLC程序的调试都是必须等到所有的设备都到场安装好了之后再联机调试。通过此软件,PLC设备通过软件......
  • Visual Components软件典型功能描述 衡祖仿真
    1、即点即用,即插即用vc提供大量的组件模块,组件都已经赋子行为和渲染,看起来复杂的模拟场景,可以通过简单拖拉组合,即可成为一条运动的仿真。节省更多的时间,让布局更灵动。2、PLC功能过去,PLC程序的调试都是必须等到所有的设备都到场安装好了之后再联机调试。通过此软件,PLC设备通过......