UNPKG

@cdktf/provider-azurerm

Version:

Prebuilt azurerm Provider for Terraform CDK (cdktf)

892 lines 176 kB
/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface WindowsFunctionAppConfig extends cdktf.TerraformMetaArguments { /** * A map of key-value pairs for [App Settings](https://docs.microsoft.com/en-us/azure/azure-functions/functions-app-settings) and custom values. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#app_settings WindowsFunctionApp#app_settings} */ readonly appSettings?: { [key: string]: string; }; /** * Should built in logging be enabled. Configures `AzureWebJobsDashboard` app setting based on the configured storage setting * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#builtin_logging_enabled WindowsFunctionApp#builtin_logging_enabled} */ readonly builtinLoggingEnabled?: boolean | cdktf.IResolvable; /** * Should the function app use Client Certificates * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_certificate_enabled WindowsFunctionApp#client_certificate_enabled} */ readonly clientCertificateEnabled?: boolean | cdktf.IResolvable; /** * Paths to exclude when using client certificates, separated by ; * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_certificate_exclusion_paths WindowsFunctionApp#client_certificate_exclusion_paths} */ readonly clientCertificateExclusionPaths?: string; /** * The mode of the Function App's client certificates requirement for incoming requests. Possible values are `Required`, `Optional`, and `OptionalInteractiveUser` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_certificate_mode WindowsFunctionApp#client_certificate_mode} */ readonly clientCertificateMode?: string; /** * Force disable the content share settings. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#content_share_force_disabled WindowsFunctionApp#content_share_force_disabled} */ readonly contentShareForceDisabled?: boolean | cdktf.IResolvable; /** * The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps in Consumption Plans. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#daily_memory_time_quota WindowsFunctionApp#daily_memory_time_quota} */ readonly dailyMemoryTimeQuota?: number; /** * Is the Windows Function App enabled. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#enabled WindowsFunctionApp#enabled} */ readonly enabled?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#ftp_publish_basic_authentication_enabled WindowsFunctionApp#ftp_publish_basic_authentication_enabled} */ readonly ftpPublishBasicAuthenticationEnabled?: boolean | cdktf.IResolvable; /** * The runtime version associated with the Function App. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#functions_extension_version WindowsFunctionApp#functions_extension_version} */ readonly functionsExtensionVersion?: string; /** * Can the Function App only be accessed via HTTPS? * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#https_only WindowsFunctionApp#https_only} */ readonly httpsOnly?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#id WindowsFunctionApp#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * The User Assigned Identity to use for Key Vault access. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#key_vault_reference_identity_id WindowsFunctionApp#key_vault_reference_identity_id} */ readonly keyVaultReferenceIdentityId?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#location WindowsFunctionApp#location} */ readonly location: string; /** * Specifies the name of the Function App. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#name WindowsFunctionApp#name} */ readonly name: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#public_network_access_enabled WindowsFunctionApp#public_network_access_enabled} */ readonly publicNetworkAccessEnabled?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#resource_group_name WindowsFunctionApp#resource_group_name} */ readonly resourceGroupName: string; /** * The ID of the App Service Plan within which to create this Function App * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#service_plan_id WindowsFunctionApp#service_plan_id} */ readonly servicePlanId: string; /** * The access key which will be used to access the storage account for the Function App. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#storage_account_access_key WindowsFunctionApp#storage_account_access_key} */ readonly storageAccountAccessKey?: string; /** * The backend storage account name which will be used by this Function App. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#storage_account_name WindowsFunctionApp#storage_account_name} */ readonly storageAccountName?: string; /** * The Key Vault Secret ID, including version, that contains the Connection String to connect to the storage account for this Function App. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#storage_key_vault_secret_id WindowsFunctionApp#storage_key_vault_secret_id} */ readonly storageKeyVaultSecretId?: string; /** * Should the Function App use its Managed Identity to access storage? * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#storage_uses_managed_identity WindowsFunctionApp#storage_uses_managed_identity} */ readonly storageUsesManagedIdentity?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#tags WindowsFunctionApp#tags} */ readonly tags?: { [key: string]: string; }; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#virtual_network_subnet_id WindowsFunctionApp#virtual_network_subnet_id} */ readonly virtualNetworkSubnetId?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#webdeploy_publish_basic_authentication_enabled WindowsFunctionApp#webdeploy_publish_basic_authentication_enabled} */ readonly webdeployPublishBasicAuthenticationEnabled?: boolean | cdktf.IResolvable; /** * The local path and filename of the Zip packaged application to deploy to this Windows Function App. **Note:** Using this value requires `WEBSITE_RUN_FROM_PACKAGE=1` to be set on the App in `app_settings`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#zip_deploy_file WindowsFunctionApp#zip_deploy_file} */ readonly zipDeployFile?: string; /** * auth_settings block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#auth_settings WindowsFunctionApp#auth_settings} */ readonly authSettings?: WindowsFunctionAppAuthSettings; /** * auth_settings_v2 block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#auth_settings_v2 WindowsFunctionApp#auth_settings_v2} */ readonly authSettingsV2?: WindowsFunctionAppAuthSettingsV2; /** * backup block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#backup WindowsFunctionApp#backup} */ readonly backup?: WindowsFunctionAppBackup; /** * connection_string block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#connection_string WindowsFunctionApp#connection_string} */ readonly connectionString?: WindowsFunctionAppConnectionString[] | cdktf.IResolvable; /** * identity block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#identity WindowsFunctionApp#identity} */ readonly identity?: WindowsFunctionAppIdentity; /** * site_config block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#site_config WindowsFunctionApp#site_config} */ readonly siteConfig: WindowsFunctionAppSiteConfig; /** * sticky_settings block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#sticky_settings WindowsFunctionApp#sticky_settings} */ readonly stickySettings?: WindowsFunctionAppStickySettings; /** * storage_account block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#storage_account WindowsFunctionApp#storage_account} */ readonly storageAccount?: WindowsFunctionAppStorageAccount[] | cdktf.IResolvable; /** * timeouts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#timeouts WindowsFunctionApp#timeouts} */ readonly timeouts?: WindowsFunctionAppTimeouts; } export interface WindowsFunctionAppSiteCredential { } export declare function windowsFunctionAppSiteCredentialToTerraform(struct?: WindowsFunctionAppSiteCredential): any; export declare function windowsFunctionAppSiteCredentialToHclTerraform(struct?: WindowsFunctionAppSiteCredential): any; export declare class WindowsFunctionAppSiteCredentialOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): WindowsFunctionAppSiteCredential | undefined; set internalValue(value: WindowsFunctionAppSiteCredential | undefined); get name(): string; get password(): string; } export declare class WindowsFunctionAppSiteCredentialList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): WindowsFunctionAppSiteCredentialOutputReference; } export interface WindowsFunctionAppAuthSettingsActiveDirectory { /** * Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#allowed_audiences WindowsFunctionApp#allowed_audiences} */ readonly allowedAudiences?: string[]; /** * The ID of the Client to use to authenticate with Azure Active Directory. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_id WindowsFunctionApp#client_id} */ readonly clientId: string; /** * The Client Secret for the Client ID. Cannot be used with `client_secret_setting_name`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_secret WindowsFunctionApp#client_secret} */ readonly clientSecret?: string; /** * The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_secret_setting_name WindowsFunctionApp#client_secret_setting_name} */ readonly clientSecretSettingName?: string; } export declare function windowsFunctionAppAuthSettingsActiveDirectoryToTerraform(struct?: WindowsFunctionAppAuthSettingsActiveDirectoryOutputReference | WindowsFunctionAppAuthSettingsActiveDirectory): any; export declare function windowsFunctionAppAuthSettingsActiveDirectoryToHclTerraform(struct?: WindowsFunctionAppAuthSettingsActiveDirectoryOutputReference | WindowsFunctionAppAuthSettingsActiveDirectory): any; export declare class WindowsFunctionAppAuthSettingsActiveDirectoryOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): WindowsFunctionAppAuthSettingsActiveDirectory | undefined; set internalValue(value: WindowsFunctionAppAuthSettingsActiveDirectory | undefined); private _allowedAudiences?; get allowedAudiences(): string[]; set allowedAudiences(value: string[]); resetAllowedAudiences(): void; get allowedAudiencesInput(): string[] | undefined; private _clientId?; get clientId(): string; set clientId(value: string); get clientIdInput(): string | undefined; private _clientSecret?; get clientSecret(): string; set clientSecret(value: string); resetClientSecret(): void; get clientSecretInput(): string | undefined; private _clientSecretSettingName?; get clientSecretSettingName(): string; set clientSecretSettingName(value: string); resetClientSecretSettingName(): void; get clientSecretSettingNameInput(): string | undefined; } export interface WindowsFunctionAppAuthSettingsFacebook { /** * The App ID of the Facebook app used for login. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#app_id WindowsFunctionApp#app_id} */ readonly appId: string; /** * The App Secret of the Facebook app used for Facebook Login. Cannot be specified with `app_secret_setting_name`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#app_secret WindowsFunctionApp#app_secret} */ readonly appSecret?: string; /** * The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#app_secret_setting_name WindowsFunctionApp#app_secret_setting_name} */ readonly appSecretSettingName?: string; /** * Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#oauth_scopes WindowsFunctionApp#oauth_scopes} */ readonly oauthScopes?: string[]; } export declare function windowsFunctionAppAuthSettingsFacebookToTerraform(struct?: WindowsFunctionAppAuthSettingsFacebookOutputReference | WindowsFunctionAppAuthSettingsFacebook): any; export declare function windowsFunctionAppAuthSettingsFacebookToHclTerraform(struct?: WindowsFunctionAppAuthSettingsFacebookOutputReference | WindowsFunctionAppAuthSettingsFacebook): any; export declare class WindowsFunctionAppAuthSettingsFacebookOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): WindowsFunctionAppAuthSettingsFacebook | undefined; set internalValue(value: WindowsFunctionAppAuthSettingsFacebook | undefined); private _appId?; get appId(): string; set appId(value: string); get appIdInput(): string | undefined; private _appSecret?; get appSecret(): string; set appSecret(value: string); resetAppSecret(): void; get appSecretInput(): string | undefined; private _appSecretSettingName?; get appSecretSettingName(): string; set appSecretSettingName(value: string); resetAppSecretSettingName(): void; get appSecretSettingNameInput(): string | undefined; private _oauthScopes?; get oauthScopes(): string[]; set oauthScopes(value: string[]); resetOauthScopes(): void; get oauthScopesInput(): string[] | undefined; } export interface WindowsFunctionAppAuthSettingsGithub { /** * The ID of the GitHub app used for login. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_id WindowsFunctionApp#client_id} */ readonly clientId: string; /** * The Client Secret of the GitHub app used for GitHub Login. Cannot be specified with `client_secret_setting_name`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_secret WindowsFunctionApp#client_secret} */ readonly clientSecret?: string; /** * The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_secret_setting_name WindowsFunctionApp#client_secret_setting_name} */ readonly clientSecretSettingName?: string; /** * Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#oauth_scopes WindowsFunctionApp#oauth_scopes} */ readonly oauthScopes?: string[]; } export declare function windowsFunctionAppAuthSettingsGithubToTerraform(struct?: WindowsFunctionAppAuthSettingsGithubOutputReference | WindowsFunctionAppAuthSettingsGithub): any; export declare function windowsFunctionAppAuthSettingsGithubToHclTerraform(struct?: WindowsFunctionAppAuthSettingsGithubOutputReference | WindowsFunctionAppAuthSettingsGithub): any; export declare class WindowsFunctionAppAuthSettingsGithubOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): WindowsFunctionAppAuthSettingsGithub | undefined; set internalValue(value: WindowsFunctionAppAuthSettingsGithub | undefined); private _clientId?; get clientId(): string; set clientId(value: string); get clientIdInput(): string | undefined; private _clientSecret?; get clientSecret(): string; set clientSecret(value: string); resetClientSecret(): void; get clientSecretInput(): string | undefined; private _clientSecretSettingName?; get clientSecretSettingName(): string; set clientSecretSettingName(value: string); resetClientSecretSettingName(): void; get clientSecretSettingNameInput(): string | undefined; private _oauthScopes?; get oauthScopes(): string[]; set oauthScopes(value: string[]); resetOauthScopes(): void; get oauthScopesInput(): string[] | undefined; } export interface WindowsFunctionAppAuthSettingsGoogle { /** * The OpenID Connect Client ID for the Google web application. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_id WindowsFunctionApp#client_id} */ readonly clientId: string; /** * The client secret associated with the Google web application. Cannot be specified with `client_secret_setting_name`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_secret WindowsFunctionApp#client_secret} */ readonly clientSecret?: string; /** * The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_secret_setting_name WindowsFunctionApp#client_secret_setting_name} */ readonly clientSecretSettingName?: string; /** * Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#oauth_scopes WindowsFunctionApp#oauth_scopes} */ readonly oauthScopes?: string[]; } export declare function windowsFunctionAppAuthSettingsGoogleToTerraform(struct?: WindowsFunctionAppAuthSettingsGoogleOutputReference | WindowsFunctionAppAuthSettingsGoogle): any; export declare function windowsFunctionAppAuthSettingsGoogleToHclTerraform(struct?: WindowsFunctionAppAuthSettingsGoogleOutputReference | WindowsFunctionAppAuthSettingsGoogle): any; export declare class WindowsFunctionAppAuthSettingsGoogleOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): WindowsFunctionAppAuthSettingsGoogle | undefined; set internalValue(value: WindowsFunctionAppAuthSettingsGoogle | undefined); private _clientId?; get clientId(): string; set clientId(value: string); get clientIdInput(): string | undefined; private _clientSecret?; get clientSecret(): string; set clientSecret(value: string); resetClientSecret(): void; get clientSecretInput(): string | undefined; private _clientSecretSettingName?; get clientSecretSettingName(): string; set clientSecretSettingName(value: string); resetClientSecretSettingName(): void; get clientSecretSettingNameInput(): string | undefined; private _oauthScopes?; get oauthScopes(): string[]; set oauthScopes(value: string[]); resetOauthScopes(): void; get oauthScopesInput(): string[] | undefined; } export interface WindowsFunctionAppAuthSettingsMicrosoft { /** * The OAuth 2.0 client ID that was created for the app used for authentication. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_id WindowsFunctionApp#client_id} */ readonly clientId: string; /** * The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret_setting_name`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_secret WindowsFunctionApp#client_secret} */ readonly clientSecret?: string; /** * The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_secret_setting_name WindowsFunctionApp#client_secret_setting_name} */ readonly clientSecretSettingName?: string; /** * The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#oauth_scopes WindowsFunctionApp#oauth_scopes} */ readonly oauthScopes?: string[]; } export declare function windowsFunctionAppAuthSettingsMicrosoftToTerraform(struct?: WindowsFunctionAppAuthSettingsMicrosoftOutputReference | WindowsFunctionAppAuthSettingsMicrosoft): any; export declare function windowsFunctionAppAuthSettingsMicrosoftToHclTerraform(struct?: WindowsFunctionAppAuthSettingsMicrosoftOutputReference | WindowsFunctionAppAuthSettingsMicrosoft): any; export declare class WindowsFunctionAppAuthSettingsMicrosoftOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): WindowsFunctionAppAuthSettingsMicrosoft | undefined; set internalValue(value: WindowsFunctionAppAuthSettingsMicrosoft | undefined); private _clientId?; get clientId(): string; set clientId(value: string); get clientIdInput(): string | undefined; private _clientSecret?; get clientSecret(): string; set clientSecret(value: string); resetClientSecret(): void; get clientSecretInput(): string | undefined; private _clientSecretSettingName?; get clientSecretSettingName(): string; set clientSecretSettingName(value: string); resetClientSecretSettingName(): void; get clientSecretSettingNameInput(): string | undefined; private _oauthScopes?; get oauthScopes(): string[]; set oauthScopes(value: string[]); resetOauthScopes(): void; get oauthScopesInput(): string[] | undefined; } export interface WindowsFunctionAppAuthSettingsTwitter { /** * The OAuth 1.0a consumer key of the Twitter application used for sign-in. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#consumer_key WindowsFunctionApp#consumer_key} */ readonly consumerKey: string; /** * The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret_setting_name`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#consumer_secret WindowsFunctionApp#consumer_secret} */ readonly consumerSecret?: string; /** * The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#consumer_secret_setting_name WindowsFunctionApp#consumer_secret_setting_name} */ readonly consumerSecretSettingName?: string; } export declare function windowsFunctionAppAuthSettingsTwitterToTerraform(struct?: WindowsFunctionAppAuthSettingsTwitterOutputReference | WindowsFunctionAppAuthSettingsTwitter): any; export declare function windowsFunctionAppAuthSettingsTwitterToHclTerraform(struct?: WindowsFunctionAppAuthSettingsTwitterOutputReference | WindowsFunctionAppAuthSettingsTwitter): any; export declare class WindowsFunctionAppAuthSettingsTwitterOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): WindowsFunctionAppAuthSettingsTwitter | undefined; set internalValue(value: WindowsFunctionAppAuthSettingsTwitter | undefined); private _consumerKey?; get consumerKey(): string; set consumerKey(value: string); get consumerKeyInput(): string | undefined; private _consumerSecret?; get consumerSecret(): string; set consumerSecret(value: string); resetConsumerSecret(): void; get consumerSecretInput(): string | undefined; private _consumerSecretSettingName?; get consumerSecretSettingName(): string; set consumerSecretSettingName(value: string); resetConsumerSecretSettingName(): void; get consumerSecretSettingNameInput(): string | undefined; } export interface WindowsFunctionAppAuthSettings { /** * Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#additional_login_parameters WindowsFunctionApp#additional_login_parameters} */ readonly additionalLoginParameters?: { [key: string]: string; }; /** * Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#allowed_external_redirect_urls WindowsFunctionApp#allowed_external_redirect_urls} */ readonly allowedExternalRedirectUrls?: string[]; /** * The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#default_provider WindowsFunctionApp#default_provider} */ readonly defaultProvider?: string; /** * Should the Authentication / Authorization feature be enabled? * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#enabled WindowsFunctionApp#enabled} */ readonly enabled: boolean | cdktf.IResolvable; /** * The OpenID Connect Issuer URI that represents the entity which issues access tokens. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#issuer WindowsFunctionApp#issuer} */ readonly issuer?: string; /** * The RuntimeVersion of the Authentication / Authorization feature in use. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#runtime_version WindowsFunctionApp#runtime_version} */ readonly runtimeVersion?: string; /** * The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#token_refresh_extension_hours WindowsFunctionApp#token_refresh_extension_hours} */ readonly tokenRefreshExtensionHours?: number; /** * Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#token_store_enabled WindowsFunctionApp#token_store_enabled} */ readonly tokenStoreEnabled?: boolean | cdktf.IResolvable; /** * The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#unauthenticated_client_action WindowsFunctionApp#unauthenticated_client_action} */ readonly unauthenticatedClientAction?: string; /** * active_directory block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#active_directory WindowsFunctionApp#active_directory} */ readonly activeDirectory?: WindowsFunctionAppAuthSettingsActiveDirectory; /** * facebook block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#facebook WindowsFunctionApp#facebook} */ readonly facebook?: WindowsFunctionAppAuthSettingsFacebook; /** * github block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#github WindowsFunctionApp#github} */ readonly github?: WindowsFunctionAppAuthSettingsGithub; /** * google block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#google WindowsFunctionApp#google} */ readonly google?: WindowsFunctionAppAuthSettingsGoogle; /** * microsoft block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#microsoft WindowsFunctionApp#microsoft} */ readonly microsoft?: WindowsFunctionAppAuthSettingsMicrosoft; /** * twitter block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#twitter WindowsFunctionApp#twitter} */ readonly twitter?: WindowsFunctionAppAuthSettingsTwitter; } export declare function windowsFunctionAppAuthSettingsToTerraform(struct?: WindowsFunctionAppAuthSettingsOutputReference | WindowsFunctionAppAuthSettings): any; export declare function windowsFunctionAppAuthSettingsToHclTerraform(struct?: WindowsFunctionAppAuthSettingsOutputReference | WindowsFunctionAppAuthSettings): any; export declare class WindowsFunctionAppAuthSettingsOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): WindowsFunctionAppAuthSettings | undefined; set internalValue(value: WindowsFunctionAppAuthSettings | undefined); private _additionalLoginParameters?; get additionalLoginParameters(): { [key: string]: string; }; set additionalLoginParameters(value: { [key: string]: string; }); resetAdditionalLoginParameters(): void; get additionalLoginParametersInput(): { [key: string]: string; } | undefined; private _allowedExternalRedirectUrls?; get allowedExternalRedirectUrls(): string[]; set allowedExternalRedirectUrls(value: string[]); resetAllowedExternalRedirectUrls(): void; get allowedExternalRedirectUrlsInput(): string[] | undefined; private _defaultProvider?; get defaultProvider(): string; set defaultProvider(value: string); resetDefaultProvider(): void; get defaultProviderInput(): string | undefined; private _enabled?; get enabled(): boolean | cdktf.IResolvable; set enabled(value: boolean | cdktf.IResolvable); get enabledInput(): boolean | cdktf.IResolvable | undefined; private _issuer?; get issuer(): string; set issuer(value: string); resetIssuer(): void; get issuerInput(): string | undefined; private _runtimeVersion?; get runtimeVersion(): string; set runtimeVersion(value: string); resetRuntimeVersion(): void; get runtimeVersionInput(): string | undefined; private _tokenRefreshExtensionHours?; get tokenRefreshExtensionHours(): number; set tokenRefreshExtensionHours(value: number); resetTokenRefreshExtensionHours(): void; get tokenRefreshExtensionHoursInput(): number | undefined; private _tokenStoreEnabled?; get tokenStoreEnabled(): boolean | cdktf.IResolvable; set tokenStoreEnabled(value: boolean | cdktf.IResolvable); resetTokenStoreEnabled(): void; get tokenStoreEnabledInput(): boolean | cdktf.IResolvable | undefined; private _unauthenticatedClientAction?; get unauthenticatedClientAction(): string; set unauthenticatedClientAction(value: string); resetUnauthenticatedClientAction(): void; get unauthenticatedClientActionInput(): string | undefined; private _activeDirectory; get activeDirectory(): WindowsFunctionAppAuthSettingsActiveDirectoryOutputReference; putActiveDirectory(value: WindowsFunctionAppAuthSettingsActiveDirectory): void; resetActiveDirectory(): void; get activeDirectoryInput(): WindowsFunctionAppAuthSettingsActiveDirectory | undefined; private _facebook; get facebook(): WindowsFunctionAppAuthSettingsFacebookOutputReference; putFacebook(value: WindowsFunctionAppAuthSettingsFacebook): void; resetFacebook(): void; get facebookInput(): WindowsFunctionAppAuthSettingsFacebook | undefined; private _github; get github(): WindowsFunctionAppAuthSettingsGithubOutputReference; putGithub(value: WindowsFunctionAppAuthSettingsGithub): void; resetGithub(): void; get githubInput(): WindowsFunctionAppAuthSettingsGithub | undefined; private _google; get google(): WindowsFunctionAppAuthSettingsGoogleOutputReference; putGoogle(value: WindowsFunctionAppAuthSettingsGoogle): void; resetGoogle(): void; get googleInput(): WindowsFunctionAppAuthSettingsGoogle | undefined; private _microsoft; get microsoft(): WindowsFunctionAppAuthSettingsMicrosoftOutputReference; putMicrosoft(value: WindowsFunctionAppAuthSettingsMicrosoft): void; resetMicrosoft(): void; get microsoftInput(): WindowsFunctionAppAuthSettingsMicrosoft | undefined; private _twitter; get twitter(): WindowsFunctionAppAuthSettingsTwitterOutputReference; putTwitter(value: WindowsFunctionAppAuthSettingsTwitter): void; resetTwitter(): void; get twitterInput(): WindowsFunctionAppAuthSettingsTwitter | undefined; } export interface WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2 { /** * The list of allowed Applications for the Default Authorisation Policy. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#allowed_applications WindowsFunctionApp#allowed_applications} */ readonly allowedApplications?: string[]; /** * Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#allowed_audiences WindowsFunctionApp#allowed_audiences} */ readonly allowedAudiences?: string[]; /** * The list of allowed Group Names for the Default Authorisation Policy. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#allowed_groups WindowsFunctionApp#allowed_groups} */ readonly allowedGroups?: string[]; /** * The list of allowed Identities for the Default Authorisation Policy. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#allowed_identities WindowsFunctionApp#allowed_identities} */ readonly allowedIdentities?: string[]; /** * The ID of the Client to use to authenticate with Azure Active Directory. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_id WindowsFunctionApp#client_id} */ readonly clientId: string; /** * The thumbprint of the certificate used for signing purposes. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_secret_certificate_thumbprint WindowsFunctionApp#client_secret_certificate_thumbprint} */ readonly clientSecretCertificateThumbprint?: string; /** * The App Setting name that contains the client secret of the Client. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#client_secret_setting_name WindowsFunctionApp#client_secret_setting_name} */ readonly clientSecretSettingName?: string; /** * A list of Allowed Client Applications in the JWT Claim. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#jwt_allowed_client_applications WindowsFunctionApp#jwt_allowed_client_applications} */ readonly jwtAllowedClientApplications?: string[]; /** * A list of Allowed Groups in the JWT Claim. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#jwt_allowed_groups WindowsFunctionApp#jwt_allowed_groups} */ readonly jwtAllowedGroups?: string[]; /** * A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#login_parameters WindowsFunctionApp#login_parameters} */ readonly loginParameters?: { [key: string]: string; }; /** * The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#tenant_auth_endpoint WindowsFunctionApp#tenant_auth_endpoint} */ readonly tenantAuthEndpoint: string; /** * Should the www-authenticate provider should be omitted from the request? Defaults to `false` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/windows_function_app#www_authentication_disabled WindowsFunctionApp#www_authentication_disabled} */ readonly wwwAuthenticationDisabled?: boolean | cdktf.IResolvable; } export declare function windowsFunctionAppAuthSettingsV2ActiveDirectoryV2ToTerraform(struct?: WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2OutputReference | WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2): any; export declare function windowsFunctionAppAuthSettingsV2ActiveDirectoryV2ToHclTerraform(struct?: WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2OutputReference | WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2): any; export declare class WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2OutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2 | undefined; set internalValue(value: WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2 | undefined); private _allowedApplications?; get allowedApplications(): string[]; set allowedApplications(value: string[]); resetAllowedApplications(): void; get allowedApplicationsInput(): string[] | undefined; private _allowedAudiences?; get allowedAudiences(): string[]; set allowedAudiences(value: string[]); resetAllowedAudiences(): void; get allowedAudiencesInput(): string[] | undefined; private _allowedGroups?; get allowedGroups(): string[]; set allowedGroups(value: string[]); resetAllowedGroups(): void; get allowedGroupsInput(): string[] | undefined; private _allowedIdentities?; get allowedIdentities(): string[]; set allowedIdentities(value: string[]); resetAllowedIdentities(): void; get allowedIdentitiesInput(): string[] | undefined; private _clientId?; get clientId(): string; set clientId(value: string); get clientIdInput(): string | undefined; private _clientSecretCertificateThumbprint?; get clientSecretCertificateThumbprint(): string; set clientSecretCertificateThumbprint(value: string); resetClientSecretCertificateThumbprint(): void; get clientSecretCertificateThumbprintInput(): string | undefined; private _clientSecretSettingName?; get clientSecretSettingName(): string; set clientSecretSettingName(value: string); resetClientSecretSettingName(): void; get clientSecretSettingNameInput(): string | undefined; private _jwtAllowedClientApplications?; get jwtAllowedClientApplications(): string[]; set jwtAllowedClientApplications(value: string[]); resetJwtAllowedClientApplications(): void; get jwtAllowedClientApplicationsInput(): string[] | undefined; private _jwtAllowedGroups?; get jwtAllowedGroups(): string[]; set jwtAllowedGroups(value: string[]); resetJwtAllowedGroups(): void; get jwtAllowedGroupsInput(): string[] | undefined; private _loginParameters?; get loginParame