Directory API

在使用 users.get 或 users.list 之类的有 viewType 参数选项的 API 时。

若将 viewType 参数设置为 admin_view,返回所有信息,字段信息非常详细。

若将 viewType 参数设置为 domain_public,根据原文描述,将不会返回一些关键性的字段。

但是,domain_public 比 admin_view 不仅仅是少显示了一些字段数据...竟然部分数据直接不返回...或不允许查询...

例如,list 则不会返回被禁用的用户,get 获取被禁用的用户将报 HttpError 404 错误。

即 domain_public 将导致无法获取被禁用的 users。
这与 Google API 中的 viewType 的解释,感觉并不匹配。

viewType 原文

Retrieve a user as a non-administrator

While user accounts can only be modified by administrators, any user on the domain can read user profiles. 
A non-admin user can make a users.get or users.
list request with the viewType parameter equal to domain_public to retrieve a user's public profile. 
The scope https://www.googleapis.com/auth/admin.directory.user.readonly is ideal for this use case.

The domain_public view permits a non-admin user to access a standard set of core fields. 
For a custom field, you can choose whether it should be public or private when defining the schema.

viewType 翻译

以非管理员身份检索用户

虽然用户帐户只能由管理员修改,但域中的任何用户都可以读取用户配置文件。
非管理员用户可以使用,参数 viewType 等于 domain_public 的 users.get 或 users.list 请求,来检索用户的公共配置文件。

该 auth 范围非常适合此用例:

https://www.googleapis.com/auth/admin.directory.user.readonly

该 domain_public 视图允许非管理员用户访问一组标准的核心字段。
对于自定义字段,您可以在定义架构时选择它应该是公共的还是私有的。

最后修改:2021 年 08 月 16 日 09 : 07 PM
如果觉得文章帮助了您,您可以随意赞赏。