开发与工程 ✓ Microsoft · 官方 azure-communication-servicesjava-sdktoken-credentialstoken-refreshuser-identifiersentra-id

Azure 通信服务 Java 身份认证

为 Azure Communication Services Java 应用提供令牌认证、刷新与通信用户标识处理指导。

FollowSkills 评估 · FSRS-2.0
不推荐
51/ 100 五分制 2.6 / 5
信任安全16 / 25 · 3.2/5

文档明确要求不记录完整令牌、处理刷新失败并关闭凭据,且主要示例使用占位符;但令牌端点示例通过GET查询参数传递userId,未说明最小权限、用户确认、数据流边界、端点安全、依赖安全或恢复机制,因此扣分。

可靠稳定8 / 20 · 2.0/5

核心凭据、标识符和刷新模式结构基本一致,并提到重试和失败处理;但存在未定义方法、同步阻塞异步示例、缺少版本兼容性与技能专属测试,静态证据不足,按上限保守扣分。

适用触发9 / 15 · 3.0/5

触发短语、Java语言和ACS认证场景清晰;但未充分声明不适用场景、输入输出边界、API版本约束或异常输入行为,也未提供中文支持和中国大陆网络可达性说明,因此扣分。

规范维护8 / 15 · 2.7/5

具备YAML元数据、MIT许可、版本号、安装说明、分层示例和最佳实践;但缺少变更日志、明确维护责任与更新路径、FAQ、兼容矩阵和完整依赖说明,因此扣分。

有效结果6 / 15 · 2.0/5

内容覆盖静态令牌、刷新、Entra ID、标识符解析、缓存和释放,能为常见ACS Java编码任务提供直接参考;但多个示例依赖未展示的服务或方法,部分实现存在安全和工程完整性风险,未执行验证,故不超过静态上限并扣分。

证据核验4 / 10 · 2.0/5

技能文件和引用示例可审计,仓库提供通用CI与测试基础设施;但没有该技能的专属测试、真实执行结果或第三方交叉证据,结论主要基于静态文档,因此扣分。

证据充分度: 评估于 2026年7月20日 审查版本 9ccaf7c3704a
使用前请注意
  • 不要将完整令牌写入日志或通过不安全的查询参数传输;应由服务端安全获取和刷新令牌。
  • 在采用示例前核对azure-communication-common、azure-identity及相关ACS客户端的实际API和版本兼容性。
  • 补充令牌刷新失败、无效标识符、端点配置错误和多租户隔离的可诊断处理与测试。
  • 核心依赖Azure服务端点;文档未说明中国大陆网络可达性、区域限制或替代方案。
查看完整评分方法 →

它能做什么 & 适用场景

此技能面向使用 Azure Communication Services Java SDK 的开发者,集中介绍共享认证工具和通信标识数据结构。它涵盖静态用户令牌、主动令牌刷新、异步令牌获取和 Entra ID 认证。内容还覆盖 ACS 用户、电话号码、Teams 用户及未知类型标识的创建、解析和类型判断。对于需要 Chat 或 Calling 等 ACS 服务认证基础的项目,它适合作为编码代理的参考;它不提供完整的具体业务服务 SDK 指南。

指导代理添加 Maven 依赖,创建 CommunicationTokenCredential,配置短期静态令牌或长期客户端的主动刷新,使用 EntraCommunicationTokenCredentialOptions 配置 Entra ID,并创建、解析、检查和读取多种 ACS 通信标识。它还展示令牌同步或异步访问、凭据关闭、云环境设置、环境变量和令牌安全实践。

  1. 使用 Java 构建 ACS Chat 或 Calling 客户端,并需要将用户访问令牌接入客户端凭据的开发者。
  2. 构建长期运行的 ACS 客户端,需要在令牌过期前通过回调主动刷新令牌的团队。
  3. 需要在 ACS 用户、PSTN 电话号码、Teams 用户和未知标识之间解析或分派通信对象的开发者。
  4. 为 Teams Phone Extensibility 配置 Entra ID、资源端点和作用域的 Java 开发者。

优缺点一览

优点
  • 覆盖 ACS 共享认证和标识符的主要 Java 类型。
  • 同时提供静态令牌、主动刷新、异步获取和 Entra ID 示例。
  • 包含令牌安全、凭据释放和具体标识符类型使用建议。
局限
  • 只聚焦共享认证工具和标识符,不涵盖 Chat、Calling 或 SMS 服务的完整 API。
  • 示例中的令牌服务、客户端对象和 `fetchNewTokenFromServer()` 等应用代码需要自行实现。
  • 源材料没有提供该单项技能的独立测试结果或平台兼容性验证。

如何安装

