指南
如何在 Capacitor 中使用 Persona
使用 @capgo/capacitor-intune
用于 Microsoft Intune MAM 注册、应用保护策略、应用配置及 MSAL 身份验证的 Capacitor 插件。
安装
bun add @capgo/capacitor-intune
bunx cap sync
bunx cap sync 将插件的原生 code 复制到你的原生项目中。每次升级插件后都要重新运行。
导入
import { IntuneMAM } from '@capgo/capacitor-intune';
API 概览
| 方法 | 描述 |
|---|---|
acquireToken |
展示 Microsoft 登录流程,并返回 access token 及账户元数据。 |
acquireTokenSilent |
为之前登录过的用户从 MSAL 缓存中获取 token。 |
registerAndEnrollAccount |
将之前已认证的账户注册到 Intune 并启动注册流程。 |
loginAndEnrollAccount |
无需先请求 app token,让 Intune 认证并注册用户 |
enrolledAccount |
返回当前已注册的 Intune 账户(如果存在)。 |
deRegisterAndUnenrollAccount |
从 Intune 取消注册账户,并在适用时触发选择性擦除。 |
logoutOfAccount |
让用户退出 MSAL 登录,但不取消 Intune 账户注册。 |
appConfig |
获取受管账户的远程 Intune 应用配置。 |
getPolicy |
获取受管账户当前生效的 Intune 应用保护策略。 |
groupName |
便捷辅助函数,用于解析 GroupName 存在时的应用配置值。 |
sdkVersion |
返回此插件绑定的原生 Intune 和 MSAL SDK 版本。 |
displayDiagnosticConsole |
显示原生 Intune 诊断 UI。 |
示例
acquireToken()
展示 Microsoft 登录流程,并返回 access token 及账户元数据。
import { IntuneMAM } from '@capgo/capacitor-intune';
const result = await IntuneMAM.acquireToken({ scopes: ['openid'] });
// The result holds sensitive values: use it without logging it.
acquireTokenSilent()
为之前登录过的用户从 MSAL 缓存中获取 token。
import { IntuneMAM } from '@capgo/capacitor-intune';
const result = await IntuneMAM.acquireTokenSilent({
scopes: ['openid'],
accountId: 'acquireToken',
});
// The result holds sensitive values: use it without logging it.
registerAndEnrollAccount()
将之前已认证的账户注册到 Intune 并启动注册流程。
import { IntuneMAM } from '@capgo/capacitor-intune';
await IntuneMAM.registerAndEnrollAccount({ accountId: 'account-id-123' });
loginAndEnrollAccount()
无需先请求 app token,让 Intune 认证并注册用户
import { IntuneMAM } from '@capgo/capacitor-intune';
await IntuneMAM.loginAndEnrollAccount();
enrolledAccount()
返回当前已注册的 Intune 账户(如果存在)。
import { IntuneMAM } from '@capgo/capacitor-intune';
const result = await IntuneMAM.enrolledAccount();
console.log(result);
deRegisterAndUnenrollAccount()
从 Intune 取消注册账户,并在适用时触发选择性擦除。
import { IntuneMAM } from '@capgo/capacitor-intune';
await IntuneMAM.deRegisterAndUnenrollAccount({ accountId: 'account-id-123' });
上表列出了 12 个核心方法。监听器、版本辅助方法以及每个方法的完整接口约定,详见 GitHub 仓库.
监听事件
addListener 会返回一个句柄。调用 handle.remove() 在屏幕卸载时,或者调用 IntuneMAM.removeAllListeners() 以清除所有监听器。
完整参考文档
继续阅读:使用 @capgo/capacitor-intune
如果你正在使用 使用 @capgo/capacitor-intune 用来规划身份验证和账户流程,并将它与 @capgo/capacitor-intune 关于 @capgo/capacitor-intune 的实现细节, 快速入门 有关“入门指南”中的实现细节, @capgo/capacitor-social-login 在 @capgo/capacitor-social-login 中查看实现细节, @capgo/capacitor-passkey 关于 @capgo/capacitor-passkey 的实现细节,以及 @capgo/capacitor-native-biometric 有关 @capgo/capacitor-native-biometric. 的实现细节