c# - 如何从 Google Auth (.Net 5) 获取组织外部 ID 声明
问题描述
我正在为我的 Blazor 应用程序实施 Google 身份验证。我已经达到了用户可以登录并且我得到一些基本声明的程度,但我真的需要获得Organization External ID
我们分配给每个组织电子邮件帐户的声明,我不知道这是否可能。我找不到任何其他 SO 信息。我应该设置一个选项来请求所有索赔吗?如果没有,我应该如何在用户登录时检索有关用户的其他信息?
.AddGoogle(o =>
{
o.ClientId = options.GoogleClientId;
o.ClientSecret = options.GoogleClientSecret;
o.Events.OnRedirectToAuthorizationEndpoint = ctx =>
{
ctx.Response.Redirect(ctx.RedirectUri + "&hd=" + System.Net.WebUtility.UrlEncode("<my-domain>"));
return Task.CompletedTask;
};
o.Events.OnCreatingTicket = ctx =>
{
List<AuthenticationToken> tokens = ctx.Properties.GetTokens().ToList();
var u = ctx.User; <--- This just has basic Email, id, username, etc. claims.
}
});
解决方案
推荐阅读
- android - 三星设备上的本机崩溃高峰
- python - Odoo:检查是否安装了模块
- f# - 如何在我自己的列表定义中使用符号
- json - 可迭代 json 数据颤动
- python - 从 melspectrogram 重建音频有一些 librosa 剪辑
- jquery - 尝试通过单击现有图像来更新图像时,单击事件不起作用
- python - 使用 pip 时出错,
- php - 解析错误:语法错误,第 56 行 C:\xampp\htdocs\Clinic\fusioncharts.php 中的意外 '$doughnutChart' (T_VARIABLE)
- ios - 在 SwiftUI 中将 @FetchRequest 与 Core Data 一起使用时修改 nil 排序行为
- ruby - 如何使具有默认值的对象不传递给类?