Azure Active Directory 应用清单

应用程序清单包含 Microsoft 标识平台中的某个应用程序对象的所有属性的定义。 它还充当用于更新应用程序对象的机制。 有关应用程序实体及其架构的详细信息,请参阅图形 API 应用程序实体文档

可以通过 Azure 门户或者使用 Microsoft Graph 以编程方式配置应用的属性。 但是,在某些情况下,需要编辑应用清单来配置应用的属性。 这些方案包括:

  • 如果已将应用注册为 Azure AD 多租户和个人 Microsoft 帐户,则不能在 UI 中更改支持的 Microsoft 帐户。 而是必须使用应用程序清单编辑器来更改支持的帐户类型。
  • 如果需要定义你的应用支持的权限和角色,则必须修改应用程序清单。

配置应用清单

若要配置应用程序清单,请执行以下操作:

  1. 登录到 Azure 门户
  2. 选择“Azure Active Directory”服务,然后选择“应用注册”。
  3. 选择要配置的应用。
  4. 选择“清单”部分。 此时会打开一个基于 Web 的清单编辑器,可在其中编辑门户中的清单。 (可选)可以选择“下载”以在本地编辑清单,然后使用“上传”将清单重新应用于应用程序。

清单参考

Note

如果看不到“说明”后的“示例值”列,请最大化浏览器窗口并滚动/轻扫,直至看到“示例值”列。

值类型 说明 示例值
accessTokenAcceptedVersion 可为 Null 的 Int32 指定资源所需的访问令牌版本。 这会更改独立于用于请求访问令牌的终结点或客户端生成的 JWT 的版本和格式。

使用的端点 v1.0 或 v2.0 由客户端选择,仅影响 id_tokens 的版本。 资源需要显式配置 accesstokenAcceptedVersion 以指示受支持的访问令牌格式。

accesstokenAcceptedVersion 的可能值为 1、2 或为 null。 如果值为 null,则默认为 1,这对应于 v1.0 终结点。
2
allowPublicClient 布尔值 指定回退应用程序类型。 默认情况下,Azure AD 基于 replyUrlsWithType 推断应用程序类型。 某些情况下,Azure AD 无法确定客户端应用类型(例如,其中发生了没有 URL 重定向的 HTTP 请求的 ROPC 流)。 在这种情况下,Azure AD 将基于此属性的值解释应用程序类型。 如果此值设置为 true,则回退应用程序类型设置为公共客户端,例如在移动设备上运行的已安装应用。 默认值为 false,这意味着,回退应用程序类型为机密,例如 Web 应用。 false
appId 标识符字符串 指定由 Azure AD 分配给应用的应用唯一标识符。 "601790de-b632-4f57-9523-ee7cb6ceba95"
appRoles 数组类型 指定应用可以声明的角色集合。 可将这些角色分配给用户、组或服务主体。 有关更多示例和信息,请参阅在应用程序中添加应用角色并在令牌中接收它们 [
  {
   "allowedMemberTypes": [
    "User"
   ],
   "description":"Read-only access to device information",
   "displayName":"Read Only",
   "id":guid,
   "isEnabled":true,
   "value":"ReadOnly"
  }
]
groupMembershipClaims 字符串 配置应用所需的用户访问令牌或 OAuth 2.0 访问令牌中颁发的 groups 声明。 若要设置此属性,请使用以下有效的字符串值之一:

