你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Microsoft.App containerApps/authConfigs 2022-03-01

Bicep 资源定义

可以使用目标操作部署 containerApps/authConfigs 资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.App/containerApps/authConfigs 资源,请将以下 Bicep 添加到模板。

resource symbolicname 'Microsoft.App/containerApps/authConfigs@2022-03-01' = {
  name: 'string'
  parent: resourceSymbolicName
  properties: {
    globalValidation: {
      excludedPaths: [
        'string'
      ]
      redirectToProvider: 'string'
      unauthenticatedClientAction: 'string'
    }
    httpSettings: {
      forwardProxy: {
        convention: 'string'
        customHostHeaderName: 'string'
        customProtoHeaderName: 'string'
      }
      requireHttps: bool
      routes: {
        apiPrefix: 'string'
      }
    }
    identityProviders: {
      apple: {
        enabled: bool
        login: {
          scopes: [
            'string'
          ]
        }
        registration: {
          clientId: 'string'
          clientSecretSettingName: 'string'
        }
      }
      azureActiveDirectory: {
        enabled: bool
        isAutoProvisioned: bool
        login: {
          disableWWWAuthenticate: bool
          loginParameters: [
            'string'
          ]
        }
        registration: {
          clientId: 'string'
          clientSecretCertificateIssuer: 'string'
          clientSecretCertificateSubjectAlternativeName: 'string'
          clientSecretCertificateThumbprint: 'string'
          clientSecretSettingName: 'string'
          openIdIssuer: 'string'
        }
        validation: {
          allowedAudiences: [
            'string'
          ]
          defaultAuthorizationPolicy: {
            allowedApplications: [
              'string'
            ]
            allowedPrincipals: {
              groups: [
                'string'
              ]
              identities: [
                'string'
              ]
            }
          }
          jwtClaimChecks: {
            allowedClientApplications: [
              'string'
            ]
            allowedGroups: [
              'string'
            ]
          }
        }
      }
      azureStaticWebApps: {
        enabled: bool
        registration: {
          clientId: 'string'
        }
      }
      customOpenIdConnectProviders: {
        {customized property}: {
          enabled: bool
          login: {
            nameClaimType: 'string'
            scopes: [
              'string'
            ]
          }
          registration: {
            clientCredential: {
              clientSecretSettingName: 'string'
              method: 'ClientSecretPost'
            }
            clientId: 'string'
            openIdConnectConfiguration: {
              authorizationEndpoint: 'string'
              certificationUri: 'string'
              issuer: 'string'
              tokenEndpoint: 'string'
              wellKnownOpenIdConfiguration: 'string'
            }
          }
        }
      }
      facebook: {
        enabled: bool
        graphApiVersion: 'string'
        login: {
          scopes: [
            'string'
          ]
        }
        registration: {
          appId: 'string'
          appSecretSettingName: 'string'
        }
      }
      gitHub: {
        enabled: bool
        login: {
          scopes: [
            'string'
          ]
        }
        registration: {
          clientId: 'string'
          clientSecretSettingName: 'string'
        }
      }
      google: {
        enabled: bool
        login: {
          scopes: [
            'string'
          ]
        }
        registration: {
          clientId: 'string'
          clientSecretSettingName: 'string'
        }
        validation: {
          allowedAudiences: [
            'string'
          ]
        }
      }
      twitter: {
        enabled: bool
        registration: {
          consumerKey: 'string'
          consumerSecretSettingName: 'string'
        }
      }
    }
    login: {
      allowedExternalRedirectUrls: [
        'string'
      ]
      cookieExpiration: {
        convention: 'string'
        timeToExpiration: 'string'
      }
      nonce: {
        nonceExpirationInterval: 'string'
        validateNonce: bool
      }
      preserveUrlFragmentsForLogins: bool
      routes: {
        logoutEndpoint: 'string'
      }
    }
    platform: {
      enabled: bool
      runtimeVersion: 'string'
    }
  }
}

属性值

containerApps/authConfigs

名字 描述 价值
名字 资源名称

了解如何在 Bicep中设置子资源的名称和类型。
string (必需)
父母 在 Bicep 中,可以为子资源指定父资源。 仅当子资源在父资源外部声明时,才需要添加此属性。

有关详细信息,请参阅 父资源外部的子资源
类型资源的符号名称:containerApps
性能 特定于 AuthConfig 资源的属性 AuthConfigProperties

AuthConfigProperties

名字 描述 价值
globalValidation 使用服务身份验证/授权确定用户的验证流的配置设置。 GlobalValidation
httpSettings 针对 ContainerApp 服务身份验证/授权发出的身份验证和授权请求的 HTTP 请求的配置设置。 HttpSettings
identityProviders 用于配置 ContainerApp 服务身份验证/授权的每个标识提供者的配置设置。 IdentityProviders
登录 使用 ContainerApp 服务身份验证/授权的用户登录流的配置设置。 登录
平台 ContainerApp 服务身份验证/授权平台的配置设置。 AuthPlatform

GlobalValidation

名字 描述 价值
excludedPaths 未经身份验证的流不会重定向到登录页的路径。 string[]
redirectToProvider 配置多个提供程序时要使用的默认身份验证提供程序。
仅当配置了多个提供程序和未经身份验证的客户端时,才需要此设置
操作设置为“RedirectToLoginPage”。
字符串
unauthenticatedClientAction 未经身份验证的客户端尝试访问应用时要执行的操作。 “AllowAnonymous”
“RedirectToLoginPage”
“Return401”
“Return403”

HttpSettings

名字 描述 价值
forwardProxy 用于发出请求的转发代理的配置设置。 ForwardProxy
requireHttps 如果允许身份验证/授权响应没有 HTTPS 方案,则 false;否则,true bool
路线 路径 HTTP 请求的配置设置。 HttpSettingsRoutes

ForwardProxy

名字 描述 价值
公约 用于确定所发出请求的 URL 的约定。 “Custom”
“NoProxy”
“Standard”
customHostHeaderName 包含请求主机的标头的名称。 字符串
customProtoHeaderName 包含请求方案的标头的名称。 字符串

HttpSettingsRoutes

