从Dashboard鉴权认识Kubernetes的用户认证

Kubernetes 用户认证

  1. 从Dashboard鉴权认识Kubernetes的用户认证
  2. 从签发用户证书认识Kubernetes的用户认证

Kubernetes的API准入(Access Control)分为用户认证(Authenticating)鉴权(Authorization)两个部分。鉴权是对权限的控制,来控制角色(Role)、用户(User)是否能访问对象,主要通过RBAC、ABAC实现,你大概率听说过这两种鉴权控制策略。当然鉴权不是本片讨论的重点,下面内容我们主要讨论认证部分。

阅读更多

API的身份认证

API设计中最开始的步骤就是设计鉴权,当前这篇介绍的认证只是鉴权一部分,当然在一个权限设计不完备的系统里,这就是鉴权的全部。

HTTP(不包涵Websocket)是无状态的,所以获得认证的客户端(用户)每次发起请求,都必须携带服务端签发的Token、SessionID等信息。当然这个信息可能不是服务端签发的,比如Basic Auth就是请求携带username+password。从token携带方式上有使用http请求参数的,有使用Cookie方式,还有放到请求body中的。下文我们将分析一下各种认证方式,以及推荐的使用场景。

阅读更多

一次性密码方案

  1. 背景

    OTP一次性密码常见于后台登陆,敏感操作的二次验证中,常用方案有HOTP(基于HMAC的一次性密码)、TOTP(基于时间的一次性密码)、短信验证、PUSH验证等,本文只讨论实现成本低的HOTP、TOTP

  2. HOTP: HMAC-based One-time Password algorithm

    基于散列消息验证码的一次性密码算法

阅读更多