支持以下五种身份验证方法:
- OAuth 2.0
- 用户名/密码
- 用户名/令牌
- 密钥
- 无
您还必须在连接器中提供其他函数,具体取决于您当前所用的方法。
下表显示了根据连接器的身份验证类型,您必须定义的函数。
OAUTH2 | USER_PASS/USER_TOKEN/KEY | 无 | |
---|---|---|---|
getAuthType() |
必需 | 必需 | 必需 |
resetAuth() |
必需 | 必需 | |
isAuthValid() |
必需 | 必需 | |
authCallback() |
必需 | ||
get3PAuthorizationUrls() |
必需 | ||
setCredentials() |
必需 |
getAuthType()
此函数应返回连接器的身份验证类型。
OAUTH2
USER_PASS
USER_TOKEN
KEY
无
resetAuth()
此函数将清除为第三方服务用户存储的所有凭据。
OAUTH2
USER_PASS
USER_TOKEN
KEY
isAuthValid()
可调用此函数来确定对第三方服务进行的身份验证是否有效。如果身份验证有效,则对 getData()
和 getSchema()
的调用不应该因未经授权的访问而失败。如果身份验证无效,则用户可能会收到开始授权流程的通知。
OAUTH2
USER_PASS
USER_TOKEN
KEY
OAUTH2
添加和设置适用于 Apps 脚本的 OAuth2 库
按照适用于 Apps 脚本的 OAuth2 库的设置说明,将其添加到您的连接器项目。然后按照使用指南的第一步,在连接器项目中创建 OAuth2 服务。OAuth2 服务的名称可以是任何有效的函数名称,但请确保在代码中引用 OAuth2 服务时使用相同的名称。
例如,名为 exampleService
的 OAuth2 服务:
authCallback()
可调用此函数来完成 OAuth 2.0 流程。来自第三方身份验证服务的回调响应作为参数提供,并且应由此函数处理。
使用适用于 Apps 脚本的 OAuth2 库处理 OAuth 2.0 回调的示例:
get3PAuthorizationUrls()
可调用此函数来获取针对第三方服务启动身份验证流程所需的网址。如果 isAuthValid
返回 false
,则返回的网址将以按钮或链接的形式向用户显示,以便他们可以向第三方服务授予访问权限。请参阅 get3PAuthorizationUrls() 参考。
使用适用于 Apps 脚本的 OAuth2 库返回授权网址的示例:
USER_PASS
、USER_TOKEN
和 KEY
只有 USER_PASS
、USER_TOKEN
和 KEY
身份验证流程需要以下函数。
setCredentials()
用户在社区连接器配置页面上输入其凭据信息后,系统将调用 setCredentials
。您应该使用属性服务,以便通过 UserProperties
按用户保存凭据。