名字 描述 价值
apiPrefix 所有身份验证/授权路径前面的前缀。 字符串

IdentityProviders

名字 描述 价值
苹果 Apple 提供程序的配置设置。 Apple
azureActiveDirectory Azure Active Directory 提供程序的配置设置。 AzureActiveDirectory
azureStaticWebApps Azure 静态 Web 应用提供程序的配置设置。 AzureStaticWebApps
customOpenIdConnectProviders 每个自定义 Open ID Connect 提供程序别名的名称映射
自定义 Open ID Connect 提供程序的配置设置。
IdentityProvidersCustomOpenIdConnectProviders
facebook Facebook 提供程序的配置设置。 Facebook
gitHub GitHub 提供程序的配置设置。 GitHub
谷歌 Google 提供程序的配置设置。 Google
Twitter 提供程序的配置设置。 Twitter

苹果

名字 描述 价值
启用 false 如果不应启用 Apple 提供商,尽管设置了注册;否则,true bool
登录 登录流的配置设置。 LoginScopes
注册 Apple 注册的配置设置。 AppleRegistration

LoginScopes

名字 描述 价值
范围 身份验证时应请求的范围列表。 string[]

AppleRegistration

名字 描述 价值
clientId 用于登录的应用的客户端 ID。 字符串
clientSecretSettingName 包含客户端密码的应用设置名称。 字符串

AzureActiveDirectory

名字 描述 价值
启用 false 如果不应启用 Azure Active Directory 提供程序,尽管设置了注册;否则,true bool
isAutoProvisioned 获取一个值,该值指示是否使用第一方工具自动预配 Azure AD 配置。
这是一个内部标志,主要用于支持 Azure 管理门户。 用户不应
读取或写入此属性。
bool
登录 Azure Active Directory 登录流的配置设置。 AzureActiveDirectoryLogin
注册 Azure Active Directory 应用注册的配置设置。 AzureActiveDirectoryRegistration
验证 Azure Active Directory 令牌验证流的配置设置。 AzureActiveDirectoryValidation

AzureActiveDirectoryLogin

名字 描述 价值
disableWWWAuthenticate true 是否应从请求中省略 www-authenticate 提供程序;否则,false bool
loginParameters 在以下情况下发送到 OpenID Connect 授权终结点的登录参数
用户登录。 每个参数必须采用“key=value”格式。
string[]

AzureActiveDirectoryRegistration

名字 描述 价值
clientId 此信赖方应用程序的客户端 ID,称为client_id。
若要使用 Azure Active Directory 启用 OpenID 连接身份验证或
其他第三方 OpenID Connect 提供程序。
有关 OpenID Connect 的详细信息:http://openid.net/specs/openid-connect-core-1_0.html
字符串
clientSecretCertificateIssuer 客户端机密指纹的替代方法,它是用于签名的证书的颁发者。 此属性充当
客户端机密证书指纹的替代项。 它也是可选的。
字符串
clientSecretCertificateSubjectAlternativeName 客户端机密指纹的替代方法,它是用于签名的证书的使用者可选名称。 此属性充当
客户端机密证书指纹的替代项。 它也是可选的。
字符串
clientSecretCertificateThumbprint 客户端机密的替代方法,即用于签名的证书的指纹。 此属性充当
客户端密码的替代项。 它也是可选的。
字符串
clientSecretSettingName 包含信赖方应用程序的客户端密码的应用设置名称。 字符串
openIdIssuer OpenID Connect 颁发者 URI,表示颁发此应用程序的访问令牌的实体。
使用 Azure Active Directory 时,此值是目录租户的 URI,例如 https://login.microsoftonline.com/v2.0/{tenant-guid}/.
此 URI 是令牌颁发者的区分大小写的标识符。
有关 OpenID Connect 发现的详细信息:http://openid.net/specs/openid-connect-discovery-1_0.html
字符串

AzureActiveDirectoryValidation

名字 描述 价值
allowedAudiences 可以成功进行身份验证/授权请求的访问群体列表。 string[]
defaultAuthorizationPolicy 默认授权策略的配置设置。 DefaultAuthorizationPolicy
jwtClaimChecks 验证 JWT 声明时应进行的检查的配置设置。 JwtClaimChecks

DefaultAuthorizationPolicy

名字 描述 价值
allowedApplications Azure Active Directory 允许的应用程序的配置设置。 string[]
allowedPrincipals Azure Active Directory 允许的主体的配置设置。 AllowedPrincipals

AllowedPrincipals

名字 描述 价值
允许的组的列表。 string[]
身份 允许的标识的列表。 string[]

JwtClaimChecks

名字 描述 价值
allowedClientApplications 允许的客户端应用程序列表。 string[]
allowedGroups 允许的组的列表。 string[]

AzureStaticWebApps

名字 描述 价值
启用 如果不应启用 Azure 静态 Web 应用提供程序(尽管设置了注册);false;否则,true bool
注册 Azure 静态 Web 应用注册的配置设置。 AzureStaticWebAppsRegistration

AzureStaticWebAppsRegistration

名字 描述 价值
clientId 用于登录的应用的客户端 ID。 字符串

IdentityProvidersCustomOpenIdConnectProviders

名字 描述 价值
{自定义属性} CustomOpenIdConnectProvider

CustomOpenIdConnectProvider

名字 描述 价值
启用 如果不应启用自定义 Open ID 提供程序提供程序,则 false;否则,true bool
登录 自定义 Open ID Connect 提供程序登录流的配置设置。 OpenIdConnectLogin
注册 自定义 Open ID Connect 提供程序的应用注册的配置设置。 OpenIdConnectRegistration

OpenIdConnectLogin

名字 描述 价值
nameClaimType 包含用户名称的声明的名称。 字符串
范围 身份验证时应请求的范围列表。 string[]

OpenIdConnectRegistration

名字 描述 价值
clientCredential 自定义 Open ID Connect 提供程序的身份验证凭据。 OpenIdConnectClientCredential
clientId 自定义 Open ID Connect 提供程序的客户端 ID。 字符串
openIdConnectConfiguration 用于自定义 Open ID Connect 提供程序的终结点的配置设置。 OpenIdConnectConfig

OpenIdConnectClientCredential

