跳过主要内容
@capgo/capacitor-intune Auth & 安全性 开源

Intune Capacitor 插件

Microsoft Intune MAM, app protection policy, app config, and MSAL authentication for Capacitor

安装

bun add @capgo/capacitor-intune bunx cap sync
npm、pnpm 或 yarn
  • npm install @capgo/capacitor-intune
  • pnpm add @capgo/capacitor-intune
  • yarn add @capgo/capacitor-intune

指南

如何在 Capacitor 中使用 Intune

使用@capgo/capacitor-intune

Capacitor插件支持Microsoft Intune MAM注册、应用保护策略、应用配置和MSAL身份验证

安装

bun add @capgo/capacitor-intune
bunx cap sync

bunx cap sync 将插件的本机code复制到您的本机项目中。每次升级插件后都要再次运行它。

导入

import { IntuneMAM } from '@capgo/capacitor-intune';

API概览

方法 描述
acquireToken 呈现Microsoft登录流程并返回访问令牌及帐户元数据
acquireTokenSilent 从MSAL缓存中获取之前登录用户的令牌
registerAndEnrollAccount 将之前已验证的帐户注册到Intune并开始注册
loginAndEnrollAccount 要求Intune在未先请求应用令牌的情况下对用户进行身份验证和注册
enrolledAccount 获取当前已注册的 Intune 帐户,如果有的话。
deRegisterAndUnenrollAccount 从 Intune 中注销帐户并触发选择性擦除时适用。
logoutOfAccount 在未注销 Intune 帐户的情况下,使用 MSAL 登出用户。
appConfig 获取远程 Intune 应用程序配置文件的管理帐户。
getPolicy 获取当前有效的 Intune 应用程序保护策略的管理帐户。
groupName 当存在时,解析应用程序配置值的便捷工具。 GroupName 返回本插件中捆绑的原生 Intune 和 MSAL 版本。
sdkVersion 返回本地 Intune 和 MSAL SDK 版本,通过此插件打包。
displayDiagnosticConsole 示例

Examples

acquireToken()

从 MSAL 缓存中获取之前登录用户的令牌。

import { IntuneMAM } from '@capgo/capacitor-intune';

const result = await IntuneMAM.acquireToken({ scopes: ['openid'] });
// The result holds sensitive values: use it without logging it.

acquireTokenSilent()

Intune 和 MSAL 原生版本

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()

要求 Intune 进行身份验证并在未请求应用程序令牌之前为用户注册。

import { IntuneMAM } from '@capgo/capacitor-intune';

await IntuneMAM.loginAndEnrollAccount();

enrolledAccount()

context:Capgo 营销网站。角色:按钮或链接标签。见于:组件 AskAiSection.astro。消息键 `ask_ai_button` (Ask Ai Button)。

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' });

从 Intune 中注销帐户并在适用时触发选择性擦除。 上表列出了 12 个核心方法。监听器和版本辅助器,以及每个方法的完整契约,均在 `GitHub` 仓库中文档化。.

监听事件

addListener 返回一个句柄。调用 handle.remove() 当屏幕卸载时,或者 IntuneMAM.removeAllListeners() 清除所有监听器。

完整参考

继续使用@capgo/capacitor-intune

如果您正在使用 使用@capgo/capacitor-intune 以规划身份验证和帐户流程,连接它与 @capgo/capacitor-intune 以获取@capgo/capacitor-intune中的实现细节 开始 获取@__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-social-login中的实现细节 @capgo/capacitor-社会登录 获取@capgo/capacitor-social-login中的实现细节 @capgo/capacitor-passkey 为 @capgo/capacitor-passkey 的实现细节 @capgo/capacitor-native-biometric 为 @capgo/capacitor-native-biometric 的实现细节

常见问题

Intune 插件常见问题

如何在 Capacitor 应用中安装 Intune 插件?

运行 "bun add @capgo/capacitor-intune" (或 "npm install @capgo/capacitor-intune"), 然后运行 "bunx cap sync" 以便 iOS 和 Android 项目捕获 native code。从 "@capgo/capacitor-intune" 导入到您的应用 code。

是否@capgo/capacitor-intune与React、Vue和Angular兼容?

是。Intune 是一个 Capacitor 包,因此它与任何运行在 Capacitor 内的 Web 框架兼容,包括 Ionic、React、Vue、Angular、Svelte 和普通 JavaScript。

哪个 Capacitor 版本支持 @capgo/capacitor-intune?

Capgo 插件遵循 Capacitor 的主要版本:使用与您的 Capacitor 主要版本匹配的插件主要版本(例如插件 v8 与 Capacitor 8)。在 GitHub README 中的兼容性表格中列出了维护的版本。

是否免费且开源的 @capgo/capacitor-intune?

是。源代码 code 公开在 GitHub 上,https://github.com/Cap-go/capacitor-intune/,并且包是免费从 npm 安装的。欢迎 bug 报告和 pull 请求。

我能否在不经过 App Store 审核的情况下更新使用 Intune 的 code?

code 和 Capgo 的本地化更新需要重新构建 App Store。随后,使用 Capgo 实时更新的 JavaScript、HTML 和 CSS 变更可以立即部署。

不必等待应用程序审查就可以将Intune更改推送

一旦插件在您的商店构建中,Capgo即刻将JavaScript、HTML和CSS更改推送给用户。

开始使用Capgo