Skip to content

Commit

Permalink
Upgrade to v0.29.0 of the Auth0 Terraform Provider
Browse files Browse the repository at this point in the history
* See [upstream release
  notes](https://github.com/auth0/terraform-provider-auth0/releases) for details
  • Loading branch information
guineveresaenger committed Apr 4, 2022
1 parent b899cb6 commit 05b1279
Show file tree
Hide file tree
Showing 68 changed files with 4,486 additions and 1,208 deletions.
441 changes: 345 additions & 96 deletions provider/cmd/pulumi-resource-auth0/schema.json

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion provider/go.mod
Expand Up @@ -8,7 +8,7 @@ replace (
)

require (
github.com/auth0/terraform-provider-auth0 v0.27.1
github.com/auth0/terraform-provider-auth0 v0.29.0
github.com/pulumi/pulumi-terraform-bridge/v3 v3.20.0
github.com/pulumi/pulumi/sdk/v3 v3.27.0
)
8 changes: 4 additions & 4 deletions provider/go.sum
Expand Up @@ -153,10 +153,10 @@ github.com/armon/go-radix v1.0.0 h1:F4z6KzEeeQIMeLFa97iZU6vupzoecKdU5TX24SNppXI=
github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8=
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio=
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs=
github.com/auth0/go-auth0 v0.5.0 h1:GRXS+7yr4H7P726nwmXDtBC6LA8IcmlYHYjr3nkC98Y=
github.com/auth0/go-auth0 v0.5.0/go.mod h1:9rEJrEWFALKlt1VVCx1zToCG6+uddn4MLEgtKSRhlEU=
github.com/auth0/terraform-provider-auth0 v0.27.1 h1:GtoMLnhCiGaC2XMDtrF1sy0j6AkvN2g2Mtx0ercMkNk=
github.com/auth0/terraform-provider-auth0 v0.27.1/go.mod h1:LPsv2dE031hpXtu3HxvaXiYB3Pm6VKc65/gCUnSV+TQ=
github.com/auth0/go-auth0 v0.6.1 h1:D6WSxLQyr1+Ozn8qW0KJAKVcy1j7ZxbRoWdZQr0qT8s=
github.com/auth0/go-auth0 v0.6.1/go.mod h1:9rEJrEWFALKlt1VVCx1zToCG6+uddn4MLEgtKSRhlEU=
github.com/auth0/terraform-provider-auth0 v0.29.0 h1:G93krbwIvNB1vL6gQwubwe+tUhExCdNV/s3R60qYWjE=
github.com/auth0/terraform-provider-auth0 v0.29.0/go.mod h1:fVBwgUVJlaESaCS77FqI8kGl6HCFncCfdljFUJJAtCI=
github.com/aws/aws-sdk-go v1.15.27/go.mod h1:mFuSZ37Z9YOHbQEwBWztmVzqXrEkub65tZoCYDt7FT0=
github.com/aws/aws-sdk-go v1.15.78/go.mod h1:E3/ieXAlvM0XWO57iftYVDLLvQ824smPP3ATZkfNZeM=
github.com/aws/aws-sdk-go v1.19.39/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo=
Expand Down
2 changes: 2 additions & 0 deletions provider/resources.go
Expand Up @@ -111,10 +111,12 @@ func Provider() tfbridge.ProviderInfo {
"auth0_organization": {Tok: makeResource(mainMod, "Organization")},
"auth0_trigger_binding": {Tok: makeResource(mainMod, "TriggerBinding")},
"auth0_prompt_custom_text": {Tok: makeResource(mainMod, "PromptCustomText")},
"auth0_attack_protection": {Tok: makeResource(mainMod, "AttackProtection")},
},
DataSources: map[string]*tfbridge.DataSourceInfo{
"auth0_client": {Tok: tfbridge.MakeDataSource(mainPkg, mainMod, "getClient")},
"auth0_global_client": {Tok: tfbridge.MakeDataSource(mainPkg, mainMod, "getGlobalClient")},
"auth0_tenant": {Tok: tfbridge.MakeDataSource(mainPkg, mainMod, "getTenant")},
},
JavaScript: &tfbridge.JavaScriptInfo{
Dependencies: map[string]string{
Expand Down
207 changes: 207 additions & 0 deletions sdk/dotnet/AttackProtection.cs
@@ -0,0 +1,207 @@
// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;

namespace Pulumi.Auth0
{
/// <summary>
/// Auth0 can detect attacks and stop malicious attempts to access your application such as blocking traffic from certain IPs and displaying CAPTCHA
///
/// ## Example Usage
///
/// ```csharp
/// using Pulumi;
/// using Auth0 = Pulumi.Auth0;
///
/// class MyStack : Stack
/// {
/// public MyStack()
/// {
/// var attackProtection = new Auth0.AttackProtection("attackProtection", new Auth0.AttackProtectionArgs
/// {
/// BreachedPasswordDetection = new Auth0.Inputs.AttackProtectionBreachedPasswordDetectionArgs
/// {
/// AdminNotificationFrequencies =
/// {
/// "daily",
/// },
/// Enabled = true,
/// Method = "standard",
/// Shields =
/// {
/// "admin_notification",
/// "block",
/// },
/// },
/// BruteForceProtection = new Auth0.Inputs.AttackProtectionBruteForceProtectionArgs
/// {
/// Allowlists =
/// {
/// "127.0.0.1",
/// },
/// Enabled = true,
/// MaxAttempts = 5,
/// Mode = "count_per_identifier_and_ip",
/// Shields =
/// {
/// "block",
/// "user_notification",
/// },
/// },
/// SuspiciousIpThrottling = new Auth0.Inputs.AttackProtectionSuspiciousIpThrottlingArgs
/// {
/// Allowlists =
/// {
/// "192.168.1.1",
/// },
/// Enabled = true,
/// PreLogin = new Auth0.Inputs.AttackProtectionSuspiciousIpThrottlingPreLoginArgs
/// {
/// MaxAttempts = 100,
/// Rate = 864000,
/// },
/// PreUserRegistration = new Auth0.Inputs.AttackProtectionSuspiciousIpThrottlingPreUserRegistrationArgs
/// {
/// MaxAttempts = 50,
/// Rate = 1200,
/// },
/// Shields =
/// {
/// "admin_notification",
/// "block",
/// },
/// },
/// });
/// }
///
/// }
/// ```
///
/// ## Import
///
/// As this is not a resource identifiable by an ID within the Auth0 Management API, guardian can be imported using a random string. We recommend [Version 4 UUID](https://www.uuidgenerator.net/version4) e.g.
///
/// ```sh
/// $ pulumi import auth0:index/attackProtection:AttackProtection default 24940d4b-4bd4-44e7-894e-f92e4de36a40
/// ```
/// </summary>
[Auth0ResourceType("auth0:index/attackProtection:AttackProtection")]
public partial class AttackProtection : Pulumi.CustomResource
{
/// <summary>
/// Breached password detection protects your applications from bad actors logging in with stolen credentials.
/// </summary>
[Output("breachedPasswordDetection")]
public Output<Outputs.AttackProtectionBreachedPasswordDetection> BreachedPasswordDetection { get; private set; } = null!;

/// <summary>
/// Safeguards against a single IP address attacking a single user account.
/// </summary>
[Output("bruteForceProtection")]
public Output<Outputs.AttackProtectionBruteForceProtection> BruteForceProtection { get; private set; } = null!;

/// <summary>
/// Suspicious IP throttling blocks traffic from any IP address that rapidly attempts too many logins or signups.
/// </summary>
[Output("suspiciousIpThrottling")]
public Output<Outputs.AttackProtectionSuspiciousIpThrottling> SuspiciousIpThrottling { get; private set; } = null!;


/// <summary>
/// Create a AttackProtection resource with the given unique name, arguments, and options.
/// </summary>
///
/// <param name="name">The unique name of the resource</param>
/// <param name="args">The arguments used to populate this resource's properties</param>
/// <param name="options">A bag of options that control this resource's behavior</param>
public AttackProtection(string name, AttackProtectionArgs? args = null, CustomResourceOptions? options = null)
: base("auth0:index/attackProtection:AttackProtection", name, args ?? new AttackProtectionArgs(), MakeResourceOptions(options, ""))
{
}

private AttackProtection(string name, Input<string> id, AttackProtectionState? state = null, CustomResourceOptions? options = null)
: base("auth0:index/attackProtection:AttackProtection", name, state, MakeResourceOptions(options, id))
{
}

private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input<string>? id)
{
var defaultOptions = new CustomResourceOptions
{
Version = Utilities.Version,
};
var merged = CustomResourceOptions.Merge(defaultOptions, options);
// Override the ID if one was specified for consistency with other language SDKs.
merged.Id = id ?? merged.Id;
return merged;
}
/// <summary>
/// Get an existing AttackProtection resource's state with the given name, ID, and optional extra
/// properties used to qualify the lookup.
/// </summary>
///
/// <param name="name">The unique name of the resulting resource.</param>
/// <param name="id">The unique provider ID of the resource to lookup.</param>
/// <param name="state">Any extra arguments used during the lookup.</param>
/// <param name="options">A bag of options that control this resource's behavior</param>
public static AttackProtection Get(string name, Input<string> id, AttackProtectionState? state = null, CustomResourceOptions? options = null)
{
return new AttackProtection(name, id, state, options);
}
}

public sealed class AttackProtectionArgs : Pulumi.ResourceArgs
{
/// <summary>
/// Breached password detection protects your applications from bad actors logging in with stolen credentials.
/// </summary>
[Input("breachedPasswordDetection")]
public Input<Inputs.AttackProtectionBreachedPasswordDetectionArgs>? BreachedPasswordDetection { get; set; }

/// <summary>
/// Safeguards against a single IP address attacking a single user account.
/// </summary>
[Input("bruteForceProtection")]
public Input<Inputs.AttackProtectionBruteForceProtectionArgs>? BruteForceProtection { get; set; }

/// <summary>
/// Suspicious IP throttling blocks traffic from any IP address that rapidly attempts too many logins or signups.
/// </summary>
[Input("suspiciousIpThrottling")]
public Input<Inputs.AttackProtectionSuspiciousIpThrottlingArgs>? SuspiciousIpThrottling { get; set; }

public AttackProtectionArgs()
{
}
}

public sealed class AttackProtectionState : Pulumi.ResourceArgs
{
/// <summary>
/// Breached password detection protects your applications from bad actors logging in with stolen credentials.
/// </summary>
[Input("breachedPasswordDetection")]
public Input<Inputs.AttackProtectionBreachedPasswordDetectionGetArgs>? BreachedPasswordDetection { get; set; }

/// <summary>
/// Safeguards against a single IP address attacking a single user account.
/// </summary>
[Input("bruteForceProtection")]
public Input<Inputs.AttackProtectionBruteForceProtectionGetArgs>? BruteForceProtection { get; set; }

/// <summary>
/// Suspicious IP throttling blocks traffic from any IP address that rapidly attempts too many logins or signups.
/// </summary>
[Input("suspiciousIpThrottling")]
public Input<Inputs.AttackProtectionSuspiciousIpThrottlingGetArgs>? SuspiciousIpThrottling { get; set; }

public AttackProtectionState()
{
}
}
}
13 changes: 9 additions & 4 deletions sdk/dotnet/Client.cs
Expand Up @@ -74,6 +74,11 @@ namespace Pulumi.Auth0
/// {
/// { "foo", "zoo" },
/// },
/// ClientSecretRotationTrigger =
/// {
/// { "triggered_at", "2018-01-02T23:12:01Z" },
/// { "triggered_by", "auth0" },
/// },
/// CustomLoginPageOn = true,
/// Description = "Test Applications Long Description",
/// GrantTypes =
Expand Down Expand Up @@ -193,7 +198,7 @@ public partial class Client : Pulumi.CustomResource
public Output<string> ClientSecret { get; private set; } = null!;

/// <summary>
/// Map.
/// Map. Custom metadata for the rotation. For more info: [rotate-client-secret](https://auth0.com/docs/get-started/applications/rotate-client-secret).
/// </summary>
[Output("clientSecretRotationTrigger")]
public Output<ImmutableDictionary<string, object>?> ClientSecretRotationTrigger { get; private set; } = null!;
Expand Down Expand Up @@ -280,7 +285,7 @@ public partial class Client : Pulumi.CustomResource
/// List(Resource). Configuration settings for mobile native applications. For details, see Mobile.
/// </summary>
[Output("mobile")]
public Output<Outputs.ClientMobile?> Mobile { get; private set; } = null!;
public Output<Outputs.ClientMobile> Mobile { get; private set; } = null!;

/// <summary>
/// String. Name of the client.
Expand Down Expand Up @@ -470,7 +475,7 @@ public InputMap<object> ClientMetadata
private InputMap<object>? _clientSecretRotationTrigger;

/// <summary>
/// Map.
/// Map. Custom metadata for the rotation. For more info: [rotate-client-secret](https://auth0.com/docs/get-started/applications/rotate-client-secret).
/// </summary>
public InputMap<object> ClientSecretRotationTrigger
{
Expand Down Expand Up @@ -734,7 +739,7 @@ public InputMap<object> ClientMetadata
private InputMap<object>? _clientSecretRotationTrigger;

/// <summary>
/// Map.
/// Map. Custom metadata for the rotation. For more info: [rotate-client-secret](https://auth0.com/docs/get-started/applications/rotate-client-secret).
/// </summary>
public InputMap<object> ClientSecretRotationTrigger
{
Expand Down
18 changes: 18 additions & 0 deletions sdk/dotnet/Connection.cs
Expand Up @@ -110,6 +110,12 @@ public partial class Connection : Pulumi.CustomResource
[Output("realms")]
public Output<ImmutableArray<string>> Realms { get; private set; } = null!;

/// <summary>
/// Display connection as a button. Only available for enterprise connections.
/// </summary>
[Output("showAsButton")]
public Output<bool?> ShowAsButton { get; private set; } = null!;

/// <summary>
/// Type of the connection, which indicates the identity provider. Options include `ad`, `adfs`, `amazon`, `aol`, `apple`, `auth0`, `auth0-adldap`, `auth0-oidc`, `baidu`, `bitbucket`, `bitly`, `box`, `custom`, `daccount`, `dropbox`, `dwolla`, `email`, `evernote`, `evernote-sandbox`, `exact`, `facebook`, `fitbit`, `flickr`, `github`, `google-apps`, `google-oauth2`, `guardian`, `instagram`, `ip`, `line`, `linkedin`, `miicard`, `oauth1`, `oauth2`, `office365`, `oidc`, `paypal`, `paypal-sandbox`, `pingfederate`, `planningcenter`, `renren`, `salesforce`, `salesforce-community`, `salesforce-sandbox` `samlp`, `sharepoint`, `shopify`, `sms`, `soundcloud`, `thecity`, `thecity-sandbox`, `thirtysevensignals`, `twitter`, `untappd`, `vkontakte`, `waad`, `weibo`, `windowslive`, `wordpress`, `yahoo`, `yammer`, `yandex`.
/// </summary>
Expand Down Expand Up @@ -222,6 +228,12 @@ public InputList<string> Realms
set => _realms = value;
}

/// <summary>
/// Display connection as a button. Only available for enterprise connections.
/// </summary>
[Input("showAsButton")]
public Input<bool>? ShowAsButton { get; set; }

/// <summary>
/// Type of the connection, which indicates the identity provider. Options include `ad`, `adfs`, `amazon`, `aol`, `apple`, `auth0`, `auth0-adldap`, `auth0-oidc`, `baidu`, `bitbucket`, `bitly`, `box`, `custom`, `daccount`, `dropbox`, `dwolla`, `email`, `evernote`, `evernote-sandbox`, `exact`, `facebook`, `fitbit`, `flickr`, `github`, `google-apps`, `google-oauth2`, `guardian`, `instagram`, `ip`, `line`, `linkedin`, `miicard`, `oauth1`, `oauth2`, `office365`, `oidc`, `paypal`, `paypal-sandbox`, `pingfederate`, `planningcenter`, `renren`, `salesforce`, `salesforce-community`, `salesforce-sandbox` `samlp`, `sharepoint`, `shopify`, `sms`, `soundcloud`, `thecity`, `thecity-sandbox`, `thirtysevensignals`, `twitter`, `untappd`, `vkontakte`, `waad`, `weibo`, `windowslive`, `wordpress`, `yahoo`, `yammer`, `yandex`.
/// </summary>
Expand Down Expand Up @@ -301,6 +313,12 @@ public InputList<string> Realms
set => _realms = value;
}

/// <summary>
/// Display connection as a button. Only available for enterprise connections.
/// </summary>
[Input("showAsButton")]
public Input<bool>? ShowAsButton { get; set; }

/// <summary>
/// Type of the connection, which indicates the identity provider. Options include `ad`, `adfs`, `amazon`, `aol`, `apple`, `auth0`, `auth0-adldap`, `auth0-oidc`, `baidu`, `bitbucket`, `bitly`, `box`, `custom`, `daccount`, `dropbox`, `dwolla`, `email`, `evernote`, `evernote-sandbox`, `exact`, `facebook`, `fitbit`, `flickr`, `github`, `google-apps`, `google-oauth2`, `guardian`, `instagram`, `ip`, `line`, `linkedin`, `miicard`, `oauth1`, `oauth2`, `office365`, `oidc`, `paypal`, `paypal-sandbox`, `pingfederate`, `planningcenter`, `renren`, `salesforce`, `salesforce-community`, `salesforce-sandbox` `samlp`, `sharepoint`, `shopify`, `sms`, `soundcloud`, `thecity`, `thecity-sandbox`, `thirtysevensignals`, `twitter`, `untappd`, `vkontakte`, `waad`, `weibo`, `windowslive`, `wordpress`, `yahoo`, `yammer`, `yandex`.
/// </summary>
Expand Down
4 changes: 4 additions & 0 deletions sdk/dotnet/GetClient.cs
Expand Up @@ -129,6 +129,7 @@ public sealed class GetClientResult
public readonly ImmutableArray<string> Callbacks;
public readonly string? ClientId;
public readonly ImmutableDictionary<string, object> ClientMetadata;
public readonly string ClientSecret;
public readonly bool CrossOriginAuth;
public readonly string CrossOriginLoc;
public readonly string CustomLoginPage;
Expand Down Expand Up @@ -177,6 +178,8 @@ public sealed class GetClientResult

ImmutableDictionary<string, object> clientMetadata,

string clientSecret,

bool crossOriginAuth,

string crossOriginLoc,
Expand Down Expand Up @@ -237,6 +240,7 @@ public sealed class GetClientResult
Callbacks = callbacks;
ClientId = clientId;
ClientMetadata = clientMetadata;
ClientSecret = clientSecret;
CrossOriginAuth = crossOriginAuth;
CrossOriginLoc = crossOriginLoc;
CustomLoginPage = customLoginPage;
Expand Down
4 changes: 4 additions & 0 deletions sdk/dotnet/GetGlobalClient.cs
Expand Up @@ -118,6 +118,7 @@ public sealed class GetGlobalClientResult
/// (Optional) Map(String)
/// </summary>
public readonly ImmutableDictionary<string, object> ClientMetadata;
public readonly string ClientSecret;
public readonly bool CrossOriginAuth;
public readonly string CrossOriginLoc;
/// <summary>
Expand Down Expand Up @@ -172,6 +173,8 @@ public sealed class GetGlobalClientResult

ImmutableDictionary<string, object> clientMetadata,

string clientSecret,

bool crossOriginAuth,

string crossOriginLoc,
Expand Down Expand Up @@ -232,6 +235,7 @@ public sealed class GetGlobalClientResult
Callbacks = callbacks;
ClientId = clientId;
ClientMetadata = clientMetadata;
ClientSecret = clientSecret;
CrossOriginAuth = crossOriginAuth;
CrossOriginLoc = crossOriginLoc;
CustomLoginPage = customLoginPage;
Expand Down

0 comments on commit 05b1279

Please sign in to comment.