名字 描述 价值
clientSecretSettingName 包含自定义 Open ID Connect 提供程序的客户端密码的应用设置。 字符串
方法 应用于对用户进行身份验证的方法。 “ClientSecretPost”

OpenIdConnectConfig

名字 描述 价值
authorizationEndpoint 用于发出授权请求的终结点。 字符串
certificationUri 提供验证令牌所需的密钥的终结点。 字符串
发行 颁发令牌的终结点。 字符串
tokenEndpoint 用于请求令牌的终结点。 字符串
wellKnownOpenIdConfiguration 包含提供程序的所有配置终结点的终结点。 字符串

Facebook

名字 描述 价值
启用 false 如果不应启用 Facebook 提供商,尽管设置了注册;否则,true bool
graphApiVersion 登录时要使用的 Facebook API 版本。 字符串
登录 登录流的配置设置。 LoginScopes
注册 Facebook 提供程序的应用注册的配置设置。 AppRegistration

AppRegistration

名字 描述 价值
appId 用于登录的应用的应用 ID。 字符串
appSecretSettingName 包含应用机密的应用设置名称。 字符串

GitHub

名字 描述 价值
启用 false 即使设置了注册,也不应启用 GitHub 提供程序;否则,true bool
登录 登录流的配置设置。 LoginScopes
注册 GitHub 提供程序的应用注册的配置设置。 ClientRegistration

ClientRegistration

名字 描述 价值
clientId 用于登录的应用的客户端 ID。 字符串
clientSecretSettingName 包含客户端密码的应用设置名称。 字符串

谷歌

名字 描述 价值
启用 false 如果不应启用 Google 提供商,尽管设置了注册;否则,true bool
登录 登录流的配置设置。 LoginScopes
注册 Google 提供商的应用注册的配置设置。 ClientRegistration
验证 Azure Active Directory 令牌验证流的配置设置。 AllowedAudiencesValidation

AllowedAudiencesValidation

名字 描述 价值
allowedAudiences 要从中验证 JWT 令牌的允许访问群体列表的配置设置。 string[]

名字 描述 价值
启用 如果尽管设置了注册,但不应启用 Twitter 提供程序,则 false;否则,true bool
注册 Twitter 提供程序的应用注册的配置设置。 TwitterRegistration

TwitterRegistration

名字 描述 价值
consumerKey 用于登录的 Twitter 应用程序的 OAuth 1.0a 使用者密钥。
启用 Twitter 登录需要此设置。
Twitter Sign-In 文档:https://dev.twitter.com/web/sign-in
字符串
consumerSecretSettingName 包含 Twitter 的 OAuth 1.0a 使用者机密的应用设置名称
用于登录的应用程序。
字符串

登录

名字 描述 价值
allowedExternalRedirectUrls 作为登录或注销应用的一部分,可重定向到的外部 URL。 请注意,将忽略 URL 的查询字符串部分。
这是 Windows 应用商店应用程序后端通常需要的高级设置。
请注意,始终允许当前域中的 URL。
string[]
cookieExpiration 会话 Cookie 过期的配置设置。 CookieExpiration
nonce 登录流中使用的 nonce 的配置设置。 Nonce
preserveUrlFragmentsForLogins 如果发出登录请求后保留来自请求的片段,则 true;否则,false bool
路线 指定用于登录和注销请求的终结点的路由。 LoginRoutes

CookieExpiration

名字 描述 价值
公约 确定会话 Cookie 过期时使用的约定。 “FixedTime”
“IdentityProviderDerived”
timeToExpiration 发出请求后的时间,会话 Cookie 应过期。 字符串

Nonce

名字 描述 价值
nonceExpirationInterval 发出请求后,nonce 应过期的时间。 字符串
validateNonce 如果完成登录流时不应验证 nonce,则 false;否则,true bool

LoginRoutes

名字 描述 价值
logoutEndpoint 应在其中发出注销请求的终结点。 字符串

AuthPlatform

名字 描述 价值
启用 如果为当前应用启用了身份验证/授权功能,则 true;否则,false bool
runtimeVersion 用于当前应用的身份验证/授权功能的 RuntimeVersion。
此值中的设置可以控制身份验证/授权模块中某些功能的行为。
字符串

ARM 模板资源定义

可以使用目标操作部署 containerApps/authConfigs 资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.App/containerApps/authConfigs 资源,请将以下 JSON 添加到模板。