- "None"
- "SecurityGroup"(适用于安全组和 Azure AD 角色)
- "All"(此项将获取登录用户所属的所有安全组、通讯组和 Azure AD 目录角色)。
"SecurityGroup"
id 标识符字符串 应用在目录中的唯一标识符。 此 ID 不是用于在任何协议事务中标识应用的标识符。 用于引用目录查询中的对象。 "f7f9acfc-ae0c-4d6c-b489-0a81dc1652dd"
identifierUris 字符串数组 用户定义的 URI,用于在 Web 应用的 Azure AD 租户中唯一标识该应用程序;如果应用是多租户的,则用于在已验证的自定义域中唯一标识该应用。 [
  "https://MyRegisteredApp"
]
informationalUrls 字符串 指定应用服务条款和隐私声明的链接。 服务条款和隐私声明通过用户同意体验展示给用户。 有关详细信息,请参阅如何:为已注册的 Azure AD 应用添加服务条款和隐私声明 {
   "marketing":"https://MyRegisteredApp/marketing",
   "privacy":"https://MyRegisteredApp/privacystatement",
   "support":"https://MyRegisteredApphttps://www.azure.cn/support",
   "termsOfService":"https://MyRegisteredApp/termsofservice"
}
keyCredentials 数组类型 包含对应用所分配的凭据、基于字符串的共享机密和 X.509 证书的引用。 在请求访问令牌时,可使用这些凭据(如果应用充当客户端而不是资源)。 [
 {
   "customKeyIdentifier":null,
   "endDate":"2018-09-13T00:00:00Z",
   "keyId":"<guid>",
   "startDate":"2017-09-12T00:00:00Z",
   "type":"AsymmetricX509Cert",
   "usage":"Verify",
   "value":null
  }
]
knownClientApplications 数组类型 如果解决方案包含两个部分:客户端应用和自定义 Web API 应用,则该值用于捆绑许可。 如果在此值中输入客户端应用的 appID,则用户只需许可该客户端应用一次。 Azure AD 将知道许可客户端意味着隐式许可 Web API,并自动为客户端和 Web API 同时预配服务主体。 客户端和 Web API 应用都必须在同一个租户中注册。 [GUID]
logoUrl 字符串 只读值,指向已在门户中上传的徽标的 CDN URL。 https://MyRegisteredAppLogo
logoutUrl 字符串 用于注销应用的 URL。 https://MyRegisteredAppLogout
name 字符串 应用的显示名称。 MyRegisteredApp
oauth2AllowImplicitFlow 布尔值 指定此 Web 应用是否可以请求 OAuth2.0 隐式流访问令牌。 默认值为 false。 此标志用于基于浏览器的应用,例如 Javascript 单页应用。 若要了解详细信息,请在目录中输入 OAuth 2.0 implicit grant flow,并查看有关隐式流的主题。 false
oauth2AllowIdTokenImplicitFlow 布尔值 指定此 Web 应用是否可以请求 OAuth2.0 隐式流 ID 令牌。 默认值为 false。 此标志用于基于浏览器的应用,例如 Javascript 单页应用。 false
oauth2Permissions 数组类型 指定 Web API(资源)应用向客户端应用公开的 OAuth 2.0 权限范围集合。 在许可期间,可将这些权限范围授予客户端应用。 [
  {
   "adminConsentDescription":"Allow the app to access resources on behalf of the signed-in user.",
   "adminConsentDisplayName":"Access resource1",
   "id":"<guid>",
   "isEnabled":true,
   "type":"User",
   "userConsentDescription":"Allow the app to access resource1 on your behalf.",
   "userConsentDisplayName":"Access resources",
   "value":"user_impersonation"
  }
]
oauth2RequiredPostResponse 布尔值 指定在 OAuth 2.0 令牌请求过程中,Azure AD 是否允许与 GET 请求相反的 POST 请求。 默认值为 false,即指定只允许 GET 请求。 false
parentalControlSettings 字符串 countriesBlockedForMinors 指定禁止未成年人使用该应用的国家/地区。
legalAgeGroupRule 指定适用于应用用户的法定年龄组规则。 可设置为 AllowRequireConsentForPrivacyServicesRequireConsentForMinorsRequireConsentForKidsBlockMinors
{
   "countriesBlockedForMinors":[],
   "legalAgeGroupRule":"Allow"
}
passwordCredentials 数组类型 请参阅 keyCredentials 属性的说明。 [
  {
   "customKeyIdentifier":null,
   "endDate":"2018-10-19T17:59:59.6521653Z",
   "keyId":"<guid>",
   "startDate":"2016-10-19T17:59:59.6521653Z",
   "value":null
   }
]
preAuthorizedApplications 数组类型 列出了应用程序和针对隐式同意的所请求权限。 要求管理员已针对应用程序表示同意。 preAuthorizedApplications 不要求用户同意所请求的权限。 preAuthorizedApplications 中列出的权限不要求用户同意。 但是,preAuthorizedApplications 中未列出的任何其他所请求权限都要求用户同意。 [
  {
    "appId": "abcdefg2-000a-1111-a0e5-812ed8dd72e8",
    "permissionIds": [
      "8748f7db-21fe-4c83-8ab5-53033933c8f1"
    ]
  }
]
replyUrlsWithType 字符串数组 此多值属性保存 Azure AD 在返回令牌时接受用作目标的已注册 redirect_uri 值列表。 每个 URI 值都应当包含一个关联的应用类型值。 支持的类型值为:WebInstalledClient "replyUrlsWithType": [
  {
     "url": "https://localhost:4400/services/office365/redirectTarget.html",
     "type": "InstalledClient"   
  }
]
requiredResourceAccess 数组类型 requiredResourceAccess 可以使用动态许可来驱动管理员许可体验,并驱动使用静态许可的用户的用户许可体验。 但是,它无法驱动常规性的用户许可体验。
resourceAppId 是应用需要访问的资源的唯一标识符。 此值应等于目标资源应用中声明的 appId。
resourceAccess 是一个数组,列出应用在指定的资源中所需的 OAuth2.0 权限范围和应用角色。 包含指定的资源的 idtype 值。
[
  {
    "resourceAppId":"00000002-0000-0000-c000-000000000000",
    "resourceAccess":[
      {
        "id":"311a71cc-e848-46a1-bdf8-97ff7156d8e6",
        "type":"Scope"
      }
    ]
  }
]
samlMetadataUrl 字符串 应用的 SAML 元数据 URL。 https://MyRegisteredAppSAMLMetadata
signInUrl 字符串 指定应用主页的 URL。 https://MyRegisteredApp
signInAudience 字符串 指定当前应用程序支持哪些 Microsoft 帐户。 支持的值是:
  • AzureADMyOrg - 在我的组织的 Azure AD 租户(即,单租户)中具有 Microsoft 工作或学校帐户的用户
  • AzureADMultipleOrgs - 在任何组织的 Azure AD 租户(即,多租户)中具有 Microsoft 工作或学校帐户的用户
  • AzureADandPersonalMicrosoftAccount - 在任何组织的 Azure AD 租户中具有个人 Microsoft 帐户、工作或学校帐户的用户
AzureADandPersonalMicrosoftAccount
tags 字符串数组 可用来对应用程序进行分类和标识的自定义字符串。 [
  "ProductionApp"
]

后续步骤

使用以下评论部分提供反馈,帮助我们改进和组织内容。