@microsoft/teamsfx-core 2.0.6-alpha.e5db52f29.0 → 2.0.6-alpha.e662467a1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/common/constants.d.ts +3 -2
- package/build/common/constants.d.ts.map +1 -1
- package/build/common/constants.js +3 -2
- package/build/common/constants.js.map +1 -1
- package/build/common/deps-checker/internal/funcToolChecker.d.ts +1 -1
- package/build/common/deps-checker/internal/funcToolChecker.d.ts.map +1 -1
- package/build/common/deps-checker/internal/funcToolChecker.js.map +1 -1
- package/build/common/deps-checker/internal/testToolChecker.d.ts.map +1 -1
- package/build/common/deps-checker/internal/testToolChecker.js +9 -3
- package/build/common/deps-checker/internal/testToolChecker.js.map +1 -1
- package/build/common/featureFlags.d.ts +3 -4
- package/build/common/featureFlags.d.ts.map +1 -1
- package/build/common/featureFlags.js +10 -15
- package/build/common/featureFlags.js.map +1 -1
- package/build/common/local/localCertificateManager.d.ts +5 -4
- package/build/common/local/localCertificateManager.d.ts.map +1 -1
- package/build/common/local/localCertificateManager.js +9 -2
- package/build/common/local/localCertificateManager.js.map +1 -1
- package/build/common/m365/packageService.d.ts.map +1 -1
- package/build/common/m365/packageService.js +2 -1
- package/build/common/m365/packageService.js.map +1 -1
- package/build/common/samples.d.ts +8 -4
- package/build/common/samples.d.ts.map +1 -1
- package/build/common/samples.js +25 -26
- package/build/common/samples.js.map +1 -1
- package/build/common/spec-parser/adaptiveCardGenerator.d.ts.map +1 -1
- package/build/common/spec-parser/adaptiveCardGenerator.js +2 -4
- package/build/common/spec-parser/adaptiveCardGenerator.js.map +1 -1
- package/build/common/spec-parser/constants.d.ts +8 -0
- package/build/common/spec-parser/constants.d.ts.map +1 -1
- package/build/common/spec-parser/constants.js +8 -0
- package/build/common/spec-parser/constants.js.map +1 -1
- package/build/common/spec-parser/index.browser.d.ts +6 -0
- package/build/common/spec-parser/index.browser.d.ts.map +1 -0
- package/build/common/spec-parser/index.browser.js +16 -0
- package/build/common/spec-parser/index.browser.js.map +1 -0
- package/build/common/spec-parser/index.d.ts +1 -1
- package/build/common/spec-parser/index.d.ts.map +1 -1
- package/build/common/spec-parser/index.js.map +1 -1
- package/build/common/spec-parser/interfaces.d.ts +19 -1
- package/build/common/spec-parser/interfaces.d.ts.map +1 -1
- package/build/common/spec-parser/interfaces.js +2 -1
- package/build/common/spec-parser/interfaces.js.map +1 -1
- package/build/common/spec-parser/manifestUpdater.d.ts +3 -2
- package/build/common/spec-parser/manifestUpdater.d.ts.map +1 -1
- package/build/common/spec-parser/manifestUpdater.js +24 -10
- package/build/common/spec-parser/manifestUpdater.js.map +1 -1
- package/build/common/spec-parser/specFilter.d.ts +1 -1
- package/build/common/spec-parser/specFilter.d.ts.map +1 -1
- package/build/common/spec-parser/specFilter.js +2 -2
- package/build/common/spec-parser/specFilter.js.map +1 -1
- package/build/common/spec-parser/specParser.browser.d.ts +46 -0
- package/build/common/spec-parser/specParser.browser.d.ts.map +1 -0
- package/build/common/spec-parser/specParser.browser.js +138 -0
- package/build/common/spec-parser/specParser.browser.js.map +1 -0
- package/build/common/spec-parser/specParser.d.ts +3 -8
- package/build/common/spec-parser/specParser.d.ts.map +1 -1
- package/build/common/spec-parser/specParser.js +88 -49
- package/build/common/spec-parser/specParser.js.map +1 -1
- package/build/common/spec-parser/utils.d.ts +10 -7
- package/build/common/spec-parser/utils.d.ts.map +1 -1
- package/build/common/spec-parser/utils.js +119 -36
- package/build/common/spec-parser/utils.js.map +1 -1
- package/build/common/telemetry.d.ts +6 -1
- package/build/common/telemetry.d.ts.map +1 -1
- package/build/common/telemetry.js +5 -0
- package/build/common/telemetry.js.map +1 -1
- package/build/common/tools.d.ts.map +1 -1
- package/build/common/tools.js +1 -1
- package/build/common/tools.js.map +1 -1
- package/build/component/configManager/validator.d.ts.map +1 -1
- package/build/component/configManager/validator.js +2 -3
- package/build/component/configManager/validator.js.map +1 -1
- package/build/component/coordinator/index.d.ts +2 -1
- package/build/component/coordinator/index.d.ts.map +1 -1
- package/build/component/coordinator/index.js +3 -1
- package/build/component/coordinator/index.js.map +1 -1
- package/build/component/driver/aad/create.js +1 -1
- package/build/component/driver/aad/create.js.map +1 -1
- package/build/component/driver/aad/error/invalidFieldInManifestError.js +1 -1
- package/build/component/driver/aad/error/invalidFieldInManifestError.js.map +1 -1
- package/build/component/driver/aad/permissions/index.d.ts +3 -0
- package/build/component/driver/aad/permissions/index.d.ts.map +1 -1
- package/build/component/driver/aad/permissions/index.js +34 -1
- package/build/component/driver/aad/permissions/index.js.map +1 -1
- package/build/component/driver/aad/permissions/permissions.json +42 -42
- package/build/component/driver/aad/update.d.ts +1 -0
- package/build/component/driver/aad/update.d.ts.map +1 -1
- package/build/component/driver/aad/update.js +19 -17
- package/build/component/driver/aad/update.js.map +1 -1
- package/build/component/driver/aad/utility/aadAppClient.js +8 -8
- package/build/component/driver/aad/utility/aadAppClient.js.map +1 -1
- package/build/component/driver/aad/utility/constants.js +1 -1
- package/build/component/driver/aad/utility/constants.js.map +1 -1
- package/build/component/driver/apiKey/create.d.ts +17 -0
- package/build/component/driver/apiKey/create.d.ts.map +1 -0
- package/build/component/driver/apiKey/create.js +226 -0
- package/build/component/driver/apiKey/create.js.map +1 -0
- package/build/component/driver/apiKey/error/apiKeyClientSecretInvalid.d.ts +5 -0
- package/build/component/driver/apiKey/error/apiKeyClientSecretInvalid.d.ts.map +1 -0
- package/build/component/driver/apiKey/error/apiKeyClientSecretInvalid.js +22 -0
- package/build/component/driver/apiKey/error/apiKeyClientSecretInvalid.js.map +1 -0
- package/build/component/driver/apiKey/error/apiKeyDomainInvalid.d.ts +5 -0
- package/build/component/driver/apiKey/error/apiKeyDomainInvalid.d.ts.map +1 -0
- package/build/component/driver/apiKey/error/apiKeyDomainInvalid.js +22 -0
- package/build/component/driver/apiKey/error/apiKeyDomainInvalid.js.map +1 -0
- package/build/component/driver/apiKey/error/apiKeyFailedToGetDomain.d.ts +5 -0
- package/build/component/driver/apiKey/error/apiKeyFailedToGetDomain.d.ts.map +1 -0
- package/build/component/driver/apiKey/error/apiKeyFailedToGetDomain.js +21 -0
- package/build/component/driver/apiKey/error/apiKeyFailedToGetDomain.js.map +1 -0
- package/build/component/driver/apiKey/error/apiKeyNameTooLong.d.ts +5 -0
- package/build/component/driver/apiKey/error/apiKeyNameTooLong.d.ts.map +1 -0
- package/build/component/driver/apiKey/error/apiKeyNameTooLong.js +21 -0
- package/build/component/driver/apiKey/error/apiKeyNameTooLong.js.map +1 -0
- package/build/component/driver/apiKey/interface/createApiKeyArgs.d.ts +7 -0
- package/build/component/driver/apiKey/interface/createApiKeyArgs.d.ts.map +1 -0
- package/build/component/driver/apiKey/interface/createApiKeyArgs.js +5 -0
- package/build/component/driver/apiKey/interface/createApiKeyArgs.js.map +1 -0
- package/build/component/driver/apiKey/interface/createApiKeyOutputs.d.ts +7 -0
- package/build/component/driver/apiKey/interface/createApiKeyOutputs.d.ts.map +1 -0
- package/build/component/driver/apiKey/interface/createApiKeyOutputs.js +10 -0
- package/build/component/driver/apiKey/interface/createApiKeyOutputs.js.map +1 -0
- package/build/component/driver/apiKey/utility/constants.d.ts +10 -0
- package/build/component/driver/apiKey/utility/constants.d.ts.map +1 -0
- package/build/component/driver/apiKey/utility/constants.js +15 -0
- package/build/component/driver/apiKey/utility/constants.js.map +1 -0
- package/build/component/driver/deploy/azure/impl/azureDeployImpl.d.ts.map +1 -1
- package/build/component/driver/deploy/azure/impl/azureDeployImpl.js +6 -6
- package/build/component/driver/deploy/azure/impl/azureDeployImpl.js.map +1 -1
- package/build/component/driver/index.d.ts +1 -0
- package/build/component/driver/index.d.ts.map +1 -1
- package/build/component/driver/index.js +1 -0
- package/build/component/driver/index.js.map +1 -1
- package/build/component/driver/script/scriptDriver.d.ts.map +1 -1
- package/build/component/driver/script/scriptDriver.js +2 -2
- package/build/component/driver/script/scriptDriver.js.map +1 -1
- package/build/component/driver/teamsApp/clients/appStudioClient.d.ts +13 -0
- package/build/component/driver/teamsApp/clients/appStudioClient.d.ts.map +1 -1
- package/build/component/driver/teamsApp/clients/appStudioClient.js +38 -0
- package/build/component/driver/teamsApp/clients/appStudioClient.js.map +1 -1
- package/build/component/driver/teamsApp/constants.d.ts +2 -0
- package/build/component/driver/teamsApp/constants.d.ts.map +1 -1
- package/build/component/driver/teamsApp/constants.js +2 -0
- package/build/component/driver/teamsApp/constants.js.map +1 -1
- package/build/component/driver/teamsApp/createAppPackage.d.ts.map +1 -1
- package/build/component/driver/teamsApp/createAppPackage.js +26 -6
- package/build/component/driver/teamsApp/createAppPackage.js.map +1 -1
- package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.d.ts +44 -0
- package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.d.ts.map +1 -0
- package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.js +21 -0
- package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.js.map +1 -0
- package/build/component/driver/teamsApp/interfaces/ApiSecretRegistrationClientSecret.d.ts +15 -0
- package/build/component/driver/teamsApp/interfaces/ApiSecretRegistrationClientSecret.d.ts.map +1 -0
- package/build/component/driver/teamsApp/interfaces/ApiSecretRegistrationClientSecret.js +5 -0
- package/build/component/driver/teamsApp/interfaces/ApiSecretRegistrationClientSecret.js.map +1 -0
- package/build/component/driver/teamsApp/interfaces/appdefinitions/IValidationResult.d.ts +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/IValidationResult.d.ts.map +1 -1
- package/build/component/driver/teamsApp/teamsappMgr.js +7 -7
- package/build/component/driver/teamsApp/teamsappMgr.js.map +1 -1
- package/build/component/driver/teamsApp/validate.d.ts.map +1 -1
- package/build/component/driver/teamsApp/validate.js +7 -2
- package/build/component/driver/teamsApp/validate.js.map +1 -1
- package/build/component/driver/teamsApp/validateAppPackage.d.ts.map +1 -1
- package/build/component/driver/teamsApp/validateAppPackage.js +35 -7
- package/build/component/driver/teamsApp/validateAppPackage.js.map +1 -1
- package/build/component/generator/copilotPlugin/generator.d.ts.map +1 -1
- package/build/component/generator/copilotPlugin/generator.js +40 -20
- package/build/component/generator/copilotPlugin/generator.js.map +1 -1
- package/build/component/generator/copilotPlugin/helper.d.ts +1 -2
- package/build/component/generator/copilotPlugin/helper.d.ts.map +1 -1
- package/build/component/generator/copilotPlugin/helper.js +36 -21
- package/build/component/generator/copilotPlugin/helper.js.map +1 -1
- package/build/component/generator/error.d.ts +0 -6
- package/build/component/generator/error.d.ts.map +1 -1
- package/build/component/generator/error.js +1 -13
- package/build/component/generator/error.js.map +1 -1
- package/build/component/generator/generator.d.ts +5 -1
- package/build/component/generator/generator.d.ts.map +1 -1
- package/build/component/generator/generator.js +13 -8
- package/build/component/generator/generator.js.map +1 -1
- package/build/component/generator/generatorAction.d.ts +2 -0
- package/build/component/generator/generatorAction.d.ts.map +1 -1
- package/build/component/generator/generatorAction.js +6 -6
- package/build/component/generator/generatorAction.js.map +1 -1
- package/build/component/generator/officeAddin/helperMethods.d.ts.map +1 -1
- package/build/component/generator/officeAddin/helperMethods.js +19 -26
- package/build/component/generator/officeAddin/helperMethods.js.map +1 -1
- package/build/component/generator/spfx/spfxGenerator.d.ts.map +1 -1
- package/build/component/generator/spfx/spfxGenerator.js +7 -0
- package/build/component/generator/spfx/spfxGenerator.js.map +1 -1
- package/build/component/generator/spfx/utils/constants.d.ts +1 -14
- package/build/component/generator/spfx/utils/constants.d.ts.map +1 -1
- package/build/component/generator/spfx/utils/constants.js +1 -14
- package/build/component/generator/spfx/utils/constants.js.map +1 -1
- package/build/component/generator/utils.d.ts +2 -4
- package/build/component/generator/utils.d.ts.map +1 -1
- package/build/component/generator/utils.js +4 -14
- package/build/component/generator/utils.js.map +1 -1
- package/build/component/middleware/questionMW.d.ts +1 -1
- package/build/component/middleware/questionMW.d.ts.map +1 -1
- package/build/component/middleware/questionMW.js +4 -1
- package/build/component/middleware/questionMW.js.map +1 -1
- package/build/component/utils/ResourceGroupHelper.d.ts +1 -0
- package/build/component/utils/ResourceGroupHelper.d.ts.map +1 -1
- package/build/component/utils/ResourceGroupHelper.js +31 -1
- package/build/component/utils/ResourceGroupHelper.js.map +1 -1
- package/build/component/utils/envUtil.js +1 -1
- package/build/component/utils/envUtil.js.map +1 -1
- package/build/component/utils/metadataGraphPermssion.d.ts +16 -0
- package/build/component/utils/metadataGraphPermssion.d.ts.map +1 -0
- package/build/component/utils/metadataGraphPermssion.js +96 -0
- package/build/component/utils/metadataGraphPermssion.js.map +1 -0
- package/build/component/utils/metadataUtil.d.ts.map +1 -1
- package/build/component/utils/metadataUtil.js +2 -0
- package/build/component/utils/metadataUtil.js.map +1 -1
- package/build/core/FxCore.d.ts +2 -0
- package/build/core/FxCore.d.ts.map +1 -1
- package/build/core/FxCore.js +81 -5
- package/build/core/FxCore.js.map +1 -1
- package/build/core/middleware/projectMigratorV3.js +1 -1
- package/build/core/middleware/projectMigratorV3.js.map +1 -1
- package/build/core/middleware/utils/debug/taskMigrator.js +1 -1
- package/build/error/common.d.ts +9 -0
- package/build/error/common.d.ts.map +1 -1
- package/build/error/common.js +34 -1
- package/build/error/common.js.map +1 -1
- package/build/error/teamsApp.d.ts +4 -1
- package/build/error/teamsApp.d.ts.map +1 -1
- package/build/error/teamsApp.js +13 -1
- package/build/error/teamsApp.js.map +1 -1
- package/build/index.d.ts +3 -0
- package/build/index.d.ts.map +1 -1
- package/build/index.js +7 -1
- package/build/index.js.map +1 -1
- package/build/question/create.d.ts +2 -1
- package/build/question/create.d.ts.map +1 -1
- package/build/question/create.js +66 -16
- package/build/question/create.js.map +1 -1
- package/build/question/generator.js +0 -2
- package/build/question/generator.js.map +1 -1
- package/build/question/index.d.ts +1 -0
- package/build/question/index.d.ts.map +1 -1
- package/build/question/index.js +3 -0
- package/build/question/index.js.map +1 -1
- package/build/question/inputs/CreateProjectInputs.d.ts +1 -1
- package/build/question/inputs/CreateProjectInputs.d.ts.map +1 -1
- package/build/question/inputs/DeployAadManifestInputs.d.ts +1 -1
- package/build/question/inputs/DeployAadManifestInputs.d.ts.map +1 -1
- package/build/question/inputs/PermissionGrantInputs.d.ts +2 -2
- package/build/question/inputs/PermissionGrantInputs.d.ts.map +1 -1
- package/build/question/inputs/PermissionListInputs.d.ts +1 -1
- package/build/question/inputs/PermissionListInputs.d.ts.map +1 -1
- package/build/question/options/CreateProjectOptions.d.ts.map +1 -1
- package/build/question/options/CreateProjectOptions.js +2 -1
- package/build/question/options/CreateProjectOptions.js.map +1 -1
- package/build/question/options/CreateSampleProjectOptions.d.ts.map +1 -1
- package/build/question/options/CreateSampleProjectOptions.js +5 -1
- package/build/question/options/CreateSampleProjectOptions.js.map +1 -1
- package/build/question/options/DeployAadManifestOptions.js +2 -2
- package/build/question/options/DeployAadManifestOptions.js.map +1 -1
- package/build/question/options/PermissionGrantOptions.js +2 -2
- package/build/question/options/PermissionGrantOptions.js.map +1 -1
- package/build/question/options/PermissionListOptions.js +2 -2
- package/build/question/options/PermissionListOptions.js.map +1 -1
- package/build/question/other.d.ts +1 -0
- package/build/question/other.d.ts.map +1 -1
- package/build/question/other.js +66 -7
- package/build/question/other.js.map +1 -1
- package/build/question/questionNames.d.ts +1 -0
- package/build/question/questionNames.d.ts.map +1 -1
- package/build/question/questionNames.js +1 -0
- package/build/question/questionNames.js.map +1 -1
- package/build/ui/visitor.d.ts.map +1 -1
- package/build/ui/visitor.js +1 -2
- package/build/ui/visitor.js.map +1 -1
- package/package.json +9 -18
- package/resource/package.nls.json +65 -44
- package/resource/yaml-schema/v1.3/yaml.schema.json +79 -32
- package/templates/core/v3Migration/csharp.app.local.yml +6 -6
- package/templates/core/v3Migration/csharp.app.yml +6 -6
- package/templates/core/v3Migration/js.ts.app.local.yml +11 -11
- package/templates/core/v3Migration/js.ts.app.yml +12 -12
- package/templates/fallback/common.zip +0 -0
- package/templates/fallback/csharp.zip +0 -0
- package/templates/fallback/js.zip +0 -0
- package/templates/fallback/ts.zip +0 -0
- package/templates/plugins/resource/aad/auth/V3/Bot/Pages/BotAuthorizeEndPage.cshtml +55 -51
- package/templates/plugins/resource/aad/auth/V3/Enable SSO.txt +2 -2
- package/templates/plugins/resource/aad/auth/bot/README.md +13 -13
- package/templates/plugins/resource/aad/auth/bot/README.txt +7 -7
- package/templates/plugins/resource/aad/auth/bot/csharp/Pages/BotAuthorizeEndPage.cshtml +55 -51
- package/templates/plugins/resource/aad/auth/bot/js/public/auth-end.html +6 -2
- package/templates/plugins/resource/aad/auth/bot/ts/public/auth-end.html +5 -1
- package/templates/plugins/resource/aad/auth/tab/README.md +6 -6
- package/templates/plugins/resource/aad/auth/tab/README.txt +5 -5
- package/templates/plugins/resource/aad/auth/tab/js/public/auth-end.html +16 -9
- package/templates/plugins/resource/aad/auth/tab/js/public/auth-start.html +11 -7
- package/templates/plugins/resource/aad/auth/tab/js/sso/GetUserProfile.jsx +1 -1
- package/templates/plugins/resource/aad/auth/tab/ts/public/auth-end.html +16 -9
- package/templates/plugins/resource/aad/auth/tab/ts/public/auth-start.html +11 -7
- package/templates/plugins/resource/aad/auth/tab/ts/sso/GetUserProfile.tsx +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Enable single sign-on for tab applications
|
|
2
2
|
|
|
3
|
-
Microsoft Teams provides a mechanism by which an application can obtain the signed-in Teams user token to access Microsoft Graph (and other APIs). Teams Toolkit facilitates this interaction by abstracting some of the
|
|
3
|
+
Microsoft Teams provides a mechanism by which an application can obtain the signed-in Teams user token to access Microsoft Graph (and other APIs). Teams Toolkit facilitates this interaction by abstracting some of the Microsoft Entra flows and integrations behind some simple, high level APIs. This enables you to add single sign-on (SSO) features easily to your Teams application.
|
|
4
4
|
|
|
5
5
|
# Changes to your project
|
|
6
6
|
|
|
@@ -10,7 +10,7 @@ After you successfully added SSO into your project, Teams Toolkit will create an
|
|
|
10
10
|
|
|
11
11
|
| Action | File | Description |
|
|
12
12
|
| - | - | - |
|
|
13
|
-
| Create| `aad.template.json` under `templates/appPackage` | The
|
|
13
|
+
| Create| `aad.template.json` under `templates/appPackage` | The Microsoft Entra application manifest that is used to register the application with Microsoft Entra. |
|
|
14
14
|
| Modify | `manifest.template.json` under `templates/appPackage` | An `webApplicationInfo` object will be added into your Teams app manifest template. This field is required by Teams when enabling SSO. |
|
|
15
15
|
| Create | `auth/tab` | Reference code, redirect pages and a `README.md` file. These files are provided for reference. See below for more information. |
|
|
16
16
|
|
|
@@ -37,14 +37,14 @@ These two HTML files are used for auth redirects.
|
|
|
37
37
|
|
|
38
38
|
You can debug your application by pressing F5.
|
|
39
39
|
|
|
40
|
-
Teams Toolkit will use the
|
|
40
|
+
Teams Toolkit will use the Microsoft Entra manifest file to register a Microsoft Entra application registered for SSO.
|
|
41
41
|
|
|
42
42
|
To learn more about Teams Toolkit local debug functionalities, refer to this [document](https://docs.microsoft.com/microsoftteams/platform/toolkit/debug-local).
|
|
43
43
|
|
|
44
|
-
# Customize
|
|
44
|
+
# Customize Microsoft Entra applications
|
|
45
45
|
|
|
46
|
-
The
|
|
46
|
+
The Microsoft Entra [manifest](https://docs.microsoft.com/azure/active-directory/develop/reference-app-manifest) allows you to customize various aspects of your application registration. You can update the manifest as needed.
|
|
47
47
|
|
|
48
48
|
Follow this [document](https://aka.ms/teamsfx-aad-manifest#how-to-customize-the-aad-manifest-template) if you need to include additional API permissions to access your desired APIs.
|
|
49
49
|
|
|
50
|
-
Follow this [document](https://aka.ms/teamsfx-aad-manifest#How-to-view-the-AAD-app-on-the-Azure-portal) to view your
|
|
50
|
+
Follow this [document](https://aka.ms/teamsfx-aad-manifest#How-to-view-the-AAD-app-on-the-Azure-portal) to view your Microsoft Entra application in Azure Portal.
|
|
@@ -5,7 +5,7 @@ Files generated/updated in your project
|
|
|
5
5
|
-------------------------
|
|
6
6
|
|
|
7
7
|
1. New file - 'aad.template.json' is created in folder 'templates/appPackage'
|
|
8
|
-
- The
|
|
8
|
+
- The Microsoft Entra application manifest that is used to register the application with Microsoft Entra.
|
|
9
9
|
2. Update file - 'templates/appPackage/manifest.template.json'
|
|
10
10
|
- An 'webApplicationInfo' object will be added into your Teams app manifest template. This field is required by Teams when enabling SSO.
|
|
11
11
|
3. New file - 'Auth/tab'
|
|
@@ -31,15 +31,15 @@ to install the app to
|
|
|
31
31
|
3. Press F5, or select the Debug > Start Debugging menu in Visual Studio
|
|
32
32
|
4. In the launched browser, select the Add button to load the app in Teams
|
|
33
33
|
|
|
34
|
-
Teams Toolkit will use the
|
|
34
|
+
Teams Toolkit will use the Microsoft Entra manifest file to register a Microsoft Entra application registered for SSO.
|
|
35
35
|
|
|
36
36
|
To learn more about Teams Toolkit local debug functionalities, refer to https://docs.microsoft.com/microsoftteams/platform/toolkit/debug-local.
|
|
37
37
|
|
|
38
|
-
Customize
|
|
38
|
+
Customize Microsoft Entra applications
|
|
39
39
|
-------------------------
|
|
40
|
-
The
|
|
40
|
+
The Microsoft Entra manifest allows you to customize various aspects of your application registration. You can update the manifest as needed.
|
|
41
41
|
Related Doc: https://docs.microsoft.com/azure/active-directory/develop/reference-app-manifest
|
|
42
42
|
|
|
43
43
|
Follow https://aka.ms/teamsfx-aad-manifest#how-to-customize-the-aad-manifest-template if you need to include additional API permissions to access your desired APIs.
|
|
44
44
|
|
|
45
|
-
Follow https://aka.ms/teamsfx-aad-manifest#How-to-view-the-AAD-app-on-the-Azure-portal to view your
|
|
45
|
+
Follow https://aka.ms/teamsfx-aad-manifest#How-to-view-the-AAD-app-on-the-Azure-portal to view your Microsoft Entra application in Azure Portal.
|
|
@@ -7,13 +7,17 @@
|
|
|
7
7
|
</head>
|
|
8
8
|
|
|
9
9
|
<body>
|
|
10
|
-
|
|
10
|
+
<script
|
|
11
|
+
src="https://res.cdn.office.net/teams-js/2.17.0/js/MicrosoftTeams.min.js"
|
|
12
|
+
integrity="sha384-xp55t/129OsN192JZYLP0rGhzjCF9aYtjY0LVtXvolkDrBe4Jchylp56NrUYJ4S2"
|
|
13
|
+
crossorigin="anonymous"
|
|
14
|
+
></script>
|
|
11
15
|
<script
|
|
12
16
|
type="text/javascript"
|
|
13
17
|
src="https://alcdn.msauth.net/browser/2.21.0/js/msal-browser.min.js"
|
|
14
18
|
integrity="sha384-s/NxjjAgw1QgpDhOlVjTceLl4axrp5nqpUbCPOEQy1PqbFit9On6uw2XmEF1eq0s"
|
|
15
|
-
crossorigin="anonymous"
|
|
16
|
-
|
|
19
|
+
crossorigin="anonymous"
|
|
20
|
+
></script>
|
|
17
21
|
<script type="text/javascript">
|
|
18
22
|
var currentURL = new URL(window.location);
|
|
19
23
|
var clientId = currentURL.searchParams.get("clientId");
|
|
@@ -24,20 +28,23 @@
|
|
|
24
28
|
auth: {
|
|
25
29
|
clientId: clientId,
|
|
26
30
|
authority: `https://login.microsoftonline.com/${context.user.tenant.id}`,
|
|
27
|
-
navigateToLoginRequestUrl: false
|
|
31
|
+
navigateToLoginRequestUrl: false,
|
|
28
32
|
},
|
|
29
33
|
cache: {
|
|
30
34
|
cacheLocation: "sessionStorage",
|
|
31
35
|
},
|
|
32
|
-
}
|
|
36
|
+
};
|
|
33
37
|
|
|
34
38
|
const msalInstance = new window.msal.PublicClientApplication(msalConfig);
|
|
35
|
-
msalInstance
|
|
39
|
+
msalInstance
|
|
40
|
+
.handleRedirectPromise()
|
|
36
41
|
.then((tokenResponse) => {
|
|
37
42
|
if (tokenResponse !== null) {
|
|
38
|
-
microsoftTeams.authentication.notifySuccess(
|
|
39
|
-
|
|
40
|
-
|
|
43
|
+
microsoftTeams.authentication.notifySuccess(
|
|
44
|
+
JSON.stringify({
|
|
45
|
+
sessionStorage: sessionStorage,
|
|
46
|
+
})
|
|
47
|
+
);
|
|
41
48
|
} else {
|
|
42
49
|
microsoftTeams.authentication.notifyFailure("Get empty response.");
|
|
43
50
|
}
|
|
@@ -7,13 +7,17 @@
|
|
|
7
7
|
</head>
|
|
8
8
|
|
|
9
9
|
<body>
|
|
10
|
-
|
|
10
|
+
<script
|
|
11
|
+
src="https://res.cdn.office.net/teams-js/2.17.0/js/MicrosoftTeams.min.js"
|
|
12
|
+
integrity="sha384-xp55t/129OsN192JZYLP0rGhzjCF9aYtjY0LVtXvolkDrBe4Jchylp56NrUYJ4S2"
|
|
13
|
+
crossorigin="anonymous"
|
|
14
|
+
></script>
|
|
11
15
|
<script
|
|
12
16
|
type="text/javascript"
|
|
13
17
|
src="https://alcdn.msauth.net/browser/2.21.0/js/msal-browser.min.js"
|
|
14
18
|
integrity="sha384-s/NxjjAgw1QgpDhOlVjTceLl4axrp5nqpUbCPOEQy1PqbFit9On6uw2XmEF1eq0s"
|
|
15
|
-
crossorigin="anonymous"
|
|
16
|
-
|
|
19
|
+
crossorigin="anonymous"
|
|
20
|
+
></script>
|
|
17
21
|
<script type="text/javascript">
|
|
18
22
|
microsoftTeams.app.initialize().then(() => {
|
|
19
23
|
microsoftTeams.app.getContext().then(async (context) => {
|
|
@@ -27,23 +31,23 @@
|
|
|
27
31
|
auth: {
|
|
28
32
|
clientId: clientId,
|
|
29
33
|
authority: `https://login.microsoftonline.com/${context.user.tenant.id}`,
|
|
30
|
-
navigateToLoginRequestUrl: false
|
|
34
|
+
navigateToLoginRequestUrl: false,
|
|
31
35
|
},
|
|
32
36
|
cache: {
|
|
33
37
|
cacheLocation: "sessionStorage",
|
|
34
38
|
},
|
|
35
|
-
}
|
|
39
|
+
};
|
|
36
40
|
|
|
37
41
|
const msalInstance = new msal.PublicClientApplication(msalConfig);
|
|
38
42
|
const scopesArray = scope.split(" ");
|
|
39
43
|
const scopesRequest = {
|
|
40
44
|
scopes: scopesArray,
|
|
41
45
|
redirectUri: window.location.origin + `/auth-end.html?clientId=${clientId}`,
|
|
42
|
-
loginHint: loginHint
|
|
46
|
+
loginHint: loginHint,
|
|
43
47
|
};
|
|
44
48
|
await msalInstance.loginRedirect(scopesRequest);
|
|
45
49
|
});
|
|
46
50
|
});
|
|
47
|
-
|
|
51
|
+
</script>
|
|
48
52
|
</body>
|
|
49
53
|
</html>
|
|
@@ -27,7 +27,7 @@ export function GetUserProfile(props) {
|
|
|
27
27
|
// }
|
|
28
28
|
return { profile };
|
|
29
29
|
},
|
|
30
|
-
// Add scope for your
|
|
30
|
+
// Add scope for your Microsoft Entra app. For example: Mail.Read, etc.
|
|
31
31
|
// Use teamsfx instance from `InitTeamsFx`
|
|
32
32
|
{ scope: ["User.Read"], teamsfx: teamsfx }
|
|
33
33
|
);
|
|
@@ -7,13 +7,17 @@
|
|
|
7
7
|
</head>
|
|
8
8
|
|
|
9
9
|
<body>
|
|
10
|
-
|
|
10
|
+
<script
|
|
11
|
+
src="https://res.cdn.office.net/teams-js/2.17.0/js/MicrosoftTeams.min.js"
|
|
12
|
+
integrity="sha384-xp55t/129OsN192JZYLP0rGhzjCF9aYtjY0LVtXvolkDrBe4Jchylp56NrUYJ4S2"
|
|
13
|
+
crossorigin="anonymous"
|
|
14
|
+
></script>
|
|
11
15
|
<script
|
|
12
16
|
type="text/javascript"
|
|
13
17
|
src="https://alcdn.msauth.net/browser/2.21.0/js/msal-browser.min.js"
|
|
14
18
|
integrity="sha384-s/NxjjAgw1QgpDhOlVjTceLl4axrp5nqpUbCPOEQy1PqbFit9On6uw2XmEF1eq0s"
|
|
15
|
-
crossorigin="anonymous"
|
|
16
|
-
|
|
19
|
+
crossorigin="anonymous"
|
|
20
|
+
></script>
|
|
17
21
|
<script type="text/javascript">
|
|
18
22
|
var currentURL = new URL(window.location);
|
|
19
23
|
var clientId = currentURL.searchParams.get("clientId");
|
|
@@ -24,20 +28,23 @@
|
|
|
24
28
|
auth: {
|
|
25
29
|
clientId: clientId,
|
|
26
30
|
authority: `https://login.microsoftonline.com/${context.user.tenant.id}`,
|
|
27
|
-
navigateToLoginRequestUrl: false
|
|
31
|
+
navigateToLoginRequestUrl: false,
|
|
28
32
|
},
|
|
29
33
|
cache: {
|
|
30
34
|
cacheLocation: "sessionStorage",
|
|
31
35
|
},
|
|
32
|
-
}
|
|
36
|
+
};
|
|
33
37
|
|
|
34
38
|
const msalInstance = new window.msal.PublicClientApplication(msalConfig);
|
|
35
|
-
msalInstance
|
|
39
|
+
msalInstance
|
|
40
|
+
.handleRedirectPromise()
|
|
36
41
|
.then((tokenResponse) => {
|
|
37
42
|
if (tokenResponse !== null) {
|
|
38
|
-
microsoftTeams.authentication.notifySuccess(
|
|
39
|
-
|
|
40
|
-
|
|
43
|
+
microsoftTeams.authentication.notifySuccess(
|
|
44
|
+
JSON.stringify({
|
|
45
|
+
sessionStorage: sessionStorage,
|
|
46
|
+
})
|
|
47
|
+
);
|
|
41
48
|
} else {
|
|
42
49
|
microsoftTeams.authentication.notifyFailure("Get empty response.");
|
|
43
50
|
}
|
|
@@ -7,13 +7,17 @@
|
|
|
7
7
|
</head>
|
|
8
8
|
|
|
9
9
|
<body>
|
|
10
|
-
|
|
10
|
+
<script
|
|
11
|
+
src="https://res.cdn.office.net/teams-js/2.17.0/js/MicrosoftTeams.min.js"
|
|
12
|
+
integrity="sha384-xp55t/129OsN192JZYLP0rGhzjCF9aYtjY0LVtXvolkDrBe4Jchylp56NrUYJ4S2"
|
|
13
|
+
crossorigin="anonymous"
|
|
14
|
+
></script>
|
|
11
15
|
<script
|
|
12
16
|
type="text/javascript"
|
|
13
17
|
src="https://alcdn.msauth.net/browser/2.21.0/js/msal-browser.min.js"
|
|
14
18
|
integrity="sha384-s/NxjjAgw1QgpDhOlVjTceLl4axrp5nqpUbCPOEQy1PqbFit9On6uw2XmEF1eq0s"
|
|
15
|
-
crossorigin="anonymous"
|
|
16
|
-
|
|
19
|
+
crossorigin="anonymous"
|
|
20
|
+
></script>
|
|
17
21
|
<script type="text/javascript">
|
|
18
22
|
microsoftTeams.app.initialize().then(() => {
|
|
19
23
|
microsoftTeams.app.getContext().then(async (context) => {
|
|
@@ -27,23 +31,23 @@
|
|
|
27
31
|
auth: {
|
|
28
32
|
clientId: clientId,
|
|
29
33
|
authority: `https://login.microsoftonline.com/${context.user.tenant.id}`,
|
|
30
|
-
navigateToLoginRequestUrl: false
|
|
34
|
+
navigateToLoginRequestUrl: false,
|
|
31
35
|
},
|
|
32
36
|
cache: {
|
|
33
37
|
cacheLocation: "sessionStorage",
|
|
34
38
|
},
|
|
35
|
-
}
|
|
39
|
+
};
|
|
36
40
|
|
|
37
41
|
const msalInstance = new msal.PublicClientApplication(msalConfig);
|
|
38
42
|
const scopesArray = scope.split(" ");
|
|
39
43
|
const scopesRequest = {
|
|
40
44
|
scopes: scopesArray,
|
|
41
45
|
redirectUri: window.location.origin + `/auth-end.html?clientId=${clientId}`,
|
|
42
|
-
loginHint: loginHint
|
|
46
|
+
loginHint: loginHint,
|
|
43
47
|
};
|
|
44
48
|
await msalInstance.loginRedirect(scopesRequest);
|
|
45
49
|
});
|
|
46
50
|
});
|
|
47
|
-
|
|
51
|
+
</script>
|
|
48
52
|
</body>
|
|
49
53
|
</html>
|
|
@@ -28,7 +28,7 @@ export function GetUserProfile(props: { teamsfx?: TeamsFx }) {
|
|
|
28
28
|
// }
|
|
29
29
|
return { profile };
|
|
30
30
|
},
|
|
31
|
-
// Add scope for your
|
|
31
|
+
// Add scope for your Microsoft Entra app. For example: Mail.Read, etc.
|
|
32
32
|
// Use teamsfx instance from `InitTeamsFx`
|
|
33
33
|
{ scope: ["User.Read"], teamsfx: teamsfx }
|
|
34
34
|
);
|