IdentityCredentialRequestOptions
IdentityCredentialRequestOptions
字典表示传递给 CredentialsContainer.get()
的 identity
选项的值所对应的对象。
当在 依赖方 (RP) 网站上调用 get()
时提供了 identity
选项,用户将看到一个 联合身份提供商 (IdP) 列表作为登录选项。一旦用户成功使用其中一个选项登录,get()
调用返回的 Promise 将会返回一个 IdentityCredential
对象。
实例属性
context
可选-
一个字符串,用于指定用户使用 FedCM 进行身份验证的上下文。浏览器使用此值来改变其 FedCM UI 中的文本,以便更好地适应上下文。可能的值有:
"continue"
-
适用于用户选择身份以继续流程的下一页,而该页面需要登录的情况。浏览器将显示类似于以下内容的文本字符串:
继续到 <page-origin> 与 <IdP>
"signin"
-
适用于用户使用在此来源上已使用过的 IdP 账户进行登录的一般情况。浏览器将显示类似于以下内容的文本字符串:
登录到 <page-origin> 与 <IdP>
"signup"
-
一种选项,适用于用户使用在此之前未使用过的新 IdP 账户登录此来源的情况。浏览器将显示类似于以下内容的文本字符串:
注册到 <page-origin> 与 <IdP>
"use"
-
适用于执行其他操作(例如验证付款)的情况。浏览器将显示类似于以下内容的文本字符串:
使用 <page-origin> 与 <IdP>
默认值为
"signin"
。 mode
可选-
一个字符串,用于指定用于登录流程的用户界面模式。可能的值有:
激活
-
登录流程必须通过用户操作(例如点击按钮)来启动。如果
mode
设置为active
,则providers
的长度只能是1
,否则get()
promise 将会拒绝。 passive
-
登录流程可以在没有直接用户交互的情况下启动。这是默认值。
有关这两种模式之间差异的更多信息,请参阅 Active versus passive mode。
providers
-
一个对象数组,指定用户应作为登录选项呈现的 IdP 的详细信息。这些对象可以包含以下属性:
configURL
-
一个字符串,指定 IdP 的配置文件 URL。有关更多信息,请参阅 Provide a config file。
clientId
-
一个字符串,指定 RP 客户端标识符。此信息由 IdP 在一个独立的、特定于 IdP 的过程中颁发给 RP。
domainHint
可选-
一个字符串,提示 RP 感兴趣的账户的域。如果提供,用户代理将仅在他们
domain_hints
数组中显示与域提示值匹配的账户。如果指定了"any"
,RP 将显示与至少一个域提示关联的任何账户。 fields
可选-
一个字符串数组,指定 RP 希望从 IdP 获取以用于登录过程的用户信息。确切的字符串因 IdP 而异,但通常类似于
"name"
、"email"
或"profile-picture-url"
。 loginHint
可选-
一个字符串,提供关于浏览器应向用户提供的登录账户选项的提示。这在用户已登录且网站要求重新验证身份时非常有用。否则,当用户拥有多个账户且不记得之前用于登录的账户时,重新验证过程可能会令人困惑。
loginHint
属性的值可以取自用户的先前登录,并与 IdP 在 IdP 的 账户列表端点 返回的用户信息数组中提供的login_hints
值进行匹配。 nonce
可选-
一个随机字符串,可以包含在其中,以确保响应是专门为此请求发出的,并防止 重放攻击。
params
可选-
一个自定义对象,用于指定 RP 需要发送给 IdP 的任何其他键值参数。这将因 IdP 而异,并且可能包含例如额外的权限请求,如
admin: true
或calendar: "readonly"
。
规范
规范 |
---|
Federated Credential Management API # dictdef-identitycredentialrequestoptions |
浏览器兼容性
加载中…