![]() |
1
2
“认证”是指: 证明我你是你所说的人 “你是谁”是一个实体(个人、计算机用户、软件、服务器等)的身份。 “identity”是每个实体独有的属性(dba会说 主键 这里) 所以你必须 证明 以某种方式拥有那个独特的属性。 当这里的实体是一个http客户机时,http auth是向服务器证明其唯一身份(由我们称之为 用户名 ) 它不影响通道的安全性,这就是表示层(即ssl)的作用,它需要一个 共享的秘密 在零件之间。”“共同的秘密”意味着双方都必须知道,其他人都不知道。这意味着双方在不泄露秘密或在泄露秘密时采取适当措施(例如更改秘密)时相互信任。 http作为一种协议不包括其他授权方式,而将其留在其他层。例如,ssl可以通过使用公钥基础设施(证书和证书颁发机构)来证明双方的身份,而无需共享秘密。 最后:
如果不同意一个共享的秘密(并保守秘密),或者不同意信任其他人来处理这个唯一性(pki),就无法证明某个东西的唯一性。其他一切都只是实现细节。 |
![]() |
2
1
我不确定是否有一个标准。如果有,可能是http auth(basic或digest)。上述两种方法都是非常糟糕的解决方案。 aws是一个很好的例子,说明了“roll your own”身份验证解决方案是如何工作的,但是,当您谈到安全/身份验证时,roll your own通常是 坏的 除非你是安全/密码专家。 我的首选实际上是使用客户端证书。它负责身份验证和安全过程。不需要API密钥,因为证书本身标识客户端用户。 |
![]() |
Dev · 在laravel rest api中按特定角色获取所有用户 2 年前 |
![]() |
IDskxo · 为什么我们需要添加。响应的end()? 2 年前 |
![]() |
KollegeBo · 触发更新的POST或GET 2 年前 |
![]() |
meren · 如何使用react向后端api请求用户提供的值? 2 年前 |
![]() |
CaptTaifun · 如何对“多个”和“单个”对象使用相同的端点? 2 年前 |
![]() |
Zsombor Szende · 汇率api从哪里获取数据?[闭门] 2 年前 |