{
  "type": "Microsoft.App/containerApps/authConfigs",
  "apiVersion": "2022-03-01",
  "name": "string",
  "properties": {
    "globalValidation": {
      "excludedPaths": [ "string" ],
      "redirectToProvider": "string",
      "unauthenticatedClientAction": "string"
    },
    "httpSettings": {
      "forwardProxy": {
        "convention": "string",
        "customHostHeaderName": "string",
        "customProtoHeaderName": "string"
      },
      "requireHttps": "bool",
      "routes": {
        "apiPrefix": "string"
      }
    },
    "identityProviders": {
      "apple": {
        "enabled": "bool",
        "login": {
          "scopes": [ "string" ]
        },
        "registration": {
          "clientId": "string",
          "clientSecretSettingName": "string"
        }
      },
      "azureActiveDirectory": {
        "enabled": "bool",
        "isAutoProvisioned": "bool",
        "login": {
          "disableWWWAuthenticate": "bool",
          "loginParameters": [ "string" ]
        },
        "registration": {
          "clientId": "string",
          "clientSecretCertificateIssuer": "string",
          "clientSecretCertificateSubjectAlternativeName": "string",
          "clientSecretCertificateThumbprint": "string",
          "clientSecretSettingName": "string",
          "openIdIssuer": "string"
        },
        "validation": {
          "allowedAudiences": [ "string" ],
          "defaultAuthorizationPolicy": {
            "allowedApplications": [ "string" ],
            "allowedPrincipals": {
              "groups": [ "string" ],
              "identities": [ "string" ]
            }
          },
          "jwtClaimChecks": {
            "allowedClientApplications": [ "string" ],
            "allowedGroups": [ "string" ]
          }
        }
      },
      "azureStaticWebApps": {
        "enabled": "bool",
        "registration": {
          "clientId": "string"
        }
      },
      "customOpenIdConnectProviders": {
        "{customized property}": {
          "enabled": "bool",
          "login": {
            "nameClaimType": "string",
            "scopes": [ "string" ]
          },
          "registration": {
            "clientCredential": {
              "clientSecretSettingName": "string",
              "method": "ClientSecretPost"
            },
            "clientId": "string",
            "openIdConnectConfiguration": {
              "authorizationEndpoint": "string",
              "certificationUri": "string",
              "issuer": "string",
              "tokenEndpoint": "string",
              "wellKnownOpenIdConfiguration": "string"
            }
          }
        }
      },
      "facebook": {
        "enabled": "bool",
        "graphApiVersion": "string",
        "login": {
          "scopes": [ "string" ]
        },
        "registration": {
          "appId": "string",
          "appSecretSettingName": "string"
        }
      },
      "gitHub": {
        "enabled": "bool",
        "login": {
          "scopes": [ "string" ]
        },
        "registration": {
          "clientId": "string",
          "clientSecretSettingName": "string"
        }
      },
      "google": {
        "enabled": "bool",
        "login": {
          "scopes": [ "string" ]
        },
        "registration": {
          "clientId": "string",
          "clientSecretSettingName": "string"
        },
        "validation": {
          "allowedAudiences": [ "string" ]
        }
      },
      "twitter": {
        "enabled": "bool",
        "registration": {
          "consumerKey": "string",
          "consumerSecretSettingName": "string"
        }
      }
    },
    "login": {
      "allowedExternalRedirectUrls": [ "string" ],
      "cookieExpiration": {
        "convention": "string",
        "timeToExpiration": "string"
      },
      "nonce": {
        "nonceExpirationInterval": "string",
        "validateNonce": "bool"
      },
      "preserveUrlFragmentsForLogins": "bool",
      "routes": {
        "logoutEndpoint": "string"
      }
    },
    "platform": {
      "enabled": "bool",
      "runtimeVersion": "string"
    }
  }
}

属性值

containerApps/authConfigs

名字 描述 价值
类型 资源类型 “Microsoft.App/containerApps/authConfigs”
apiVersion 资源 API 版本 '2022-03-01'
名字 资源名称

了解如何在 JSON ARM 模板中设置子资源的名称和类型。
string (必需)
性能 特定于 AuthConfig 资源的属性 AuthConfigProperties

AuthConfigProperties

名字 描述 价值
globalValidation 使用服务身份验证/授权确定用户的验证流的配置设置。 GlobalValidation
httpSettings 针对 ContainerApp 服务身份验证/授权发出的身份验证和授权请求的 HTTP 请求的配置设置。 HttpSettings
identityProviders 用于配置 ContainerApp 服务身份验证/授权的每个标识提供者的配置设置。 IdentityProviders
登录 使用 ContainerApp 服务身份验证/授权的用户登录流的配置设置。 登录
平台 ContainerApp 服务身份验证/授权平台的配置设置。 AuthPlatform

GlobalValidation

名字 描述 价值
excludedPaths 未经身份验证的流不会重定向到登录页的路径。 string[]
redirectToProvider 配置多个提供程序时要使用的默认身份验证提供程序。
仅当配置了多个提供程序和未经身份验证的客户端时,才需要此设置
操作设置为“RedirectToLoginPage”。
字符串
unauthenticatedClientAction 未经身份验证的客户端尝试访问应用时要执行的操作。 “AllowAnonymous”
“RedirectToLoginPage”
“Return401”
“Return403”

HttpSettings

名字 描述 价值
forwardProxy 用于发出请求的转发代理的配置设置。 ForwardProxy
requireHttps 如果允许身份验证/授权响应没有 HTTPS 方案,则 false;否则,true bool
路线 路径 HTTP 请求的配置设置。 HttpSettingsRoutes

ForwardProxy

名字 描述 价值
公约 用于确定所发出请求的 URL 的约定。 “Custom”
“NoProxy”
“Standard”
customHostHeaderName 包含请求主机的标头的名称。 字符串
customProtoHeaderName 包含请求方案的标头的名称。 字符串

HttpSettingsRoutes

名字 描述 价值
apiPrefix 所有身份验证/授权路径前面的前缀。 字符串

IdentityProviders

名字 描述 价值
苹果 Apple 提供程序的配置设置。 Apple
azureActiveDirectory Azure Active Directory 提供程序的配置设置。 AzureActiveDirectory
azureStaticWebApps Azure 静态 Web 应用提供程序的配置设置。 AzureStaticWebApps
customOpenIdConnectProviders 每个自定义 Open ID Connect 提供程序别名的名称映射
自定义 Open ID Connect 提供程序的配置设置。
IdentityProvidersCustomOpenIdConnectProviders
facebook Facebook 提供程序的配置设置。 Facebook
gitHub GitHub 提供程序的配置设置。 GitHub
谷歌 Google 提供程序的配置设置。 Google
Twitter 提供程序的配置设置。 Twitter

苹果

名字 描述 价值
启用 false 如果不应启用 Apple 提供商,尽管设置了注册;否则,true bool
登录 登录流的配置设置。 LoginScopes
注册 Apple 注册的配置设置。 AppleRegistration

LoginScopes

名字 描述 价值
范围 身份验证时应请求的范围列表。 string[]

AppleRegistration

名字 描述 价值
clientId 用于登录的应用的客户端 ID。 字符串
clientSecretSettingName 包含客户端密码的应用设置名称。 字符串

AzureActiveDirectory

名字 描述 价值
启用 false 如果不应启用 Azure Active Directory 提供程序,尽管设置了注册;否则,true bool
isAutoProvisioned 获取一个值,该值指示是否使用第一方工具自动预配 Azure AD 配置。
这是一个内部标志,主要用于支持 Azure 管理门户。 用户不应
读取或写入此属性。
bool
登录 Azure Active Directory 登录流的配置设置。 AzureActiveDirectoryLogin
注册 Azure Active Directory 应用注册的配置设置。 AzureActiveDirectoryRegistration
验证 Azure Active Directory 令牌验证流的配置设置。 AzureActiveDirectoryValidation

