跳过内容

开始使用

  1. 安装包

    终端窗口
    bun add @capgo/capacitor-intune
  2. 同步本机项目

    终端窗口
    bunx cap sync
  3. 完成本机 Intune 设置 遵循专门的 iOS 设置Android 设置 pages. Intune 还需要主机应用程序的本机配置来支持brokered身份验证、重定向URI、清单、特权和MSAL配置。

  • Capacitor 8+
  • Android with Intune Android SDK 12.0.3
  • iOS with Intune iOS SDK 21.5.1
  • iOS 部署目标 17.0+

Ionic的Intune文档目前指出,使用Xcode 26构建的应用程序的截止日期为2026年1月19日,需要Intune iOS SDK 21.1.0+。此插件已经使用 21.5.1.

import { IntuneMAM } from '@capgo/capacitor-intune';
await IntuneMAM.addListener('appConfigChange', (result) => {
console.log('App config changed', result.accountId);
});
await IntuneMAM.addListener('policyChange', (result) => {
console.log('Policy changed', result.accountId);
});
const auth = await IntuneMAM.acquireToken({
scopes: ['https://graph.microsoft.com/.default'],
loginHint: 'alex@example.com',
});
await IntuneMAM.registerAndEnrollAccount({
accountId: auth.accountId,
});
const appConfig = await IntuneMAM.appConfig({
accountId: auth.accountId,
});
const policy = await IntuneMAM.getPolicy({
accountId: auth.accountId,
});
console.log({ auth, appConfig, policy });

常见流程

常见流程

交互式登录和注册

交互式登录和注册
const auth = await IntuneMAM.acquireToken({
scopes: ['https://graph.microsoft.com/.default'],
});
await IntuneMAM.registerAndEnrollAccount({
accountId: auth.accountId,
});

静默令牌刷新

静默令牌刷新
const token = await IntuneMAM.acquireTokenSilent({
accountId: 'AAD_OBJECT_ID',
scopes: ['https://graph.microsoft.com/.default'],
forceRefresh: true,
});

查看当前已注册帐户

查看当前已注册帐户
const user = await IntuneMAM.enrolledAccount();
await IntuneMAM.logoutOfAccount({ accountId: 'AAD_OBJECT_ID' });
await IntuneMAM.deRegisterAndUnenrollAccount({ accountId: 'AAD_OBJECT_ID' });
  • acquireToken(options): 使用 Microsoft 登录并返回令牌及帐户元数据。
  • acquireTokenSilent(options): 读取现有帐户的缓存令牌。
  • registerAndEnrollAccount(options): 将 MSAL 帐户注册到 Intune 并触发注册。
  • loginAndEnrollAccount(): 让 Intune 驱动登录和注册流程。
  • appConfig(user): 读取帐户的 Intune 应用程序配置值。
  • getPolicy(user): 读取帐户的当前 Intune 应用程序保护策略。
  • groupName(user): 读取公共 GroupName config helper 值当存在时。
  • sdkVersion(): 检查打包的 Intune 和 MSAL 版本。
  • Web 不受支持。
  • iOS 和 Android 都需要在 native 项目配置中进行额外的配置, cap sync.
  • 您的 Azure 注册、Intune 政策分配、重定向 URI 和权限仍然是应用特有的。