0

除了空字符串(“”)到 Xamarin.Auth 中的 OAuth2Authenticator 构造函数之外,我可以将哪些值传递给范围?

有关 OAuth2Authenticator 使用的更多信息,请参阅以下链接 https://components.xamarin.com/gettingstarted/xamarin.auth

4

2 回答 2

0

好吧,这取决于您使用的身份验证提供程序。让我详细解释一下,例如,

  1. 在这种情况下,您想通过他们的 gmail 帐户对用户进行身份验证,您可以使用以下范围

有关使用 Google 进行 OAuth 的更多信息,您可以参考https://developers.google.com/+/web/api/rest/oauth

  1. 如果您想使用 Micrsoft 作为第三方身份验证提供程序对用户进行身份验证 https://graph.microsoft.io/en-us/docs/authorization/permission_scopes ,可以参考以下链接获取范围值

同样对于其他提供商,请查看相应的网站文档。

希望这可以帮助。

于 2016-12-26T15:28:38.763 回答
0

OAuth 2.0 范围通常用于定义您请求的访问(权限)类型。因此,如果授予访问令牌,则仅将那些范围分配给该令牌,如果您需要将所需范围/权限的类型从“read_only”范围更改为“readwrite”范围,则必须请求新令牌使用新的范围。

范围取决于您尝试访问的服务并将由该服务定义,它们是常用的范围,例如“read_only”,但同样,服务定义了它们是什么。

即,要同时请求用户的 Microsoft OneDrive 帐户的读写权限和脱机访问权限,您将要求此范围:

"onedrive.readwrite wl.offline_access"

要访问 Google 日历,您可以通过以下范围请求仅查看访问权限(只读):

"https://www.googleapis.com/auth/calendar.readonly"

要更改/管理用户的日历,您需要:

"https://www.googleapis.com/auth/calendar"

当同时请求多个范围时,您可能需要用空格或逗号或其他一些服务定义的分隔符来分隔每个范围。虽然空格分隔符很常见,但它也是由您正在连接的服务定义的。

参考:访问令牌范围/https://www.rfc-editor.org/rfc/rfc6749#page-23

于 2016-12-26T15:36:32.443 回答