AzureActiveDirectoryLogin

名字 描述 价值
disableWWWAuthenticate true 是否应从请求中省略 www-authenticate 提供程序;否则,false bool
loginParameters 在以下情况下发送到 OpenID Connect 授权终结点的登录参数
用户登录。 每个参数必须采用“key=value”格式。
string[]

AzureActiveDirectoryRegistration

名字 描述 价值
clientId 此信赖方应用程序的客户端 ID,称为client_id。
若要使用 Azure Active Directory 启用 OpenID 连接身份验证或
其他第三方 OpenID Connect 提供程序。
有关 OpenID Connect 的详细信息:http://openid.net/specs/openid-connect-core-1_0.html
字符串
clientSecretCertificateIssuer 客户端机密指纹的替代方法,它是用于签名的证书的颁发者。 此属性充当
客户端机密证书指纹的替代项。 它也是可选的。
字符串
clientSecretCertificateSubjectAlternativeName 客户端机密指纹的替代方法,它是用于签名的证书的使用者可选名称。 此属性充当
客户端机密证书指纹的替代项。 它也是可选的。
字符串
clientSecretCertificateThumbprint 客户端机密的替代方法,即用于签名的证书的指纹。 此属性充当
客户端密码的替代项。 它也是可选的。
字符串
clientSecretSettingName 包含信赖方应用程序的客户端密码的应用设置名称。 字符串
openIdIssuer OpenID Connect 颁发者 URI,表示颁发此应用程序的访问令牌的实体。
使用 Azure Active Directory 时,此值是目录租户的 URI,例如 https://login.microsoftonline.com/v2.0/{tenant-guid}/.
此 URI 是令牌颁发者的区分大小写的标识符。
有关 OpenID Connect 发现的详细信息:http://openid.net/specs/openid-connect-discovery-1_0.html
字符串

AzureActiveDirectoryValidation

名字 描述 价值
allowedAudiences 可以成功进行身份验证/授权请求的访问群体列表。 string[]
defaultAuthorizationPolicy 默认授权策略的配置设置。 DefaultAuthorizationPolicy
jwtClaimChecks 验证 JWT 声明时应进行的检查的配置设置。 JwtClaimChecks

DefaultAuthorizationPolicy

名字 描述 价值
allowedApplications Azure Active Directory 允许的应用程序的配置设置。 string[]
allowedPrincipals Azure Active Directory 允许的主体的配置设置。 AllowedPrincipals

AllowedPrincipals

名字 描述 价值
允许的组的列表。 string[]
身份 允许的标识的列表。 string[]

JwtClaimChecks

名字 描述 价值
allowedClientApplications 允许的客户端应用程序列表。 string[]
allowedGroups 允许的组的列表。 string[]

AzureStaticWebApps

名字 描述 价值
启用 如果不应启用 Azure 静态 Web 应用提供程序(尽管设置了注册);false;否则,true bool
注册 Azure 静态 Web 应用注册的配置设置。 AzureStaticWebAppsRegistration

AzureStaticWebAppsRegistration

名字 描述 价值
clientId 用于登录的应用的客户端 ID。 字符串

IdentityProvidersCustomOpenIdConnectProviders

名字 描述 价值
{自定义属性} CustomOpenIdConnectProvider

CustomOpenIdConnectProvider

名字 描述 价值
启用 如果不应启用自定义 Open ID 提供程序提供程序,则 false;否则,true bool
登录 自定义 Open ID Connect 提供程序登录流的配置设置。 OpenIdConnectLogin
注册 自定义 Open ID Connect 提供程序的应用注册的配置设置。 OpenIdConnectRegistration

OpenIdConnectLogin

名字 描述 价值
nameClaimType 包含用户名称的声明的名称。 字符串
范围 身份验证时应请求的范围列表。 string[]

OpenIdConnectRegistration

名字 描述 价值
clientCredential 自定义 Open ID Connect 提供程序的身份验证凭据。 OpenIdConnectClientCredential
clientId 自定义 Open ID Connect 提供程序的客户端 ID。 字符串
openIdConnectConfiguration 用于自定义 Open ID Connect 提供程序的终结点的配置设置。 OpenIdConnectConfig

OpenIdConnectClientCredential

名字 描述 价值
clientSecretSettingName 包含自定义 Open ID Connect 提供程序的客户端密码的应用设置。 字符串
方法 应用于对用户进行身份验证的方法。 “ClientSecretPost”

OpenIdConnectConfig

名字 描述 价值
authorizationEndpoint 用于发出授权请求的终结点。 字符串
certificationUri 提供验证令牌所需的密钥的终结点。 字符串
发行 颁发令牌的终结点。 字符串
tokenEndpoint 用于请求令牌的终结点。 字符串
wellKnownOpenIdConfiguration 包含提供程序的所有配置终结点的终结点。 字符串

Facebook

名字 描述 价值
启用 false 如果不应启用 Facebook 提供商,尽管设置了注册;否则,true bool
graphApiVersion 登录时要使用的 Facebook API 版本。 字符串
登录 登录流的配置设置。 LoginScopes
注册 Facebook 提供程序的应用注册的配置设置。 AppRegistration

AppRegistration

名字 描述 价值
appId 用于登录的应用的应用 ID。 字符串
appSecretSettingName 包含应用机密的应用设置名称。 字符串

GitHub

名字 描述 价值
启用 false 即使设置了注册,也不应启用 GitHub 提供程序;否则,true bool
登录 登录流的配置设置。 LoginScopes
注册 GitHub 提供程序的应用注册的配置设置。 ClientRegistration

ClientRegistration

名字 描述 价值
clientId 用于登录的应用的客户端 ID。 字符串
clientSecretSettingName 包含客户端密码的应用设置名称。 字符串

谷歌

名字 描述 价值
启用 false 如果不应启用 Google 提供商,尽管设置了注册;否则,true bool
登录 登录流的配置设置。 LoginScopes
注册 Google 提供商的应用注册的配置设置。 ClientRegistration
验证 Azure Active Directory 令牌验证流的配置设置。 AllowedAudiencesValidation

AllowedAudiencesValidation

名字 描述 价值
allowedAudiences 要从中验证 JWT 令牌的允许访问群体列表的配置设置。 string[]

