我有一个数据库,它有一个特定的表“Attribs”,其中包含用户的属性列表,如姓名、地址、电话号码等。每一个都是键。我拥有的 REST API 使用此表获取属性名称并填充另一个表。但是,“Attribs”中的键在 API 中公开。
例如如果我尝试输入作为属性 user_name 的用户名,那么我的 REST API 将有一行
"用户名":"abcd"
公开这些 key 是否安全,或者是否会导致任何可能的安全问题?
最佳答案
我们没有足够的上下文,但不,这是一种不安全的做法,OWASP 上有一整节关于它。 https://www.owasp.org/index.php/Top_10_2010-A4-Insecure_Direct_Object_References这是一个原则,不要直接暴露ID,而是使用和间接层。
无法根据您提供的描述评估您案例中的影响,但如果我是您,我会应用该原则:)
关于database - 直接在API中使用数据库主键值安全吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26167344/