.NET MAUI — Authentication Skill(认证技能)
用途
该技能为智能体提供在 .NET MAUI 应用中实现认证的安全、跨平台模式。涵盖 OAuth2、OpenID Connect、JWT 处理、安全存储、令牌刷新,以及使用 WebAuthenticator 的平台专属登录流程。
其目标是确保所有认证相关代码安全、可维护,并符合现代安全实践。
核心原则
- 安全优先 绝不在 Preferences 或明文中存储敏感数据。始终使用 SecureStorage。
- 使用平台原生认证流程
- iOS/macOS:ASWebAuthenticationSession
- Android:Chrome Custom Tabs
- Windows:系统浏览器
- 令牌生命周期管理 始终实现刷新令牌逻辑与过期检查。
- 抽象化 将认证逻辑封装在服务与接口中,保持 UI 简洁。
- 最小权限 仅申请应用所需的作用域。
支持的认证模式
- OAuth2 授权码流程(推荐)
- OpenID Connect(OIDC)
- 基于 JWT 的 API
- 自定义后端认证
- 社交登录(Google、Microsoft、Apple)
推荐架构
Services
└─ Auth
├─ Interfaces
└─ Models
智能体使用指南
- 在生成认证代码时,始终:
- 使用
WebAuthenticator.Default.AuthenticateAsync进行登录。 - 将令牌存储在 SecureStorage 中。
- 实现
IAuthService与AuthService。 - 提供
IsLoggedIn、LoginAsync、LogoutAsync和RefreshTokenAsync。
- 使用
- 当被要求“添加登录”时,生成:
- 一个 LoginPage + LoginViewModel
- AuthService + 接口
- 令牌模型
- SecureStorage 辅助工具
- 当被要求“保护 API 调用”时,应用:
- Bearer 令牌注入
- 过期检查
- 自动刷新
不在范围内
- UI 样式(由
maui-ui-best-practices覆盖) - 后端实现细节
- 部署配置
(收费、价格、平台范围、效果等信息资料中暂未提供。)