名字 描述 价值
启用 如果尽管设置了注册,但不应启用 Twitter 提供程序,则 false;否则,true bool
注册 Twitter 提供程序的应用注册的配置设置。 TwitterRegistration

TwitterRegistration

名字 描述 价值
consumerKey 用于登录的 Twitter 应用程序的 OAuth 1.0a 使用者密钥。
启用 Twitter 登录需要此设置。
Twitter Sign-In 文档:https://dev.twitter.com/web/sign-in
字符串
consumerSecretSettingName 包含 Twitter 的 OAuth 1.0a 使用者机密的应用设置名称
用于登录的应用程序。
字符串

登录

名字 描述 价值
allowedExternalRedirectUrls 作为登录或注销应用的一部分,可重定向到的外部 URL。 请注意,将忽略 URL 的查询字符串部分。
这是 Windows 应用商店应用程序后端通常需要的高级设置。
请注意,始终允许当前域中的 URL。
string[]
cookieExpiration 会话 Cookie 过期的配置设置。 CookieExpiration
nonce 登录流中使用的 nonce 的配置设置。 Nonce
preserveUrlFragmentsForLogins 如果发出登录请求后保留来自请求的片段,则 true;否则,false bool
路线 指定用于登录和注销请求的终结点的路由。 LoginRoutes

CookieExpiration

名字 描述 价值
公约 确定会话 Cookie 过期时使用的约定。 “FixedTime”
“IdentityProviderDerived”
timeToExpiration 发出请求后的时间,会话 Cookie 应过期。 字符串

Nonce

名字 描述 价值
nonceExpirationInterval 发出请求后,nonce 应过期的时间。 字符串
validateNonce 如果完成登录流时不应验证 nonce,则 false;否则,true bool

LoginRoutes

名字 描述 价值
logoutEndpoint 应在其中发出注销请求的终结点。 字符串

AuthPlatform

名字 描述 价值
启用 如果为当前应用启用了身份验证/授权功能,则 true;否则,false bool
runtimeVersion 用于当前应用的身份验证/授权功能的 RuntimeVersion。
此值中的设置可以控制身份验证/授权模块中某些功能的行为。
字符串

Terraform (AzAPI 提供程序)资源定义

可以使用目标操作部署 containerApps/authConfigs 资源类型:

  • 资源组

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.App/containerApps/authConfigs 资源,请将以下 Terraform 添加到模板。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.App/containerApps/authConfigs@2022-03-01"
  name = "string"
  parent_id = "string"
  body = jsonencode({
    properties = {
      globalValidation = {
        excludedPaths = [
          "string"
        ]
        redirectToProvider = "string"
        unauthenticatedClientAction = "string"
      }
      httpSettings = {
        forwardProxy = {
          convention = "string"
          customHostHeaderName = "string"
          customProtoHeaderName = "string"
        }
        requireHttps = bool
        routes = {
          apiPrefix = "string"
        }
      }
      identityProviders = {
        apple = {
          enabled = bool
          login = {
            scopes = [
              "string"
            ]
          }
          registration = {
            clientId = "string"
            clientSecretSettingName = "string"
          }
        }
        azureActiveDirectory = {
          enabled = bool
          isAutoProvisioned = bool
          login = {
            disableWWWAuthenticate = bool
            loginParameters = [
              "string"
            ]
          }
          registration = {
            clientId = "string"
            clientSecretCertificateIssuer = "string"
            clientSecretCertificateSubjectAlternativeName = "string"
            clientSecretCertificateThumbprint = "string"
            clientSecretSettingName = "string"
            openIdIssuer = "string"
          }
          validation = {
            allowedAudiences = [
              "string"
            ]
            defaultAuthorizationPolicy = {
              allowedApplications = [
                "string"
              ]
              allowedPrincipals = {
                groups = [
                  "string"
                ]
                identities = [
                  "string"
                ]
              }
            }
            jwtClaimChecks = {
              allowedClientApplications = [
                "string"
              ]
              allowedGroups = [
                "string"
              ]
            }
          }
        }
        azureStaticWebApps = {
          enabled = bool
          registration = {
            clientId = "string"
          }
        }
        customOpenIdConnectProviders = {
          {customized property} = {
            enabled = bool
            login = {
              nameClaimType = "string"
              scopes = [
                "string"
              ]
            }
            registration = {
              clientCredential = {
                clientSecretSettingName = "string"
                method = "ClientSecretPost"
              }
              clientId = "string"
              openIdConnectConfiguration = {
                authorizationEndpoint = "string"
                certificationUri = "string"
                issuer = "string"
                tokenEndpoint = "string"
                wellKnownOpenIdConfiguration = "string"
              }
            }
          }
        }
        facebook = {
          enabled = bool
          graphApiVersion = "string"
          login = {
            scopes = [
              "string"
            ]
          }
          registration = {
            appId = "string"
            appSecretSettingName = "string"
          }
        }
        gitHub = {
          enabled = bool
          login = {
            scopes = [
              "string"
            ]
          }
          registration = {
            clientId = "string"
            clientSecretSettingName = "string"
          }
        }
        google = {
          enabled = bool
          login = {
            scopes = [
              "string"
            ]
          }
          registration = {
            clientId = "string"
            clientSecretSettingName = "string"
          }
          validation = {
            allowedAudiences = [
              "string"
            ]
          }
        }
        twitter = {
          enabled = bool
          registration = {
            consumerKey = "string"
            consumerSecretSettingName = "string"
          }
        }
      }
      login = {
        allowedExternalRedirectUrls = [
          "string"
        ]
        cookieExpiration = {
          convention = "string"
          timeToExpiration = "string"
        }
        nonce = {
          nonceExpirationInterval = "string"
          validateNonce = bool
        }
        preserveUrlFragmentsForLogins = bool
        routes = {
          logoutEndpoint = "string"
        }
      }
      platform = {
        enabled = bool
        runtimeVersion = "string"
      }
    }
  })
}

属性值

containerApps/authConfigs