运行 npx skills add microsoft/skills,在向导中选择此技能。也可以克隆仓库后,将 .github/plugins/azure-sdk-java/skills/azure-communication-common-java/ 复制到所选 Agent 的技能目录;README 未说明该具体技能在每种 Agent 中的最终安装路径。项目依赖为 com.azure:azure-communication-common:1.4.0

如何使用

在编码代理中提出例如:为 Java Azure Communication Services Chat 客户端配置 CommunicationTokenCredential,并使用主动令牌刷新。 代理可依据技能中的示例生成静态令牌、刷新回调、标识符解析、令牌访问或凭据关闭代码。

常见问题

这个技能是否包含 Azure Communication Services 的完整功能?
不包含。它主要覆盖共享认证工具、令牌刷新和通信标识符;Chat、Calling 等服务的完整 API 需要其他对应技能或资料。
长期运行的客户端应该使用哪种令牌方式?
技能建议使用 `CommunicationTokenRefreshOptions`,设置 `setRefreshProactively(true)`,并提供令牌刷新回调。
使用此技能是否需要网络访问?
实际使用通常需要访问 ACS 端点,并可能调用服务器获取新令牌;技能示例明确使用资源端点和令牌刷新服务。
是否应该记录完整的访问令牌?
不应该。技能明确建议不要记录或暴露完整令牌。

同仓库的其他 Skills

均来自 microsoft/agent-skills

开发与工程 ✓ Microsoft · 官方

Azure Identity Python 认证技能

为 Python Azure 应用提供基于 Microsoft Entra ID 的可复用身份认证指导。

开发与工程 ✓ Microsoft · 官方

Azure Event Hubs Java 开发技能

帮助 Java 开发者构建高吞吐、可 checkpoint 的 Azure 事件流应用。

开发与工程 ✓ Microsoft · 官方

Azure Tables Python 技能

帮助 Python 开发者使用 Azure Tables 完成安全认证、实体管理、查询与批量事务操作。

开发与工程 ✓ Microsoft · 官方

Azure Identity TypeScript

为 TypeScript Azure 应用配置安全、可切换的 Microsoft Entra ID 身份验证。

自动化与运维 ✓ Microsoft · 官方

Azure 应用可靠性顾问

评估并提升 Azure Functions 与 App Service 的可靠性。

开发与工程 ✓ Microsoft · 官方

Azure 云架构师

帮助编码代理按照 Azure 架构中心最佳实践设计和审查生产级云系统。

开发与工程 ✓ Microsoft · 官方

Azure AI 文本分析 Python 技能

为 Python 开发者提供 Azure 文本分析与自然语言处理集成指导。

自动化与运维 ✓ Microsoft · 官方

Azure 资源架构可视化器

分析 Azure 资源组及其依赖关系,生成详细的 Mermaid 架构图。

开发与工程 ✓ Microsoft · 官方

Azure Maps .NET 开发技能

为 .NET 应用提供地理搜索、路线、地图、定位与天气开发指导。

开发与工程 ✓ Microsoft · 官方

Azure AI Vision 图像分析技能

为 Python 编码代理提供 Azure AI Vision 图像理解实现指南。

开发与工程 ✓ Microsoft · 官方

Azure Blob Storage Python 技能

帮助 Python 开发者安全高效地操作 Azure Blob Storage。

开发与工程 ✓ Microsoft · 官方

Azure Queue Storage Python 技能

帮助编码代理使用 Python 构建安全、可靠的 Azure Queue Storage 异步消息处理。

自动化与运维 ✓ Microsoft · 官方

Azure AI 网关治理

用 Azure API Management 统一治理 AI 模型、MCP 工具和智能体流量。

自动化与运维 ✓ Microsoft · 官方

AKS Automatic 就绪评估

评估 Kubernetes 工作负载能否迁移到 AKS Automatic,并定位兼容性阻塞项。

开发与工程 ✓ Microsoft · 官方

Azure Cosmos DB .NET 资源管理技能

用 .NET 通过 ARM 部署和管理 Azure Cosmos DB 资源。

开发与工程 ✓ Microsoft · 官方

Azure Playwright 工作区管理技能

用 .NET 通过 Azure Resource Manager 配置和管理 Microsoft Playwright Testing 工作区。

开发与工程 ✓ Microsoft · 官方

Azure Cosmos DB Python 技能

帮助 Python 开发者可靠地构建和操作 Azure Cosmos DB NoSQL 应用。

开发与工程 ✓ Microsoft · 官方

Azure Key Vault Python SDK 技能

帮助 Python 编码代理安全管理 Azure Key Vault 中的机密、加密密钥和证书。

开发与工程 ✓ Microsoft · 官方

Azure API Management Python 技能

帮助编码代理使用 Python SDK 管理 Azure API Management 的服务、API、产品、订阅与策略。

开发与工程 ✓ Microsoft · 官方

Azure Monitor 查询 Python 技能

帮助 Python 开发者查询 Azure Monitor 日志与指标。

相关 Skills