Azure active directory Azure应用程序注册返回错误代码AADSTS70001

Azure active directory Azure应用程序注册返回错误代码AADSTS70001,azure-active-directory,Azure Active Directory,我在这里创建了一个与此类似的配置机制: 我已经成功地在我的开发者租户上实现了整个工作流。现在,在我们的生产环境中,我总是收到以下错误: [Error]调用-rest方法:{ “错误”:“未经授权的\u客户端”, “错误描述”:“AADSTS70001:应用程序'ffffffff-…'已禁用。\r\n空间ID:ffffffff-180f-4bc4-8087-867633c83e00\r\n相关ID:FFFFFFFFFF-2e5d-481d-adee-F068DBEBAB1\r\n方法TAMP:2

我在这里创建了一个与此类似的配置机制:

我已经成功地在我的开发者租户上实现了整个工作流。现在,在我们的生产环境中,我总是收到以下错误:

[Error]调用-rest方法:{
“错误”:“未经授权的\u客户端”,
“错误描述”:“AADSTS70001:应用程序'ffffffff-…'已禁用。\r\n空间ID:ffffffff-180f-4bc4-8087-867633c83e00\r\n相关ID:FFFFFFFFFF-2e5d-481d-adee-F068DBEBAB1\r\n方法TAMP:2018-10-29 09:06:59Z”,
“错误代码”:[70001],
“时间戳”:“2018-10-29 09:06:59Z”,
“跟踪id”:“ffffffff-180f-4bc4-8087-867633c83e00”,
“相关性id”:“ffffffff-2e5d-481d-adee-F068DBEBAB1”
}
这是我的代码,应该执行身份验证:

函数初始化授权{
param
(
[字符串]
$ResourceURL=https://graph.microsoft.com',
[字符串]
[参数(强制性)]
$TENATID,
[字符串]
[参数(强制性)]
$ClientKey,
[字符串]
[参数(强制性)]
$AppID
)
$Authority=”https://login.microsoftonline.com/$TenantID/oauth2/token”
写入输出“auth:$Authority”
[Reflection.Assembly]::LoadWithPartialName(“System.Web”)| Out Null
$EncodedKey=[System.Web.HttpUtility]::UrlEncode($ClientKey)
$body=“grant\u type=client\u凭证和client\u id=$AppID&client\u secret=$EncodedKey&resource=$ResourceUrl”
写入输出“body:$body”
#从graph api请求令牌
$result=Invoke RestMethod-Method Post`#`
-Uri$权限`#`
-ContentType“application/x-www-form-urlencoded”`#`
-Body$Body
$script:APIHeader=@{'Authorization'=“Bearer$($result.access_token)”}
}
我已经尝试生成新的密钥,但我被卡住了。如何禁用应用程序注册

有人能给我介绍一下正确的方向吗?

您的应用程序在生产租户中的ServicePrincipal对象似乎已被禁用。ServicePrincipal对象在Azure门户的“企业应用程序”下表示

在生产租户中,导航到Azure门户>Azure AD>企业应用程序。搜索你的应用程序(如果它最初没有显示,请确保你在“应用程序类型”下选择了“所有应用程序”)。选择应用程序,在新刀片中,选择左侧的“属性”

如果“允许用户登录?”设置为“否”,则该租户中的应用程序将被禁用。将其设置为“是”将启用它


应用程序通常不会自动禁用,因此您最好了解为什么会禁用应用程序,并确保每个人都清楚要求是什么。

非常感谢,这正是问题所在。非常令人困惑的是,此设置仅在“企业应用程序”下可见,而不直接在应用程序注册下可见。