You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Client ID程序化识别Google Workspace已访问应用的名称与URL

可行方案:通过Google Workspace Admin API实现程序化映射

前置条件

  • 拥有Google Workspace超级管理员权限,或被授予admin.directory.application.readonly权限
  • 在Google Cloud Console创建项目,启用Admin SDK Directory API
  • 创建服务账号,下载JSON密钥并启用域范围委派,授予对应API权限

核心实现逻辑

使用Admin SDK Directory API的customer.applications.list接口,拉取所有已访问/授权的应用列表,再与你的Client ID列表匹配,提取应用名称和URL。接口返回字段对应关系:

  • 应用名称 → displayName
  • Client ID → clientId
  • 应用URL → homepageUrl(对应管理页面的App URL,部分应用可能无此字段)

Python代码示例

from google.oauth2 import service_account
from googleapiclient.discovery import build

# 配置参数
SCOPES = ['https://www.googleapis.com/auth/admin.directory.application.readonly']
SERVICE_ACCOUNT_KEY_PATH = 'your-service-account-key.json'
ADMIN_EMAIL = 'admin@your-domain.com'  # 替换为Workspace管理员邮箱
TARGET_CLIENT_IDS = [
    '532352704633-6pkces9iboppp465idnovkcqtlsa8j7t.apps.googleusercontent.com',
    # 其他Client ID...
]

# 初始化认证
credentials = service_account.Credentials.from_service_account_file(
    SERVICE_ACCOUNT_KEY_PATH, scopes=SCOPES
)
delegated_creds = credentials.with_subject(ADMIN_EMAIL)

# 调用API获取应用列表
service = build('admin', 'directory_v1', credentials=delegated_creds)
apps_response = service.customer().applications().list(customer='my_customer').execute()
apps = apps_response.get('applications', [])

# 构建Client ID到应用信息的映射
client_id_mapping = {}
for app in apps:
    if app['clientId'] in TARGET_CLIENT_IDS:
        client_id_mapping[app['clientId']] = {
            'app_name': app['displayName'],
            'app_url': app.get('homepageUrl', '无可用URL')
        }

# 输出结果(可直接用于报表生成)
for client_id, info in client_id_mapping.items():
    print(f"Client ID: {client_id}")
    print(f"应用名称: {info['app_name']}")
    print(f"应用URL: {info['app_url']}\n")

注意事项

  • 若部分应用未返回homepageUrl,原因是该应用未在Google应用目录中完善信息,与管理页面显示逻辑一致
  • 支持使用其他语言的Google API客户端库,或直接发送HTTP请求调用API
  • 必须确保服务账号的域范围委派配置正确,否则会触发权限不足错误

内容的提问来源于stack exchange,提问作者Rory

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 22:46:08