控制台
authing blog banner
查看文章
Authing 签约招商银行、三星集团、大陆集团等重要客户
在过去的 2021 年,Authing 签约了数百家客户,在全球市场已经成功帮助众多知名企业客户落地了成熟的身份管理最佳实践,打造了帮助 B2B 客户实现持续增长的云原生基础设施,为企业和开发者提供完善安全的用户认证和访问管理服务。 2022 年,我们将继续深耕身份行业,秉承着“连接全球人与应用”的使命,进一步开拓身份云技术,持续为各行各业的客户提供安全、现代化、可信任、可复用的身份基础设施,致力于成为全球最大的生产力科技公司。 接下来,让我们看一看近期重点签约的客户,感谢客户信任 Authing。   01  Authing & 招商银行     招商银行于 1987 年成立,是中国境内第一家完全由企业法人持股的股份制商业银行。2021 年,招商银行连续第三年荣膺《欧洲货币》“中国最佳银行”,创造该奖项评选史上首个“三连冠”;位列英国《银行家》全球银行 1000 强榜单第 14 位,比 2020 年提高 3 个位次;在《财富》世界 500 强榜单上列第162 位。 感谢招商银行信任 Authing!   02  Authing & 三星集团     三星集团是韩国最大的跨国企业集团,包括众多的国际下属企业,旗下子公司有:三星电子、三星物产、三星人寿保险等,业务涉及电子、金融、机械、化学等众多领域,在全世界 68 个国家拥有 429 个据点、23 万员工,业务涉及电子、金融、机械、化学等众多领域。 感谢三星集团信任 Authing!   03 Authing & 大陆集团     大陆集团,德国运输行业制造商,世界第四大轮胎制造商,全球五大汽车零部件供应商之一。 感谢大陆集团信任 Authing!     04 Authing & Cytiva     作为全球生命科学领域的领先者,Cytiva(思拓凡)致力于促进与加速全球医疗的发展。截至目前,Cytiva 年销售额超过 33 亿美元,并在全球 40 多个国家拥有近 7000 名员工。 感谢 Cytiva 信任 Authing!     05 Authing & 风变科技     风变科技成立于 2015 年,经营范围包括计算机网络工程、教育软件和计算机信息系统的技术开发等,旗下产品包括熊猫书院、风变编程等,累计服务用户超过 1000 万人。 感谢风变科技信任 Authing!   总结   Authing 既是客户的支持者,也是客户的产品专家和战略顾问,更是值得信赖的合作伙伴。我们提供全球化的身份专家支持团队,通过网络或电话,7*24 小时不间断支持。Authing 的帮助中心提供最新的技术知识库、商业案例以及与您的同行和 Authing 专家联系的机会。无论您何时需要我们,Authing 的支持团队总能最快响应。 2022 年,Authing 将秉承着致力于客户成功的初衷,帮助推动客户重要业务,为实现身份连通、打破数据孤岛而不懈努力。
如何使用 Authing 单点登录,集成 Discourse 论坛?
01  Authing 是什么?   Authing 是国内首款以开发者为中心的全场景身份云产品,集成了所有主流身份认证协议,为企业和开发者提供完善安全的用户认证和访问管理服务。 以「API First」作为产品基石,把身份领域所有常用功能都进行了模块化的封装,通过全场景编程语言 SDK 将所有能力 API 化提供给开发者。同时,用户可以灵活的使用 Authing 开放的 RESTful APIs 进行功能拓展,满足不同企业不同业务场景下的身份管理需求。 Authing 构建了 APN(Authing Partner Network),集成了市面上主流应用,以帮助企业管理员和开发者更简单、高效的完成应用单点登录,为企业和开发者提供完善安全的用户认证和访问管理服务。 Discourse 是 Stack Overflow 的联合创始人 Jeff Atwood 推出的一个新的开源论坛项目,其目的是为了改变十年未变的论坛软件,摒弃了传统论坛的话题讨论形式、拥有自学习系统、全 Web 应用同时适用于桌面和移动终端。 本文,将以 Discourse 为例,详细描述 Authing 单点登录集成步骤。   传统系统 SSO 单点登录改造   首先,需要对原有系统的用户体系进行改造,使其能够适应通用的用户认证标准协议(如 OAuth)。如果系统体量较大,甚至还需要考虑将原有业务中的用户体系抽出,专门做成单点登录的用户中心。需要进行设计、编码、测试、升级、扩容等一系列复杂的开发运维操作,才能够实现。 该方式耗时间,耗精力,耗成本,风险大(需要在业务领域之外不断去踩坑)。   Authing SSO 集成   如果您的应用是基于 Authing 提供的身份系统进行开发,那么恭喜你,可以使用较少的代码(或者配置)即可轻松几步,快速完成单点登录的集成。 该方式低成本,无须额外设计和开发,采用标准协议,轻松打通。   02 Discourse 安装   参考资料 Discourse 官方 Docker 仓库: https://github.com/discourse/discourse_docker 安装指南文档: https://github.com/discourse/discourse/blob/main/docs/INSTALL-cloud.md 建议将 Discourse Docker 仓库 Fork,并在本地先进行开发调试确认无误后再进行产品环境的安装。 下面是简单的安装步骤说明及配置中常见问题的 FAQ。 注意:请在 Linux 服务器或者 macOS 下进行安装(Windows 需要自行摸索一下)。   拉取 Discourse Docker 仓库   git clone https://github.com/discourse/discourse_docker.git /var/discourse cd /var/discourse 使用自动化配置脚本: ./discourse-setup 非 root 用户的话,需要在前面加 sudo 运行。根据提示一步一步输入配置项,完成安装配置。默认的配置在本地运行的时候大概率会运行不起来。 打开 containers/app.yml 配置文件进行配置调整,如果手动配置,也可以执行: cp samples/standalone.yml containers/app.yml 复制一个示例模板作为开始。   应用配置   在开始配置之前,先确保域名已经绑定到服务器上(DNS 中的 A 记录绑定),或者本地修改 /etc/hosts 文件(不要使用 example.com 或者需要强制 https 的域名后缀作为本地开发调试,如:.app、.dev等)。 环境变量设置参考: env: LC_ALL: en_US.UTF-8 LANG: en_US.UTF-8 LANGUAGE: en_US.UTF-8 EMBER_CLI_PROD_ASSETS: 1 # DISCOURSE_DEFAULT_LOCALE: en ## How many concurrent web requests are supported? Depends on memory and CPU cores. ## will be set automatically by bootstrap based on detected CPUs, or you can override #UNICORN_WORKERS: 3 ## TODO: The domain name this Discourse instance will respond to ## Required. Discourse will not work with a bare IP number. DISCOURSE_HOSTNAME: 'discourse.local' ## Uncomment if you want the container to be started with the same ## hostname (-h option) as specified above (default "$hostname-$config") # DOCKER_USE_HOSTNAME: true ## TODO: List of comma delimited emails that will be made admin and developer ## on initial signup example 'user1@example.com,user2@example.com' DISCOURSE_DEVELOPER_EMAILS: 'willin@willin.org' ## TODO: The SMTP mail server used to validate new accounts and send notifications # SMTP ADDRESS, username, and password are required # WARNING the char '#' in SMTP password can cause problems! DISCOURSE_SMTP_ADDRESS: smtp.mail.qq.com DISCOURSE_SMTP_PORT: 25 DISCOURSE_SMTP_USER_NAME: willin@willin.org DISCOURSE_SMTP_PASSWORD: "password" DISCOURSE_SMTP_ENABLE_START_TLS: fales # (optional, default true) DISCOURSE_SMTP_AUTHENTICATION: plain DISCOURSE_SMTP_OPENSSL_VERIFY_MODE: none DISCOURSE_NOTIFICATION_EMAIL: willin@willin.org ## If you added the Lets Encrypt template, uncomment below to get a free SSL certificate #LETSENCRYPT_ACCOUNT_EMAIL: me@example.com ## The http or https CDN address for this Discourse instance (configured to pull) ## see https://meta.discourse.org/t/14857 for details #DISCOURSE_CDN_URL: https://discourse-cdn.example.com ## The maxmind geolocation IP address key for IP address lookup ## see https://meta.discourse.org/t/-/137387/23 for details #DISCOURSE_MAXMIND_LICENSE_KEY: 1234567890123456 简单说明: UNICORN_WORKERS:根据 CPU 数量决定 Worker 数量或者手动配置 DISCOURSE_HOSTNAME:正确配置域名 DISCOURSE_SMTP_XXX: 正确配置 SMTP 邮件发送服务,不然会收不到验证码和通知邮件  插件配置: ## Plugins go here ## see https://meta.discourse.org/t/19157 for details hooks: after_code: - exec: cd: $home/plugins cmd: - git clone https://github.com/discourse/docker_manager.git - git clone https://github.com/discourse/discourse-oauth2-basic.git - git clone https://github.com/angelim/discourse_user_auto_activation.git 这三个插件的作用: Docker 管理,自带默认 OAuth 2 集成,用于与 Authing SSO 连接实现单点登录 自动激活(邮箱)插件,可选   启动论坛服务 提醒:先配置好 SSL 证书再启动服务(参考 FAQ SSL 证书配置,或者使用 Let's Encrypt 签发证书)。 配置完成后制作镜像: ./launcher bootstrap app ./launcher start app 如果已经初始化过,可以通过重新制作镜像的方式: ./launcher rebuild app 过程漫长,耐心等待。下面整理了我在调试过程中遇到的一些问题和一些提示。   FAQ   域名配置 主要修改模板: templates: - "templates/postgres.template.yml" - "templates/redis.template.yml" - "templates/web.template.yml" - "templates/web.ratelimited.template.yml" ## Uncomment these two lines if you wish to add Lets Encrypt (https) - "templates/web.ssl.template.yml" #- "templates/web.letsencrypt.ssl.template.yml" 1. 如果需要 SSL 支持,  "templates/web.ssl.template.yml" 这个模板文件需要引入。 2. 如果需要免费的域名证书更新, "templates/web.letsencrypt.ssl.template.yml" 这个模板需要引入。 同时根据需要,将端口开放出来: ## which TCP/IP ports should this container expose? ## If you want Discourse to share a port with another webserver like Apache or nginx, ## see https://meta.discourse.org/t/17247 for details expose: - "80:80" # http - "443:443" # https   SSL 证书配置 首先确认一下文件目录的映射是否正确: ## The Docker container is stateless; all data is stored in /shared volumes: - volume: host: /var/discourse/shared/standalone guest: /shared - volume: host: /var/discourse/log/var-log guest: /var/log 类似这样的目录映射,将证书文件放置到对应的 ssl 目录下,检查这两个文件路径是否正确: /var/discourse/shared/standalone/ssl/ssl.crt /var/discourse/shared/standalone/ssl/ssl.key 自签证书参考: openssl genrsa -aes256 -passout pass:gsahdg -out ssl.pass.key 4096 openssl rsa -passin pass:gsahdg -in ssl.pass.key -out ssl.key openssl req -new -key ssl.key -out ssl.csr # You are about to be asked to enter information that will be incorporated # into your certificate request. # What you are about to enter is what is called a Distinguished Name or a DN. # There are quite a few fields but you can leave some blank # For some fields there will be a default value, # If you enter '.', the field will be left blank. # ----- # Country Name (2 letter code) []:CN # State or Province Name (full name) []:Jiangsu # Locality Name (eg, city) []:Nanjing # Organization Name (eg, company) []:Xibang Tech # Organizational Unit Name (eg, section) []: # Common Name (eg, fully qualified host name) []:discourse.local # Email Address []:willin@willin.org # Please enter the following 'extra' attributes # to be sent with your certificate request # A challenge password []: openssl x509 -req -sha256 -days 365 -in ssl.csr -signkey ssl.key -out ssl.crt 自签证书需要信任,在 macOS 下就是双击打开 .crt 文件,选择信任始终信任,过程中需要输入两次密码即可。 禁用 SSL 该步骤并非必要,如果懒得配置 SSL 本地自签名证书(比如我),可以将原有的配置考出,把 SSL 部分给注释掉。 # 先将配置从镜像拷贝出来 docker cp app:/etc/nginx/conf.d/discourse.conf ./discourse.conf # 修改配置后执行 docker cp ./discourse.conf app:/etc/nginx/conf.d/discourse.conf docker exec app nginx -s reload 其中主要修改的部分为,将 https 请求跳回 http: # attempt to preserve the proto, must be in http context map $http_x_forwarded_proto $thescheme { default $scheme; https http; } 将 80 跳转到 443 的逻辑删除: server { listen 80; # 将跳转的部分删除,并与 listen 443 的 `server` 合并 }   Build 或启动失败   1. 执行 git clone 命令之后出错; 该情况出现在国内服务器拉取镜像。可以在码云或者其他国内 Git 服务商上导入 Github 的仓库,然后用国内镜像地址。 2. 域名无法访问; 检查配置或本地 HOSTS,是否已经绑定好域名。 3. 启动成功但无法访问; 该情况一般仅在本地调试时出现,域名虽然是可以随意起,但要注意规则(比如没有配置 SSL 证书 nginx-error 日志会有,比如 .dev 域名我在本地测试时使用自签 SSL 证书就始终无法访问但 nginx-access 日志却显示正常)。   访问论坛并进行初始化配置 访问 localhost 或者你配置的域名,注册管理员用户并进行初始化配置。 通过邮件验证链接重新进入后,开始初始化配置。11 个步骤设置完后,进入管理后台-设置,左侧边栏选择「登录」。 关闭本地登录(建议稳妥起见,在单点登录配置完成后关闭也可以)。 进入插件设置: 点击设置后停留在当前配置页面(稍后继续设置)。在新窗口中打开 Authing 控制台。   03  Authing SSO 单点登录集成 在单点登录 SSO 应用市场中搜索 Discourse。点击获取应用进入配置。 第一步是填写论坛名称,第二步进行登录配置。 只需要填入一个 Redirect URI (注意一下这里是区分 http/https 的,如果不对就报 redirect_uri_mismatch 错误),其他配置项对应复制填入到 Discourse 插件配置中。 示例: http://discourse.local/auth/oauth2_basic/callback(替换你的域名,后边路径保持一致)。 另外还需要配置的项目为: oauth2 json user id path: 填入 sub oauth2 json username path: 填入 nickname 或者 username oauth2 json name path: 填入 name oauth2 json email path: 填入 email oauth2 json email verified path:填入 email_verified oauth2 json avatar path: 填入 picture oauth2 send auth header 在 HTTP 授权标头中发送客户端凭据:取消勾选 保存插件配置。 保存访问授权之后,可以在新的隐私窗口测试一下。 自动将 Authing 用户信息带入论坛。测试成功。 同时管理员账户(邮箱与 Authing 用户相同)即可无缝衔接至 Authing SSO 单点登录方式。 至此完成,大功告成。   延伸 通过 Authing SSO 还可以通过无代码的方式接入: 协同工具:如禅道、ProcessOn、石墨文档、Notion、Tower、Teambition、飞书、Confluence 等 云计算资源:如阿里云、腾讯云、AWS、百度智能云、金山云、华为云等 开发者工具:如 Gitlab、Jira、Coding.net、Bitbucket、Jenkins 等 (目前应用商店里提供)其他共计 120 种服务/平台/软件 同时还可以以低代码/零代码的形式,接入各类系统、软件,目前支持的自建应用支持的协议有: OAuth 2.0 SAML 2 CAS 使用 Authing SSO,可以轻松集成 NodeBB 论坛、Wordpress 站点等等等等……的单点登录。
Authing Share | OAuth 在 Authing 控制台配置认证(三)
01 集成介绍 在开始这篇干货文章前,首先和大家汇报一个好消息!近日,2021 腾讯云启创新生态企业年度榜单出炉,Authing 成功入选“年度最佳基础产品奖”!Authing 是以开发者为中心的云原生全场景身份云。企业员工和客户安全数服务用户数近 4000 万,服务租户近 20000 家,连接应用 30000 余个。     言归正传,下面让我们继续讲解集成过程需要在 Authing 平台配置的整个流程。 在上两篇文章《Spring Security 集成 OAuth 2.0 认证(一)》(以下简称《认证(一)》)和《Spring Security 集成 OAuth 2.0 认证(二)》(以下简称《认证(二)》)中,我们讲解了很多的基础知识和概念。 《认证(一)》讲述了 OAuth 2.0 的概念、协议特点、应用场景以及授权类型中的授权码模式、刷新令牌机制。《认证(二)》则详细介绍了授权类型中其他几种授权模式,包括密码凭证模式、客户端凭证模式和简化模式,文章在篇末还介绍了授权过程参数的含义和作用。 接下来,本文将继续《认证(一)》和《认证(二)》的后续操作,主要包括以下两方面内容: OAuth 2.0 在认证过程中所需要的配置 在 Authing 平台配置和获取这一系列配置的前期准备:开发环境和搭建项目方式   02 配置 Authing 获取 Authing 平台信息 首先要在 Authing 注册一个账号,然后进入控制台,按照引导步骤新建一个用户池。 点击左侧的「应用」 菜单项,在右侧会看到一个默认创建好的应用。     点击「配置」,看到 App ID、App Secret 和 Issuer url,请妥善保存,之后会用到这些信息。     然后需要在回调地址处添加 http://localhost:8080/callback,之后的选项与下图中保持一致。   Spring Security OAuth 默认的回调地址为 /login/oauth2/code/{clientId}   确认开启 OAuth 2.0 服务并进行配置。     03 项目开发准备工作 开发环境 开发工具:IDEA 项目管理工具:Maven JDK 版本:1.8 版本控制工具:Git 后文主要以以上环境来进行项目的搭建和编码工作,个别版本以及集成开发工具之间的差异对开发集成工作没有太大的影响,请根据个人的开发习惯来配置一下自己的本地环境噢,方便接下来的学习。 搭建项目方式 使用 maven 工具构建项目 使用 Spring Initializr 快速构建项目 后文搭建项目过程中,主要采用以上两种方式,对此不熟悉的小伙伴,可以提前熟悉一下噢。第四节将介绍如何使用这两种方式构建项目。   总结 本篇主要介绍了 OAuth 2.0 在认证过程中所需要的配置,以及在 Authing 平台如何配置和获取这一系列的配置的过程。本篇的配置,将为第四节项目的搭建和编码所使用,第四节将使用代码实现 Spring Security 集成 Authing OAuth 认证的全过程。 下一小结,主要讲解 Spring Security 集成 Authing OAuth 2.0 项目编码认证(四),持续关注吧,下期更精彩!   文章回顾  
集简云 x Authing,助力网校打通用户身份管理屏障
01 场景描述 近年来,随着互联网飞速的发展,国内教育也开始向着网络信息化方向迈进。凭借网络科技巨大的优势和便利,在线网校迅速发展。 许多网校都会在自己的官网或者是 APP 上售卖课程,除此之外,一些网校为扩展业务也会在其他平台上进行宣传,比如在小鹅通上做 1 元/9.9 元的低价引流课程,客户购买后可以直接在小鹅通上观看课程。 如果网校企业使用了 Authing 作为 B2C 客户身份信息中台,想在 Authing 中迅速沉淀购买引流课程的客户信息,则可以通过集简云作为连接器打通小鹅通和 Authing,实现用户数据同步。以实现企业对客户身份的统一管理和高效利用。从而更好的实现服务。但这时网校面临一个问题:小鹅通和 Authing 两个系统之间的数据并没有打通。 对于公司来说,凡是购买引流课程的客户都会被视为“潜在意向客户”,为尽力满足客户的需求,通常部分网校会选择”看起来比较直接”的开发接口的方式,但开发接口存在一定的弊端: 耗时耗力且研发部门需要 all in。 一个想法从产生到落地执行往往需要对接多个部门,且冗长的会议,耗费大量的人力物力等因素对于专注做教育的网校来说,会制约其业务的发展。 成本高且不能满足灵活多变的业务流程。 一家网校不止在小鹅通一个平台上进行宣传,不同的平台需要的接口也会有所不同,成本极高,虽为客户提供优质的服务很重要,但是最大限度地节约资源也同等重要。 那么,无需任何代码开发,就可以将两个软件之间数据打通的问题该如何解决呢?   02 解决方案 这种将软件与软件进行连接,打通不同软件之间的数据屏障,正是集简云所解决的问题,只需要在集简云中搭建一个数据流程即可实现业务流程自动化。 根据上述场景描述,我们最终会帮助网校实现每当客户在小鹅通上购买课程后,通过集简云,会将客户的手机号、邮箱等信息自动同步到 Authing 当中创建账户,开启相应的权限,这样客户既可以在小鹅通上观看课程,也可以在网校的官方网站/app 上进行查看,让用户不受平台限制,提高体验感。 下面我们来看一下,如何通过集简云,快速打通小鹅通与 Authing 两个系统之间的数据屏障   03 效果展示 流程:【小鹅通-Authing】 (小鹅通→ Authing 流程图) (小鹅通→ Authing 数据同步效果图) 在集简云搭建此流程无需任何代码知识,企业各个业务部门皆可使用,业务流程自动化与智能化是企业新的增长引擎。   04 关于集简云 集简云是一个无代码软件集成平台,目前已经接入 100+ 款应用系统,它可以与企业的各种自建或者第三方业务系统对接,包括客服系统,CRM 系统,网站数据分析系统,电子商务系统,物流管理系统,企业数据库,企业 API 接口等,通过无代码集成方式无需开发即可建立自动化业务流程。 (点击查看完成应用列表)   05 关于 Authing Authing:连接全球人与应用 Authing 是国内首款以开发者为中心的全场景身份云产品,集成了所有主流身份认证协议,为企业和开发者提供完善安全的用户认证和访问管理服务。以「API First」作为产品基石,把身份领域所有常用功能都进行了模块化的封装,通过全场景编程语言 SDK 将所有能力 API 化提供给开发者。同时,用户可以灵活的使用 Authing 开放的 RESTful APIs 进行功能拓展,满足不同企业不同业务场景下的身份管理需求。
Authing 新闻速递 | 多租户,Guard,一键登录,签约保时捷
时间过得好快啊,转眼间 2021 年悄然结束,我们来到了虎虎生威的 2022 年~ 2021 年 12 月,Authing 签约了保时捷汽车,为 2022 年开启了加速键。身份上云,虎年 all-in。 下面,让我们一起来看看 Authing 近期上线了哪些新功能、做了哪些市场活动、签约了哪些重要客户吧!   01 Authing 产品更新 上线云原生「多租户」身份解决方案 旨在帮助 SaaS 行业客户快速上线复杂的「多租户」身份管理能力,让业务管理者更加专注于商业发展。同时助力其为合作伙伴提供更佳的身份管理全旅程体验。 Authing 多租户场景解决方案将支持以下功能:「快速创建和管理租户」、「个性化配置租户的品牌化登录页」、「通过多种方式便捷同步组织架构,添加租户成员」、「租户内灵活的角色和权限配置,满足多种业务场景」。   上线手机号一键登录功能 用户只需点击按钮「手机号一键登录」,即可识别本机号码,进行身份认证。从原先至少需要 20s 才能「注册」 /「登录」成功,降低到 1s 上下,极大简化注册流程与门槛,降低用户流失率。   上线低代码登录组件 Guard Android & Web 版 Guard 可根据需求配置,建议用于单页面应用程序,它可以轻松添加各种社会化登录方式,使用户无缝登录,并且在不同平台拥有一致的登录体验。Guard 屏蔽了很多底层认证的实现细节,包括繁琐的 UI 开发。 Guard Android 版 Guard Android 开源组件丰富对主流移动端开发语言的支持,帮助多端应用的开发者节约开发成本, 降低安全风险。 Authing 低代码登录组件 Guard Android 版已上线   Guard Web 版 Guard Web 3.0 版正式发布,我们对嵌入式 Guard 做了功能升级,提高了系统安全性;对托管式 Guard 做了界面更新,升级后的登录界面操作方便快捷。 Authing 低代码登录组件 Guard Web 3.0 版本全新上线   上线 ASA 表单代填 Authing 单点登录(SSO)支持 OAuth2.0、OIDC、SAML、CAS 四种主流认证协议。近期,Authing 推出 Authing Secure Authentication (ASA),为不支持这四种协议的外部 Web 应用程序提供单点登录 (SSO) 功能。 管理员可以给用户分配应用账密。Authing 将账密加密存储在数据库中。在用户访问被分配了账密的应用的登录界面时,Authing 会自动填充账号密码,并进行登录。最终用户只需登录 Authing,就可直接访问被分配的应用。   02 市场动态 12 月 21 日,由中国软件网、海比研究院主办,中国软件行业协会应用软件产品云服务分会、中国总会计师协会信息化分会联合主办的“洞见 2022 第五届中国企业服务年会”在北京香格里拉饭店举行。 在“洞见 2022 中国企业服务”评选中,Authing 从数千家企业中脱颖而出,很荣幸地获得了 “2021 年中国 PaaS 行业年度用户体验奖”。 在本次活动中,Authing CTO 尚斯年受邀发表“云时代下的数字身份自动化”主题演讲,现场反响热烈。 深度 | Authing CTO 尚斯年:云时代下的数字身份自动化   03 重要签约客户 感谢保时捷(中国)、TeamCode、易纵互联、上海麦糖、杭州未可选择 Authing。   04 企业文化 技术人的年度书单 雨果曾说,书籍是改造灵魂的工具。人类所需要的,是富有启发性的养料。而阅读,则正是这种养料。 欢迎大家点击下方链接,来看看 Authing 创始人 & CEO 谢扬,Authing 联合创始人 & COO 李宇航与 Authing CTO 尚斯年的 2021 年推荐书单。用阅读,与这个世界建立更广阔、更深远的联系;用想象力,去创想未来世界的样子。 Authing 的 2021 年度书单   Authinger 的故事 爱一个人,攀一座山,追一个梦。这篇是 Authinger 的故事,一切的一切归集于“用小小的微光,点亮小小的希望”。2022 年,我们将延续 2021 年的自律、创新与奋斗,为客户创造更安全、更有效、更实用的产品,与开发者共同探索安全的未来。 更卓越、更进取、更创新 | Authinger 的 2021   2021 大事件 每天创新一点,对产品倾注全部的爱,给客户惊喜,任何客户来的时候,我们都能很自信的说:“你想要的我都有”。 —— Authing CEO 谢扬 年终盘点 | Authing 2021 大事件
Authing 低代码登录组件 Guard Web 3.0 版本全新上线
据相关数据显示,30% 的用户在遇到登录问题时会选择离开,超出 10% 的交易被放弃是由于缺乏安全信任。 Authing 是以开发者为中心,基于云原生架构的 IDaaS 产品,帮助数千万企业和开发者千倍级提升生产效率。Guard 通过低代码方式快速生成 UI 精美的登录表单,为你的应用快速嵌入多种高可用的登录与认证能力。开发者可以定制登录体验、配置注册页面以及多因素身份验证,也可以轻松添加各种社会化登录方式实现无缝登录,节约 90% 开发时间,降低安全风险。 去年 12 月,Authing 更新了 Guard Android  端(详情请点击:Authing 低代码登录组件 Guard Android 版已上线),助力移动端开发者享受同样便捷的开发体验。近期,Guard Web 3.0 版正式发布,我们对嵌入式 Guard 做了功能升级,提高了系统安全性;对托管式 Guard 做了界面更新,升级后的登录界面操作方便快捷。   你可以使用 npm / yarn 下载,第一时间进行体验: $ yarn add @authing/react-ui-components # OR $ npm install @authing/react-ui-components --save   01  托管式 & 嵌入式 Guard 组件 你可以通过两种方式应用 Authing 提供的登录注册能力:托管式 Guard 和嵌入式 Guard 组件。 托管式 Guard 组件 最简单,最安全的集成方式。对于大多数集成,建议使用 Authing 托管的登录流程。 你的业务系统将用户重定向到 Authing,在此用户进行身份验证,然后重定向回在控制台配置的应用回调连接。 此设计被认为是安全性最佳实践。在自定义配置方面,托管模式提供了中等程度的登录注册表单自定义配置,可通过控制台配置和 CSS 进行界面自定义。 嵌入式 Guard 组件 是灵活性和集成之间的最佳平衡。内嵌登录组件由 Authing 构建和更新,使用行业最佳实践安全性设计,仅需要几行 JavaScript 代码就可以集成到你开发的项目中。它可以直接从 CDN 或 NPM 加载,也可以从源代码构建。 Guard 同时支持 React、Vue、Angular 及原生 JavaScript 命令式调用等多种集成模式,在你的任何项目中都可以无缝集成并享有高度自定义灵活性。其具备以下特性: 轻量级:所有资源打包起来只有几百 kb 定制化:可以支持完整的 UI 自定义功能 响应式:兼容移动端和 PC 端网页   02  嵌入式 Guard 组件新功能上线 由于嵌入式 Guard 组件能够灵活嵌入开发者的各种应用场景,便于进行修改和编辑,因此具有广泛的需求。 本次更新主要针对 Web 端 Guard 嵌入式组件,我们新上线了以下功能: MFA 相关功能实现 MFA 中支持人脸识别 & 活体检测 开启 MFA 后,在首次登录之后,用户还会被提示需要进行第二次身份验证。本次 Guard 组件的 MFA 模块新增人脸识别验证功能,通过活体检测判断生物特征因素,实现更高安全级别的身份验证。 电子邮箱绑定验证 支持绑定邮箱进行 MFA 验证,用户发送邮箱验证码并完成输入后即可完成。 支持 TOTP 验证器的下载 支持绑定 OTP 进行 MFA 验证,可以直接在 Guard 组件中完成跳转至 TOTP 的下载页面并完成绑定,一站式操作,无需跳离页面单独绑定。   登录安全策略 增加登录安全策略的相关功能 包括账号锁定和图形验证码两种安全策略,可以自定义的设置开启安全策略所需的条件。开启「图形验证码」后,当用密码错误 / 登录失败在指定周期内达到次数上限后,用户需要输入图形验证码后才能登录: 开启「账号锁定」后,当用密码错误 / 登录失败在指定周期内达到次数上限后,账号将自动被锁定,用户需要联系管理员解锁账号再登录: 首次登录修改密码 管理员在后台创建用户后,用户在首次登录时系统会自动提示用户需要修改密码,并通过密码安全策略确保用户修改后的密码受到高等级的安全保护。   密码轮换策略 开启密码轮换策略后,你可以要求用户在指定的密码轮换周期内,必须使用不同于原来密码的新密码;系统将在达到指定的时间节点时,在登录界面提示用户并完成密码更新。   更多新增功能 支持多租户相关的功能 新上线多租户相关功能配置区,创建租户后可通过租户身份登录应用,并支持对租户登录组件进行独立的品牌化配置。   使用自定义 CSS 更好的进行定义样式 支持更强大的自定义 CSS 配置功能,让你能够更好的定义登录页面样式。   支持注册登录协议 支持在控制台配置注册 / 登录协议,用户需要勾选后才能实现注册 / 登录,确保用户已知悉应用的《隐私协议》、《服务条款》等相关内容,规避法律风险。   Guard 组件代码实例 旧版 Guard 的使用方式: import React from 'react' import { AuthingGuard } from '@authing/react-ui-components' import '@authing/react-ui-components/lib/index.min.css' const App = () => { const appId = 'Authing_Appid' const config = { host: 'https://core.you-authing-service.com', } return <AuthingGuard appId={appId} /> }   新版 Guard 的使用方式: import React from 'react' import { Guard } from '@authing/react-ui-components' import '@authing/react-ui-components/lib/index.min.css' const App = () => { const appId = 'Authing_Appid' const config = { host: 'https://core.you-authing-service.com', } return <Guard appId={appId} /> }   config 中我们移除了一些参数,具体的字段下表所示: 参数名 状态 兼容方式 appHost 移除 使用 host 字段代替即可   更详细的关于新旧版 Guard 组件之间的区别,请点击查看 官方文档。   03 托管式 Guard 界面设计深度优化 对于托管式 Guard,本次更新侧重界面优化,提高开发者登录体验。   登录 验证码登录     密码登录      扫码登录   注册 手机号注册   邮箱注册   04 未来规划   Authing 开放平台高级工程师孙天祥表示:本次更新,从产品功能和使用体验上对嵌入式 Guard 组件进行了全方位完善,Authing 嵌入式和托管式登录框功能双向对齐,为全场景下的用户提供更加一致的使用体验。   Authing 产品负责人佟野表示:我们会一直秉承着开发者友好的初心,持续迭代 Guard 组件,推出更加灵活可配置的 PaaS 化版本,开发者只需在页面中'拖拖拽拽,以 Low Code,甚至 No Code 的方式来打造自己的登录界面和流程,为业务持续赋能。  
Apache APISIX 结合 Authing 实现集中式身份认证管理
项目介绍   关于 Authing Authing 是国内首款以开发者为中心的全场景身份云产品,集成了所有主流身份认证协议,为企业和开发者提供完善安全的用户认证和访问管理服务。以「API First」作为产品基石,把身份领域所有常用功能都进行了模块化的封装,通过全场景编程语言 SDK 将所有能力 API 化提供给开发者。同时,用户可以灵活的使用 Authing 开放的 RESTful APIs 进行功能拓展,满足不同企业不同业务场景下的身份管理需求。   关于 Apache APISIX Apache APISIX 是一个动态、实时、高性能的 API 网关,提供负载均衡、动态上游、灰度发布、服务熔断、身份认证、可观测性等丰富的流量管理功能。Apache APISIX 不仅支持插件动态变更和热插拔,而且拥有众多实用的插件。Apache APISIX 的 OpenID Connect 插件支持 OpenID Connect 协议,用户可以使用该插件让 Apache APISIX 对接 Authing 服务,作为集中式认证网关部署于企业中。   什么是集中式身份认证   传统身份认证 在传统认证模式下,各个后端应用服务需要单独开发功能以支持身份认证功能,例如与身份提供商进行交互、获取用户的身份信息等功能。   集中式身份认证 与传统认证模式不同,集中身份认证模式把用户认证从应用服务中抽离了出来。以 Apache APISIX 为例,集中认证的流程如上图所示:首先由用户发起请求(request),然后由前置的网关负责用户认证流程,与身份提供方对接,向身份提供方发送身份认证(authorization)请求。身份提供方返回用户身份信息(user info)。网关完成用户身份识别后,将用户身份信息通过请求头的形式转发至后端应用。   集中式身份认证管理的优点 相比较传统认证模式,集中认证模式下有如下优点: 简化应用开发流程,降低开发应用工作量和维护成本,避免各个应用重复开发身份认证逻辑。 提高业务的安全性,集中身份认证模式在网关层面能够及时拦截未经身份认证的请求,保护后端的应用。 同时结合 Authing 强大的身份认证管理功能,可实现如下功能: 通过控制台对身份认证服务进行生命周期管理,包括创建、启用、禁用等。 提供实时、可视化的应用监控,包括:接口请求次数、接口调用延迟和接口错误信息,并且进行实时告警通知。 集中式日志,可以方便地查看用户登录、登出以及对应用的调整和修改信息。 更多具体内容可参考 Authing 应用集成网关[1]。   如何使用   步骤一:配置 Authing 1. 登录 Authing 账号,选择自建应用,并填入应用名称和认证地址。如果你没有 Authing 账号,请访问 Authing 官网[2],单击右上角 “登录/注册”,注册一个 Authing 账号。 2. 单击“创建”,创建一个 Authing 应用。 3. 设置登录和登出的跳转 URL。在认证过程中,Authing 将会拒绝除配置以外的回调 URL,由于本次为本地测试,所以将登录回调 URL 和登出回调 URL 都设置为 APISIX 访问地址 http://127.0.0.1:9080/ 。 4. 创建用户(可选)。在用户列表页面,创建用户,账号密码分别为 user1/user1,并且可以在「用户信息-授权管理」页面中设置是否允许应用的访问(默认为允许)。 5. 访问应用页面,获取以下配置,配置 Apache APISIX OpenID Connect 时需要提供这些信息: App ID:OAuth client ID,即应用的 ID。与下文的 client_id 和 {YOUR_CLIENT_ID} 对应。 App secret:OAuth client secret,即应用密钥。与下文的 client_secret  和{YOUR_CLIENT_SECRET} 对应。 服务发现地址:应用服务发现的地址。与下文的 {YOUR_DISCOVERY} 对应。 步骤二:安装 Apache APISIX 目前可通过源码包、Docker、Helm Chart 等多种方式来安装 Apache APISIX。   安装依赖 Apache APISIX 的运行环境需要依赖 NGINX 和 etcd,所以在安装 Apache APISIX 前,请根据您使用的操作系统安装对应的依赖。目前官网提供了 CentOS7、Fedora 31 & 32 、Ubuntu 16.04 & 18.04、 Debian 9 & 10 和 MacOS 上的依赖安装操作步骤,详情请参考安装依赖[3]。 通过 Docker 或 Helm Chart 安装 Apache APISIX 时,已经包含了所需的 NGINX 和 etcd,请参照各自对应的文档。    通过 RPM 包安装(CentOS 7) 这种安装方式适用于 CentOS 7 操作系统,请运行以下命令安装 Apache APISIX。 sudo yum install -y https://github.com/apache/apisix/releases/download/2.7/apisix-2.7-0.x86_64.rpm   通过 Docker 安装 详情请参考:使用 Docker 安装 Apache APISIX[4]。    通过 Helm Chart 安装 详情请参考:使用 Helm Chart 安装 Apache APISIX[5]。    通过源码包安装 1. 创建一个名为 apisix-2.7 的目录。 mkdir apisix-2.7 2. 下载 Apache APISIX Release 源码包: wget https://downloads.apache.org/apisix/2.7/apache-apisix-2.7-src.tgz 您也可以通过 Apache APISIX 官网下载 Apache APISIX Release 源码包。Apache APISIX 官网也提供了 Apache APISIX、APISIX Dashboard 和 APISIX Ingress Controller 的源码包,详情请参考Apache APISIX 官网-下载页[6]。  3. 解压 Apache APISIX Release 源码包: tar zxvf apache-apisix-2.7-src.tgz -C apisix-2.7  4. 安装运行时依赖的 Lua 库: # 切换到 apisix-2.7 目录cd apisix-2.7# 创建依赖make deps   初始化依赖 运行以下命令初始化 NGINX 配置文件和 etcd。 # initialize NGINX config file and etcdmake init   步骤三:启动 Apache APISIX 并配置对应的路由 1. 运行以下命令,启动 Apache APISIX。 apisix start 2. 创建路由并配置 OpenID Connect 插件。OpenID Connect 配置列表如下: 以下代码示例通过 Apache APISIX Admin API 进行创建路由,设置路由的上游为 httpbin.org。httpbin.org 是一个简单的用于接收请求和响应请求的后端服务,下文将使用 httpbin.org 的 get 页面,参考 http bin get[7]。 具体配置项请参考 Apache APISIX OpenID Connect Plugin[8]。 curl  -XPOST 127.0.0.1:9080/apisix/admin/routes -H "X-Api-Key: edd1c9f034335f136f87ad84b625c8f1" -d '{     "uri":"/*",     "plugins":{         "openid-connect":{             "client_id":"{YOUR_CLIENT_ID}",             "client_secret":"{YOUR_CLIENT_SECRET}",             "discovery":"https://{YOUR_DISCOVERY}",             "scope":"openid profile",             "bearer_only":false,             "realm":"apisix",             "introspection_endpoint_auth_method":"client_secret_post",             "redirect_uri":"http://127.0.0.1:9080/"         }     },     "upstream":{         "type":"roundrobin",         "nodes":{             "httpbin.org:80":1         }     }}'   步骤四:访问 Apache APISIX 1. 访问 "http://127.0.0.1:9080/get",由于已经开启了 OpenID Connect 插件,所以页面被重定向到 Authing 登录页面 (可在 Authing 控制台中 「应用-品牌化」对该页面进行定制)。 2. 输入用户在 Authing 注册的账号密码,或者在步骤一中创建的用户 user1/user1 ,单击“登录”,登录 Authing 账户。 3. 登录成功之后,能成功访问到 httpbin.org 中的 get 页面。该 httpbin.org/get 页面将返回请求的数据如下: ...    "X-Access-Token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6InFqeU55aVdVd2NhbUFxdEdVRUNCeFNsTWxQSWtTR2N1NmkyZzhEUk1OSGsifQ.eyJqdGkiOiJjTy16a0pCS0NSRFlHR2kyWkJhY0oiLCJzdWIiOiI2MWM5OGFmOTg0MjI4YWU0OTYyMDU4NTIiLCJpYXQiOjE2NDA1OTg4NTgsImV4cCI6MTY0MTgwODQ1OCwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSIsImlzcyI6Imh0dHBzOi8vYXBpc2l4LmF1dGhpbmcuY24vb2lkYyIsImF1ZCI6IjYxYzk4M2M0YjI4NzdkNDg2OWRkOGFjYiJ9.l2V8vDWcCObB1LjIhKs2ARG4J7WuB-0c-bnYZG2GP2zcpl6PMAPcId2B76CaXCU58ajGcfRmOlWJ67UaHrfWKv8IM4vcYN1gwhKdokSyrhEM31gQE-MzNEsEbPaVIGXdpR1N2JnAJK5-tKIjopDAXSwArfO6fQKTpjLhCi3COIA169WGRR4CKCwNzzpFAYP2ilNc18D_HRTBLS6UjxZSNUtWE5dbx7uBjblhwIwn5e1fxiEQcknVK8Dxf8NUliFECvr02HX2hNvmuCECkvA_mZYlshAeqidK8tSEXirAWsWS5jlXFqLiBJkhSHFrbxRyqeOSfJCJR_YcCwk9AzgZGg",    "X-Id-Token": "eyJhdF9oYXNoIjoiRl8tRjZaUVgtWVRDNEh0TldmcHJmUSIsImJpcnRoZGF0ZSI6bnVsbCwiZmFtaWx5X25hbWUiOm51bGwsImdlbmRlciI6IlUiLCJnaXZlbl9uYW1lIjpudWxsLCJpc3MiOiJodHRwczpcL1wvYXBpc2l4LmF1dGhpbmcuY25cL29pZGMiLCJwaWN0dXJlIjoiaHR0cHM6XC9cL2ZpbGVzLmF1dGhpbmcuY29cL2F1dGhpbmctY29uc29sZVwvZGVmYXVsdC11c2VyLWF2YXRhci5wbmciLCJwcmVmZXJyZWRfdXNlcm5hbWUiOm51bGwsInVwZGF0ZWRfYXQiOiIyMDIxLTEyLTI3VDA5OjU0OjE3Ljc3M1oiLCJ3ZWJzaXRlIjpudWxsLCJ6b25laW5mbyI6bnVsbCwibmFtZSI6bnVsbCwiaWF0IjoxNjQwNTk4ODU4LCJuaWNrbmFtZSI6bnVsbCwibm9uY2UiOiJmMTlmZjhjODM5NzdmZjNlMDczMzZmMzg3Y2QxM2EzMSIsIm1pZGRsZV9uYW1lIjpudWxsLCJleHAiOjE2NDE4MDg0NTgsInN1YiI6IjYxYzk4YWY5ODQyMjhhZTQ5NjIwNTg1MiIsImxvY2FsZSI6bnVsbCwiYXVkIjoiNjFjOTgzYzRiMjg3N2Q0ODY5ZGQ4YWNiIiwicHJvZmlsZSI6bnVsbH0=",    "X-Userinfo": "eyJ3ZWJzaXRlIjpudWxsLCJ6b25laW5mbyI6bnVsbCwibmFtZSI6bnVsbCwicHJvZmlsZSI6bnVsbCwibmlja25hbWUiOm51bGwsInN1YiI6IjYxYzk4YWY5ODQyMjhhZTQ5NjIwNTg1MiIsImxvY2FsZSI6bnVsbCwiYmlydGhkYXRlIjpudWxsLCJmYW1pbHlfbmFtZSI6bnVsbCwiZ2VuZGVyIjoiVSIsImdpdmVuX25hbWUiOm51bGwsIm1pZGRsZV9uYW1lIjpudWxsLCJwaWN0dXJlIjoiaHR0cHM6XC9cL2ZpbGVzLmF1dGhpbmcuY29cL2F1dGhpbmctY29uc29sZVwvZGVmYXVsdC11c2VyLWF2YXRhci5wbmciLCJwcmVmZXJyZWRfdXNlcm5hbWUiOm51bGwsInVwZGF0ZWRfYXQiOiIyMDIxLTEyLTI3VDA5OjU0OjE3Ljc3M1oifQ=="    ... 其中: X-Access-Token:Apache APISIX 将从用户提供商获取到的 access token 放入 X-Access-Token 请求头,可以通过插件配置中的 access_token_in_authorization_header 来选择是否放入 Authorization 请求头中。 X-Id-Token:Apache APISIX 将从用户提供商获取到的 ID token 通过 base64 编码之后放入 X-Id-Token 请求头,可以通过插件配置中的 set_id_token_header 来选择是否开启该功能,默认为为开启状态。 X-Userinfo:  Apache APISIX 将从用户提供商获取到的用户信息,通过 base64 编码之后放入 X-Userinfo,你可以通过插件配置中的 set_userinfo_header 来选择是否开启该功能,默认为开启状态。 由此可以看到,Apache APISIX 将会携带 X-Access-Token、X-Id-Token 和 X-Userinfo 三个请求头传递至上游。 上游可以通过解析这几个头部,从而获取到用户 ID 信息和用户的元数据。 4. 在 Authing 控制台中的 「审计日志-用户行为日志」中可以观察到 user1 用户在 2021.12.27 17:54:17 成功登录。   总结 本文为大家描述了 Apache APISIX 和 Authing 对接的详细操作步骤,通过阅读本文,大家对于在 Apache APISIX 中使用 Authing 有了更清晰的理解。 Apache APISIX 不仅致力于保持自身的高性能,也一直非常重视开源生态的建设。目前 Apache APISIX 已经拥有了 10+ 个认证授权相关的插件,支持与业界主流的认证授权服务对接。 如果你有对接其他认证授权的需求,不妨访问 Apache APISIX 的 GitHub[9],通过 issue 留下你的建议;或订阅 Apache APISIX 的邮件列表,通过邮件表达你的想法。我们也会在每周三晚上 8:00 举行社区周会[10],欢迎各位参加!   作者:朱欣欣   [1]:Authing 应用集成网关 [2]:Authing 官网 [3]:Apache APISIX 安装提示 [4]:构建 Apache APISIX 基于 Docker 的镜像 [5]:Apache APISIX Helm Charts [6]:Apache APISIX 下载中心 [7]:httpbin.org [8]:使用 Apache APISIX 进行基于 OIDC 的身份认证 [9]:Apache APISIX 的 GitHub 主页 [10]:Apache APISIX 社区周会
ASA 表单代填,丰富单点登录协议支持
01  Authing ASA 表单代填已上线   如今企业的生态系统、内外应用系统、甚至物联网设备都在呈指数级增长,随之而来的就是分散各处需要识别和管理的身份数据,以及不断加剧的身份欺诈、凭证被盗、黑客攻击等安全问题。 某种程度上,现代企业大量的数据都广泛分布于云中,迫切需要开发并逐步扩大基于云的身份服务,支持身份数量从成百上千扩展到百万千万,支持所有身份数据的集中式管理…… 鉴于云安全的复杂性以及加快扩展的紧迫性,控制和管理对公司资源的访问的需求从未如此之高。为了满足当今安全需求,公司需要一个单一的访问身份验证过程,以确保正确的人员可以在正确的时间访问正确的资源。 Authing 单点登录(SSO)支持 OAuth2.0、OIDC、SAML、CAS 四种主流认证协议。近期,Authing 推出 Authing Secure Authentication (ASA),为不支持这四种协议的外部 Web 应用程序提供单点登录 (SSO) 功能。 管理员可以给用户分配应用账密。Authing 将账密加密存储在数据库中。在用户访问被分配了账号密码的应用的登录界面时,Authing 会自动填充账号密码,并进行登录。最终用户只需登录 Authing,就可直接访问被分配的应用。   02 配置方法   创建 ASA 应用 在 Authing 应用市场找一个支持 ASA 的应用,以下我们以「石墨文档」为例进行演示。 点击进入详情,点击「获取应用」。 填写应用名称,点击「下一步」。 点击「完成」。 在分配账号页面,给用户分配应用账号。 在访问授权页面,选择「允许所有用户访问」。   下载插件 终端用户需要下载浏览器插件才能使用 ASA。浏览器插件的下载列表如下,如果你使用的浏览器不在以下列表中,请尝试安装 Chrome 版本的插件: Google Chrome:尝试直接打开Chrome 应用商店 安装,若无法访问上面的链接,查看 Chrome 手动安装插件进行安装 360 极速浏览器:进入 应用中心 下载并安装,登录 Authing 应用面板后即可使用此插件 360 安全浏览器:进入 应用中心 下载并安装,登录 Authing 应用面板后即可使用此插件 Firefox:进入拓展中心 下载并安装,登录 Authing 应用面板后即可使用此插件   体验登录 点击「应用面板」按钮,进入 Authing 应用面板登录页面。 输入之前被分配了账号的用户的邮箱和密码,点击「登录」,进入应用面板。 插件图标上将会出现红色叹号,点击「插件图标」,打开插件页面,点击「信任」当前账号。 插件中会展示当前账号被管理员所分配的所有应用列表,你可以看到你之前添加的「石墨文档」。 进入对应应用的登录界面,Authing 浏览器插件将会自动填充之前分配的账号密码并自动登录。有时应用需要进行一些人机校验,此行为需要用户手动操作,插件无法跳过。 校验完成即登录成功。 我们正在加速 ASA 插件支持更多应用,如果你希望你的应用被支持,你可以在加入 加入 APN 概览 ,了解更多详情。 文档地址:ASA 表单代填   03 未来规划 Authing 产品负责人佟野表示:“在未来,我们将扩大生态,预计集成 2000+ 应用,持续为企业提供更大的助力。搭建应用网关,解决老旧系统上云迁移的老大难问题:老旧系统无需改动或仅需要做较少的改动,即可集成到 Authing 中来,既拥有多样化的认证方式,又可拥有强大的基于策略的动态权限判定功能。”
更卓越、更进取、更创新 | Authinger 的 2021
还有不到三天,2021 年就将和我们告别。 在这难忘的一年里,新冠病毒依旧肆虐,德尔塔毒株还没有离开,奥密克戎又来一波攻击,双层叠加,为原本动荡的地球增加了更多不确定性; 在这难忘的一年里,我国奥运健儿在东京奥运会披荆斩棘,全红婵用 3 个 10 分诠释了如何让水花“害羞”; 在这难忘的一年里,Facebook 改名 Meta,元宇宙方兴未艾; 在这难忘的一年里,Apache 开源项目 Log4j 的远程代码执行漏洞细节被公开,造成严重危害,信息安全岌岌可危。 今天,我们想和你聊一聊,Authinger 的 2021 年。我们采访了几位 Authing 的同学,聊聊自己与 Authing 的故事。 这些故事,体现了最真实、最积极、最乐观的 Authinger。 遇见同频的灵魂,那些我们共同走过的路、迈过的坎坷,最终将成就更具生产力、安全性和稳定性的 Authing。   01  为客户解决实际问题,是 Authing 的存在意义   2021 年,Authing 签约了数百家客户,下面让我们听听销售同学们口中的 Authing。   昕昕,行业顾问   作为销售,日常工作给我最大的体会是——没有任何人是一座完完全全的孤岛。生活在这个世界上,你一定需要别人助力的。销售其实是在“卖人”,你把你这个人卖出去,让客户信任你、认可你,不管你卖什么产品,客户都会愿意买单的。 大部分人会认为,销售就是报个价。其实不然。销售签单时机是很有技巧的。我的一个客户,走流程走了很久,在月底当天,就差合同最后盖章的流程了,我们这边技术已经投入工作了。于是我决定去客户公司当面催催。 “催”这件事很有技巧,如果客户没有那么信任你的产品或者说这件事不合规,他肯定不会做。而我知道客户已经很满意产品,就差最后盖章,从我的角度,我希望他加速这个流程,帮我在月底完成签单。当你抱着一种帮助客户解决他的问题心态去销售的时候,你会发现周围会有很多帮助你的人。 很多人说销售性格很悲观,因为接受了太多拒绝。但是没有任何一个销售,是永远不出单的,除非他不想做这行或者不适合做。但同样,也没有永远的销冠。你之所以能成就当下的单子是因为当下的运气好,时机比较好,这两者是前提,然后才是你的能力。回顾过去你会发现,其实有些客户没签下来不完全是个人的原因,有客户内部的原因,也有外部的时机,所以不要过度苛责自己。有些单子,现在签不成,也许未来会忽然蹦出来,给你很大惊喜。 如果说让我用三个关键词概括下我的销售之旅,我认为是——读万卷书,行万里路,阅人无数。工作的旅程很长,做最好的自己,就能在工作中去挖掘更好的机会。   小震,行业顾问   很多人都觉得销售一定很外向,其实不然,我认为我是一个相对比较安静的销售。外向的销售可能比较擅长和很多客户保持关系,而安静销售可能更擅长和客户深度沟通。 作为销售来说,设身处地的站在客户的角度考虑事情是非常重要的一点,多方需要寻找一个平衡。 对于 Authing 来说,开放性和兼容性一直是我们的竞争优势之一。同时,我们专业的工程师将会跟进后续服务,保证方案的完整交付。 很多人都认为销售的工作很枯燥,其实不然,在这个过程中,我们将感受到客户对我们价值的认可,这对于个人和团队都是很有意义的。 参加工作一段时间后,我加入创业公司,做的也都是基础设施相关领域的解决方案,这种领域巨头一定是很关注的。但相信很多人内心里都会有一把火,作为创业公司,我们应该走一条什么样的道路 PK 过巨头呢?在目前产业互联网的生态竞争格局下,作为创业公司的一员,我认为内心的笃定与冒险精神是很重要的。 我非常希望与 Authing 的战友们一起,参与和见证 Authing 成长,这将很有成就感。 对于工作来说,大部分人要么热爱,要么为“生活所迫”,很多人可能处于两者之间,相信每个人都有压力爆炸,被拒绝的心灰意冷的时刻,挺过来,就慢慢会有一个大心脏,心态会慢慢变好,因为在这个过程中你对事情的认知将会改变,而对事情的认知将很大程度影响到自己的心态。 “ 请给予我平静 接受我无法改变的; 请给予我勇气 改变我能改变的; 请给予我智慧 分辨这两者的不同” 很多时候我们都期待着那个未来好的事情赶紧到来,但有句话说得对,我们永远无法准备好,很多时候我们必须先干 ,干了才能知道哪些事情有困难,哪些需要条件,哪些可以解决。 总之,不要给自己人生太多限制、太多框架。 最后,打个广告,“我劝天公重抖擞,不拘一格降人材”, Authing 商业化是一个充满活力的团队,期待你的加入。   02 用技术连接全球人与应用,是 Authing 的使命   “ 我充分地尊重与敬佩蒸汽机那段历史,这段历史不能被遗忘。同时,我们也要成为承前启后的新的生产力科技公司,我们用科技的手段去连接未来人们的记忆。” —— Authing CEO 谢扬 2021年,Authing 上线了自定义数据库,同步中心与身份供应,云原生多租户身份解决方案,Authing 文档 2.0,自适应安全(OPA)内测,低代码登录组件 Guard,ASA 等功能。 Authinger 研发和产品同学,完成了一个又一个挑战。下面,让我们听听他们的故事。   斯年:Authing CTO   我出生在知识分子家庭,家人对我的影响很大,他们一直鼓励我找到并坚持热爱的事情。我很幸运,从小就发现了自己感兴趣的事情,从小时候第一次去科技馆到组装和拆卸计算机,科技带给我无穷的快乐,从心底里一直希望可以用技术创造一些有意思的产品。于是大学时,我加入了计算机社团,写一些 Web 端应用。 但是随着毕业后加入阿里,按部就班地做一个螺丝钉,似乎也少了点机遇,内心渴望做一些不同的事情,用代码为人类创造更有幸福感的事情。一次很偶然的机会,我认识了谢扬,在和他的交流碰撞中,我感觉——这就是我想做的事情。于是,我离开了阿里,放弃了阿里的股票。换了个江湖,和谢扬一见如故,和 Authing 一拍即合。 瑞·达利欧在《原则》曾说过,想象一下,为了拥有美好的生活,你必须穿越一片危险的丛林。你可以安全地留在原地,过着普通的生活;你也可以冒险穿越丛林,过着绝妙的生活。你将如何对待这一选择?花点时间想想这件事,因为无论其形式如何,这是我们所有人都必须做出的一个选择。 加入 Authing 几个月后我才明白创业和在大厂工作的真正区别。在大厂里,像在一个室内游泳池,没什么波澜;而创业更像是被踢入了一片未知的大海里,在前行中,会遇到凶狠的鲨鱼,也会遇到温柔的鲸鱼,可能你唯一可以依靠的就是坚定的信念,活着的信念。 这种信念的背后离不开客户、开发者的支持,当然也离不开团队小伙伴的支持。 我们很多产品、技术的想法都是和开发者共同碰撞出来的。在一个隐蔽的咖啡馆,叫上几杯拿铁,围坐在一起,谈天说地、博古论今。这种关系让我重新定义了什么是朋友。我曾经觉得交朋友很难,需要持续经营,甚至有时候不得不去应酬。但现在我忽然感觉其实技术的碰撞、内容的交流,将会使我们的关系更为长久、更为稳固。大家聚在一起,共同去做这件对国家、对行业都很有意义的事情,也共同见证 Authing 从 0 到 1,从 1 到 100 的过程。 就我个人而言,曾经我仅仅管好自己,做一个优秀的技术人员就万事大吉;如今,我在管理好自己的同时,还需要成就他人,思考如何让团队里的其他小伙伴变得更好。有一个技巧,先找到团队里爱学习的几个小伙伴,让他们每天在群里分享心得,不管是读的书,还是工作中解决的一些问题,甚至看到的一篇好文等等,通过这种方式,构建一种学习型氛围,互相影响、一起进步。 大部分人认为,在工作中获得加薪、晋升,才是成功的、不凡的。但其实不是,那些不凡的事情存在于那些平凡的事情中。正是一点点小的平凡事,成就了专注、快乐的我。举例来说,当我写了复杂的代码,当我和同事开会碰撞出 perfect idea 时,当我下班回家嗅到路边丁香花的清香时,我感觉人生很感动、很值得。 大鱼海棠里面有一句很经典的话,爱一个人,攀一座山,追一个梦。我希望在 Authing,用技术的真实,去体验梦想实现的过程。   小伟,研发   多租户从需求到上线,实际上不足一个月。在客户和我们聊完需求后,我们会先去仔细分析场景,了解业务,探索功能实现可能性。最重要的一步,就是把业务上的需求转化为现有技术的概念模型,然后放在合适的产品位置上。 为了这个项目,研发每天工作 14 个小时甚至更久。那一个月,我们几乎没有自己的个人生活了。 一个项目的上线,规划非常重要。作为项目负责人,我会设定好项目需要完成的几个里程碑,然后再去拆分需要完成的任务。每天,我都会思考怎样能让团队协作起来,提高沟通效率与信息的即时反馈,做到有问题,就立刻想办法解决。 一个项目终归有终点的,我一直有一个信念——我们可以赢。挑战最大的时候就是进步最快的时候。在 Authing,我拓展了人生的边界,有了更多可能性。不仅在于技术上的、团队管理上的,还包括精神上的探索,我希望通过技术实现马斯洛需求的超我层面。 一点浩然气,千里快哉风。   小璐,研发   我是一个比较纯粹的技术人,来 Authing 以来一直聚焦在技术上。我是在一个开源项目论坛了解到 Authing 的,感觉内容很接地气。然后我就投简历了。 Authing 给我第一印象是——面试速度非常快,一个下午面了四轮就面完了,谢扬给人感觉很亲切、和善、接地气,然后隔了一天就直接谈入职了,后续我把腾讯等大厂面试都推了。 Authing 给像我一样的应届生很多机会,如果你去一个大厂,可能你接触的仅仅是一个固定的圈子,作为大型航母的一个螺丝钉。而如果你想提高技术甚至去设计一个产品,Authing 是最佳选择。 举例来说,我的岗位是前端,最开始我主要负责处理一些客户提出的问题,还做了一段时间国际化的事情,比如把文案改成英文,针对海外市场做一些优化等等。 我印象比较深的是一个审计日志项目,虽然我是作为前端进来的,但是其实后端技术我也懂,作为技术人员,持续学习是必要的,在某一刻可能有些技术就用到了。 审计日志这个项目就是,当时因为同项目组的人都有在忙的事情,于是整个项目就我一个人做了,从前端到后端到运维。我挺喜欢这种掌控一个项目的感觉。我特别感谢 Authing 给了我这个机会,让我放手去做。这个项目给予了我很大的成长空间,让我对 Authing 的业务流程以及技术有了更为全面、清晰的认识。 当时其实也踩了很多坑,但是很多年长的同事都给了我很多帮助和关爱。有一天晚上我印象很深,我一个人在清洗数据,那会已经凌晨两点了,然后长江一直陪着我,让我在遇到问题的时候可以及时获得解答,直到工作完成。一起加班的过程,让我感觉自己不是一个人,而是在一个温暖友爱的大家庭中,作为家庭的一份子。 2021 年整体来看,我对自己很满意,总体是一个积极向上的状态——找到了心仪的工作,有一群合作愉快的小伙伴,虽然工作压力有时候会很大,但是没有压力就没有动力,我相信以后会越来越好的。 新的一年,我希望继续好好干,然后涨工资。可能到了一定阶段,工作是一种享受,但是其实大部分人工作还是为了生活,在酸奶和面包的基础上,去追求诗和远方,比如私下里我也会做一些后期剪辑、写博客等等。 总之,我希望自己可以持续保持对技术的热情,正如黑塞在《彷徨少年时》所说的,对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。   小勇,产品   我加入 Authing 九个多月了,总体感觉可以用三个关键词形容——快、活力与机会。整个产品迭代非常快,这不断逼迫我去思考可以更好地实现,更好地满足用户需求,甚至去创造需求;整个团队比较年轻,大家都很有冲劲,沟通也很直接;总体业务处于快速增长期,会有一些新的机会涌现。 作为一个产品人,我经常会去思考怎样用产品实现未来的可能性,去实现自己的 big dream。 作为产品和技术有所争论是必然的。我会分析分歧产生的原因——到底是什么类型的分歧?是原则性还是细节性?我觉得如果是这类分歧,可能需要更长时间的沟通去明确大家分歧的根本原因,然后在坚持自己原则的情况下,达成一个妥协。对于细节性分歧,我觉得要看这个项目的紧急程度,抓大放小。 有时候,大家讨论甚至争论会比较激烈,此时我会不断深呼吸,提醒自己是来解决问题的,不是舌战群儒的。 2021 同样充满不确定性,我所能做的就是尽可能把手头的事情先做好,然后去适应新的变化。无迷茫不年轻。 今年我看了《觉醒年代》,看到里面李大钊、陈独秀、胡适等等在国家和民族危难时刻的选择。他们非常睿智,非常有毅力,即使面对很多困难也非常坚定,毫不退缩。我觉得这很伟大,给了我很多力量去克服人生中的种种不顺。同时,我会去思考这些伟人用了哪些方法与策略,成功在哪、失败在哪。总结出共性,去不断迭代我个人的思维体系。 要想获得智慧,就必须多思考、多提问;要想用方法去实现智慧,就需要在实践中不断探索,积累经验。 产品实现的过程伴随痛苦与喜悦,我首先要做的就是诚实面对自己,包括客观分析自己的现状,还有哪些方面需要改进,然后不断找到自己内心深处真正认可的理念,最终遇见更好的自己、更充实的人生。   蒸汽记忆是 Authing 奋斗的价值和意义。 以终为始,2022 年始于 2021 年。如果说 2021 年 Authing 从平凡之路中干出了些许不凡的事情,那么在 2022 年,我们将延续 2021 年的自律、创新与奋斗,继续为客户创造更安全、更有效、更实用的产品,客户的成功就是 Authing 的成功;开发者的认可也将驱动 Authing 持续在身份领域深耕,共同探索安全的未来。 以上就是 Authinger 的故事,一切的一切归集于“用小小的微光,点亮小小的希望”,这只是撷取了众多小故事中的几朵浪花,更精彩的故事,未完待续。 最后,真诚祝大家新年快乐!
Online
Quotation
authing
Add company WeChat
400-6197-031
Online
Phone