【问题标题】:Connect to Azure AD using Powershell commands from Azure App Service使用 Azure 应用服务中的 Powershell 命令连接到 Azure AD
【发布时间】:2017-04-28 13:43:17
【问题描述】:

我在 azure app 服务中运行 Web 应用程序,我需要在其中获取经过身份验证的用户(通过 Azure AD)密码到期详细信息。

How to get password policy for Azure Active Directory logged in user

我按照上面的答案,我在本地视觉工作室工作。

但是,现在此代码已部署在 Azure 应用服务上并抛出异常。 “Connect-MsolService”未定义 cmdlet...

当我在本地收到此错误时,是因为 Azure AD Powershell 模块需要在 64 位环境中运行。所以我在 Visual Studio Tools->Options->Projects & Solutions->Web Projects->Use 64 bit version of IIS Express 中选中了以下复选框。就是这样,它在本地工作。

因为它需要 64 位。我还检查了 Azure Web App->Application Settings->Platform to 64bit (Default is 32 bit)

还是同样的“Unknown cmdlet”错误

以前有人经历过。

【问题讨论】:

  • 您确定在应用服务机器上安装了 Azure AD powershell 模块吗?您可能需要查看 Azure AD Graph API 以了解无需安装任何先决条件即可访问 Azure AD 的方法。
  • 很遗憾,Azure AD Graph API 尚无法返回 LastPasswordChangedDate。如何在应用服务机器上安装powershell模块?

标签: c# powershell azure azure-web-app-service azure-active-directory


【解决方案1】:

Azure 应用服务不安装相应的 PowerShell 命令。如果要将服务部署到 Azure,则需要选择云服务或虚拟机以启用在 Azure 环境中安装所需的 PowerShell。

更详细的区别,你可以参考下面的链接:

Should I choose cloud services or something else?

【讨论】:

  • 很遗憾,我无法从 appservice-mobile 应用切换。如何登录用户“PasswordLastChangedDate”然后在应用服务中?或者当前的 api 不可能?
  • 此解决方案需要安装 PowerShell command-let 才能使 C# 代码成功执行。但是,应用服务不允许这样做,这意味着该解决方案不适用于应用服务。作为一种解决方法,您可以将这个函数从您的应用服务中分离出来,并将这个函数部署为一个云服务。
猜你喜欢
  • 2021-09-06
  • 2016-09-24
  • 2021-05-28
  • 2020-04-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-30
  • 2021-04-19
相关资源
最近更新 更多