我有一个与AWS对话的后端服务,以及一个获取AWS信誉的自动化工具。证书获取器已启用MFA(不是我的选择),但是我不想键入或复制代码。相反,我想编写一些可以以编程方式生成或获取TOTP软令牌的代码,而无需发送短信或呼叫任何人。所以今天我们的工作流程是这样的:
call cred getter from cli => open authy app for totp code => paste into cli
但是我希望它看起来像这样:
call my custom cli => it makes a totp code and passes it to cred getter for me
有没有办法卷曲Authy或Twilio以编程方式获取这些软令牌之一?
似乎与此问题相关的是各种圆形的文档迷宫,但我无法打破这个圈子。
-----> Twilio has a page describing TOTP:
| | https://www.twilio.com/authy/features/totp
| |
| | It links to a page describing OTP API access:
| | https://www.twilio.com/authy/api#softtoken
| |
| | That explains you can "build your own SDK-supported mobile authentication application.":
| | https://www.twilio.com/docs/authy/api/one-time-passwords#other-authenticator-apps
^ v
| |
| | Which links to the quick start page:
| | https://www.twilio.com/docs/authy/twilioauth-sdk/quickstart
| |
<----- Which has a link about TOTP, which takes you back to the beginning
我看到本地移动SDK可以生成TOTP令牌: https://www.twilio.com/docs/authy/twilioauth-sdk/quick-reference#time-based-one-time-passwords-totp
但是我想在笔记本电脑(或云功能或某个地方)上生成令牌。 Authy Desktop客户端正在执行此操作,因此我知道必须有一种方法。但是我不知道公开露了什么。
这个问题是相关的:how to get Google or Authy OTP by API
但是唯一的答案取决于twilio通话和文本:how to get Google or Authy OTP by API,因此代价过高
答案 0 :(得分:0)
这里是Twilio开发人员的传播者。
根据您所说的话,您的凭证获取器会为您提供一个QR码,然后您可以使用该QR码配置Authy以生成OTP码。
QR码以以下格式编码URL:
otpauth://TYPE/LABEL?PARAMETERS
例如:
otpauth://totp/Example:alice@google.com?secret=JBSWY3DPEHPK3PXP&issuer=Example
该类型可能是“ totp”,如示例所示,标签将指向您进行身份验证的应用程序。重要的部分是参数中的秘密。秘密是一个基数为32的编码密钥,您可以使用该密钥使用TOTP algorithm生成TOTP代码。您可能会首选语言来实现该算法。
找到秘密,您就可以生成代码。