名字 描述 价值
类型 资源类型 “Microsoft.App/containerApps/authConfigs@2022-03-01”
名字 资源名称 string (必需)
parent_id 此资源的父资源的 ID。 类型资源的 ID:containerApps
性能 特定于 AuthConfig 资源的属性 AuthConfigProperties

AuthConfigProperties

名字 描述 价值
globalValidation 使用服务身份验证/授权确定用户的验证流的配置设置。 GlobalValidation
httpSettings 针对 ContainerApp 服务身份验证/授权发出的身份验证和授权请求的 HTTP 请求的配置设置。 HttpSettings
identityProviders 用于配置 ContainerApp 服务身份验证/授权的每个标识提供者的配置设置。 IdentityProviders
登录 使用 ContainerApp 服务身份验证/授权的用户登录流的配置设置。 登录
平台 ContainerApp 服务身份验证/授权平台的配置设置。 AuthPlatform

GlobalValidation

名字 描述 价值
excludedPaths 未经身份验证的流不会重定向到登录页的路径。 string[]
redirectToProvider 配置多个提供程序时要使用的默认身份验证提供程序。
仅当配置了多个提供程序和未经身份验证的客户端时,才需要此设置
操作设置为“RedirectToLoginPage”。
字符串
unauthenticatedClientAction 未经身份验证的客户端尝试访问应用时要执行的操作。 “AllowAnonymous”
“RedirectToLoginPage”
“Return401”
“Return403”

HttpSettings

名字 描述 价值
forwardProxy 用于发出请求的转发代理的配置设置。 ForwardProxy
requireHttps 如果允许身份验证/授权响应没有 HTTPS 方案,则 false;否则,true bool
路线 路径 HTTP 请求的配置设置。 HttpSettingsRoutes

ForwardProxy

名字 描述 价值
公约 用于确定所发出请求的 URL 的约定。 “Custom”
“NoProxy”
“Standard”
customHostHeaderName 包含请求主机的标头的名称。 字符串
customProtoHeaderName 包含请求方案的标头的名称。 字符串

HttpSettingsRoutes

名字 描述 价值
apiPrefix 所有身份验证/授权路径前面的前缀。 字符串

IdentityProviders

名字 描述 价值
苹果 Apple 提供程序的配置设置。 Apple
azureActiveDirectory Azure Active Directory 提供程序的配置设置。 AzureActiveDirectory
azureStaticWebApps Azure 静态 Web 应用提供程序的配置设置。 AzureStaticWebApps
customOpenIdConnectProviders 每个自定义 Open ID Connect 提供程序别名的名称映射
自定义 Open ID Connect 提供程序的配置设置。
IdentityProvidersCustomOpenIdConnectProviders
facebook Facebook 提供程序的配置设置。 Facebook
gitHub GitHub 提供程序的配置设置。 GitHub
谷歌 Google 提供程序的配置设置。 Google
Twitter 提供程序的配置设置。 Twitter

苹果

名字 描述 价值
启用 false 如果不应启用 Apple 提供商,尽管设置了注册;否则,true bool
登录 登录流的配置设置。 LoginScopes
注册 Apple 注册的配置设置。 AppleRegistration

LoginScopes

名字 描述 价值
范围 身份验证时应请求的范围列表。 string[]

AppleRegistration

名字 描述 价值
clientId 用于登录的应用的客户端 ID。 字符串
clientSecretSettingName 包含客户端密码的应用设置名称。 字符串

AzureActiveDirectory

名字 描述 价值
启用 false 如果不应启用 Azure Active Directory 提供程序,尽管设置了注册;否则,true bool
isAutoProvisioned 获取一个值,该值指示是否使用第一方工具自动预配 Azure AD 配置。
这是一个内部标志,主要用于支持 Azure 管理门户。 用户不应
读取或写入此属性。
bool
登录 Azure Active Directory 登录流的配置设置。 AzureActiveDirectoryLogin
注册 Azure Active Directory 应用注册的配置设置。 AzureActiveDirectoryRegistration
验证 Azure Active Directory 令牌验证流的配置设置。 AzureActiveDirectoryValidation

AzureActiveDirectoryLogin

名字 描述 价值
disableWWWAuthenticate true 是否应从请求中省略 www-authenticate 提供程序;否则,false bool
loginParameters 在以下情况下发送到 OpenID Connect 授权终结点的登录参数
用户登录。 每个参数必须采用“key=value”格式。
string[]

AzureActiveDirectoryRegistration

名字 描述 价值
clientId 此信赖方应用程序的客户端 ID,称为client_id。
若要使用 Azure Active Directory 启用 OpenID 连接身份验证或
其他第三方 OpenID Connect 提供程序。
有关 OpenID Connect 的详细信息:http://openid.net/specs/openid-connect-core-1_0.html
字符串
clientSecretCertificateIssuer 客户端机密指纹的替代方法,它是用于签名的证书的颁发者。 此属性充当
客户端机密证书指纹的替代项。 它也是可选的。
字符串
clientSecretCertificateSubjectAlternativeName 客户端机密指纹的替代方法,它是用于签名的证书的使用者可选名称。 此属性充当
客户端机密证书指纹的替代项。 它也是可选的。
字符串
clientSecretCertificateThumbprint 客户端机密的替代方法,即用于签名的证书的指纹。 此属性充当
客户端密码的替代项。 它也是可选的。
字符串
clientSecretSettingName 包含信赖方应用程序的客户端密码的应用设置名称。 字符串
openIdIssuer OpenID Connect 颁发者 URI,表示颁发此应用程序的访问令牌的实体。
使用 Azure Active Directory 时,此值是目录租户的 URI,例如 https://login.microsoftonline.com/v2.0/{tenant-guid}/.
此 URI 是令牌颁发者的区分大小写的标识符。
有关 OpenID Connect 发现的详细信息:http://openid.net/specs/openid-connect-discovery-1_0.html
字符串

AzureActiveDirectoryValidation

名字 描述 价值
allowedAudiences 可以成功进行身份验证/授权请求的访问群体列表。 string[]
defaultAuthorizationPolicy 默认授权策略的配置设置。 DefaultAuthorizationPolicy
jwtClaimChecks 验证 JWT 声明时应进行的检查的配置设置。 JwtClaimChecks

DefaultAuthorizationPolicy

名字 描述 价值
allowedApplications Azure Active Directory 允许的应用程序的配置设置。 string[]
allowedPrincipals Azure Active Directory 允许的主体的配置设置。 AllowedPrincipals

AllowedPrincipals

名字 描述 价值
允许的组的列表。 string[]
身份 允许的标识的列表。 string[]

JwtClaimChecks

名字 描述 价值
allowedClientApplications 允许的客户端应用程序列表。 string[]
allowedGroups 允许的组的列表。 string[]

AzureStaticWebApps

名字 描述 价值
启用 如果不应启用 Azure 静态 Web 应用提供程序(尽管设置了注册);false;否则,true bool
注册 Azure 静态 Web 应用注册的配置设置。 AzureStaticWebAppsRegistration

AzureStaticWebAppsRegistration

名字 描述 价值
clientId 用于登录的应用的客户端 ID。 字符串

IdentityProvidersCustomOpenIdConnectProviders

名字 描述 价值
{自定义属性} CustomOpenIdConnectProvider

CustomOpenIdConnectProvider

名字 描述 价值
启用 如果不应启用自定义 Open ID 提供程序提供程序,则 false;否则,true bool
登录 自定义 Open ID Connect 提供程序登录流的配置设置。 OpenIdConnectLogin
注册 自定义 Open ID Connect 提供程序的应用注册的配置设置。 OpenIdConnectRegistration

OpenIdConnectLogin

名字 描述 价值
nameClaimType 包含用户名称的声明的名称。 字符串
范围 身份验证时应请求的范围列表。 string[]

OpenIdConnectRegistration

名字 描述 价值
clientCredential 自定义 Open ID Connect 提供程序的身份验证凭据。 OpenIdConnectClientCredential
clientId 自定义 Open ID Connect 提供程序的客户端 ID。 字符串
openIdConnectConfiguration 用于自定义 Open ID Connect 提供程序的终结点的配置设置。 OpenIdConnectConfig

OpenIdConnectClientCredential

名字 描述 价值
clientSecretSettingName 包含自定义 Open ID Connect 提供程序的客户端密码的应用设置。 字符串
方法 应用于对用户进行身份验证的方法。 “ClientSecretPost”

OpenIdConnectConfig

名字 描述 价值
authorizationEndpoint 用于发出授权请求的终结点。 字符串
certificationUri 提供验证令牌所需的密钥的终结点。 字符串
发行 颁发令牌的终结点。 字符串
tokenEndpoint 用于请求令牌的终结点。 字符串
wellKnownOpenIdConfiguration 包含提供程序的所有配置终结点的终结点。 字符串

Facebook

名字 描述 价值
启用 false 如果不应启用 Facebook 提供商,尽管设置了注册;否则,true bool
graphApiVersion 登录时要使用的 Facebook API 版本。 字符串
登录 登录流的配置设置。 LoginScopes
注册 Facebook 提供程序的应用注册的配置设置。 AppRegistration

AppRegistration

名字 描述 价值
appId 用于登录的应用的应用 ID。 字符串
appSecretSettingName 包含应用机密的应用设置名称。 字符串

GitHub

名字 描述 价值
启用 false 即使设置了注册,也不应启用 GitHub 提供程序;否则,true bool
登录 登录流的配置设置。 LoginScopes
注册 GitHub 提供程序的应用注册的配置设置。 ClientRegistration

ClientRegistration

名字 描述 价值
clientId 用于登录的应用的客户端 ID。 字符串
clientSecretSettingName 包含客户端密码的应用设置名称。 字符串

谷歌

名字 描述 价值
启用 false 如果不应启用 Google 提供商,尽管设置了注册;否则,true bool
登录 登录流的配置设置。 LoginScopes
注册 Google 提供商的应用注册的配置设置。 ClientRegistration
验证 Azure Active Directory 令牌验证流的配置设置。 AllowedAudiencesValidation

AllowedAudiencesValidation

名字 描述 价值
allowedAudiences 要从中验证 JWT 令牌的允许访问群体列表的配置设置。 string[]

名字 描述 价值
启用 如果尽管设置了注册,但不应启用 Twitter 提供程序,则 false;否则,true bool
注册 Twitter 提供程序的应用注册的配置设置。 TwitterRegistration

TwitterRegistration

名字 描述 价值
consumerKey 用于登录的 Twitter 应用程序的 OAuth 1.0a 使用者密钥。
启用 Twitter 登录需要此设置。
Twitter Sign-In 文档:https://dev.twitter.com/web/sign-in
字符串
consumerSecretSettingName 包含 Twitter 的 OAuth 1.0a 使用者机密的应用设置名称
用于登录的应用程序。
字符串

登录

名字 描述 价值
allowedExternalRedirectUrls 作为登录或注销应用的一部分,可重定向到的外部 URL。 请注意,将忽略 URL 的查询字符串部分。
这是 Windows 应用商店应用程序后端通常需要的高级设置。
请注意,始终允许当前域中的 URL。
string[]
cookieExpiration 会话 Cookie 过期的配置设置。 CookieExpiration
nonce 登录流中使用的 nonce 的配置设置。 Nonce
preserveUrlFragmentsForLogins 如果发出登录请求后保留来自请求的片段,则 true;否则,false bool
路线 指定用于登录和注销请求的终结点的路由。 LoginRoutes

CookieExpiration

名字 描述 价值
公约 确定会话 Cookie 过期时使用的约定。 “FixedTime”
“IdentityProviderDerived”
timeToExpiration 发出请求后的时间,会话 Cookie 应过期。 字符串

Nonce

名字 描述 价值
nonceExpirationInterval 发出请求后,nonce 应过期的时间。 字符串
validateNonce 如果完成登录流时不应验证 nonce,则 false;否则,true bool

LoginRoutes

名字 描述 价值
logoutEndpoint 应在其中发出注销请求的终结点。 字符串

AuthPlatform

名字 描述 价值
启用 如果为当前应用启用了身份验证/授权功能,则 true;否则,false bool
runtimeVersion 用于当前应用的身份验证/授权功能的 RuntimeVersion。
此值中的设置可以控制身份验证/授权模块中某些功能的行为。
字符串