Browse Source

Replace Twitter by GitHub in the sandbox projects

pull/1684/head
Kévin Chalet 4 years ago
parent
commit
10242f3528
  1. 9
      sandbox/OpenIddict.Sandbox.AspNet.Client/Controllers/AuthenticationController.cs
  2. 6
      sandbox/OpenIddict.Sandbox.AspNet.Client/Startup.cs
  3. 4
      sandbox/OpenIddict.Sandbox.AspNet.Client/Views/Home/Index.cshtml
  4. 11
      sandbox/OpenIddict.Sandbox.AspNetCore.Client/Controllers/AuthenticationController.cs
  5. 7
      sandbox/OpenIddict.Sandbox.AspNetCore.Client/Startup.cs
  6. 4
      sandbox/OpenIddict.Sandbox.AspNetCore.Client/Views/Home/Index.cshtml
  7. 5
      sandbox/OpenIddict.Sandbox.Console.Client/InteractiveService.cs
  8. 8
      sandbox/OpenIddict.Sandbox.Console.Client/Program.cs
  9. 22
      sandbox/OpenIddict.Sandbox.WinForms.Client/MainForm.Designer.cs
  10. 4
      sandbox/OpenIddict.Sandbox.WinForms.Client/MainForm.cs
  11. 10
      sandbox/OpenIddict.Sandbox.WinForms.Client/Program.cs
  12. 2
      sandbox/OpenIddict.Sandbox.Wpf.Client/MainWindow.xaml
  13. 4
      sandbox/OpenIddict.Sandbox.Wpf.Client/MainWindow.xaml.cs
  14. 10
      sandbox/OpenIddict.Sandbox.Wpf.Client/Program.cs

9
sandbox/OpenIddict.Sandbox.AspNet.Client/Controllers/AuthenticationController.cs

@ -22,11 +22,10 @@ namespace OpenIddict.Sandbox.AspNet.Client.Controllers
// Note: OpenIddict always validates the specified provider name when handling the challenge operation,
// but the provider can also be validated earlier to return an error page or a special HTTP error code.
if (!string.Equals(provider, "Local", StringComparison.Ordinal) &&
!string.Equals(provider, "Local+GitHub", StringComparison.Ordinal) &&
!string.Equals(provider, Providers.GitHub, StringComparison.Ordinal) &&
!string.Equals(provider, Providers.Google, StringComparison.Ordinal) &&
!string.Equals(provider, Providers.Twitter, StringComparison.Ordinal))
if (!string.Equals(provider, "Local", StringComparison.Ordinal) &&
!string.Equals(provider, "Local+GitHub", StringComparison.Ordinal) &&
!string.Equals(provider, Providers.GitHub, StringComparison.Ordinal) &&
!string.Equals(provider, Providers.Google, StringComparison.Ordinal))
{
return new HttpStatusCodeResult(400);
}

6
sandbox/OpenIddict.Sandbox.AspNet.Client/Startup.cs

@ -96,12 +96,6 @@ namespace OpenIddict.Sandbox.AspNet.Client
.SetRedirectUri("callback/login/google")
.SetAccessType("offline")
.AddScopes(Scopes.Profile);
})
.UseTwitter(options =>
{
options.SetClientId("bXgwc0U3N3A3YWNuaWVsdlRmRWE6MTpjaQ")
.SetClientSecret("VcohOgBp-6yQCurngo4GAyKeZh0D6SUCCSjJgEo1uRzJarjIUS")
.SetRedirectUri("callback/login/twitter");
});
});

4
sandbox/OpenIddict.Sandbox.AspNet.Client/Views/Home/Index.cshtml

@ -76,10 +76,6 @@
<button class="btn btn-lg btn-success" type="submit" name="provider" value="Google">
Sign in using Google
</button>
<button class="btn btn-lg btn-success" type="submit" name="provider" value="Twitter">
Sign in using Twitter
</button>
</form>
}
</div>

11
sandbox/OpenIddict.Sandbox.AspNetCore.Client/Controllers/AuthenticationController.cs

@ -15,12 +15,11 @@ public class AuthenticationController : Controller
{
// Note: OpenIddict always validates the specified provider name when handling the challenge operation,
// but the provider can also be validated earlier to return an error page or a special HTTP error code.
if (!string.Equals(provider, "Local", StringComparison.Ordinal) &&
!string.Equals(provider, "Local+GitHub", StringComparison.Ordinal) &&
!string.Equals(provider, Providers.GitHub, StringComparison.Ordinal) &&
!string.Equals(provider, Providers.Google, StringComparison.Ordinal) &&
!string.Equals(provider, Providers.Reddit, StringComparison.Ordinal) &&
!string.Equals(provider, Providers.Twitter, StringComparison.Ordinal))
if (!string.Equals(provider, "Local", StringComparison.Ordinal) &&
!string.Equals(provider, "Local+GitHub", StringComparison.Ordinal) &&
!string.Equals(provider, Providers.GitHub, StringComparison.Ordinal) &&
!string.Equals(provider, Providers.Google, StringComparison.Ordinal) &&
!string.Equals(provider, Providers.Reddit, StringComparison.Ordinal))
{
return BadRequest();
}

7
sandbox/OpenIddict.Sandbox.AspNetCore.Client/Startup.cs

@ -137,13 +137,6 @@ public class Startup
.SetClientSecret("Tpab28Dz0upyZLqn7AN3GFD1O-zaAw")
.SetRedirectUri("callback/login/reddit")
.SetDuration("permanent");
})
.UseTwitter(options =>
{
options.SetClientId("bXgwc0U3N3A3YWNuaWVsdlRmRWE6MTpjaQ")
.SetClientSecret("VcohOgBp-6yQCurngo4GAyKeZh0D6SUCCSjJgEo1uRzJarjIUS")
.SetRedirectUri("callback/login/twitter")
.AddScopes("offline.access");
});
});

4
sandbox/OpenIddict.Sandbox.AspNetCore.Client/Views/Home/Index.cshtml

@ -65,10 +65,6 @@
<button class="btn btn-lg btn-success" type="submit" name="provider" value="Reddit">
Sign in using Reddit
</button>
<button class="btn btn-lg btn-success" type="submit" name="provider" value="Twitter">
Sign in using Twitter
</button>
</form>
}
</div>

5
sandbox/OpenIddict.Sandbox.Console.Client/InteractiveService.cs

@ -2,6 +2,7 @@
using OpenIddict.Client;
using static OpenIddict.Abstractions.OpenIddictConstants;
using static OpenIddict.Abstractions.OpenIddictExceptions;
using static OpenIddict.Client.WebIntegration.OpenIddictClientWebIntegrationConstants;
namespace OpenIddict.Sandbox.Console.Client;
@ -35,12 +36,12 @@ public class InteractiveService : BackgroundService
do
{
Console.WriteLine("Type '1' + ENTER to log in using the local server or '2' + ENTER to log in using Twitter");
Console.WriteLine("Type '1' + ENTER to log in using the local server or '2' + ENTER to log in using GitHub.");
provider = await WaitAsync(Task.Run(Console.ReadLine, stoppingToken), stoppingToken) switch
{
"1" => "Local",
"2" => "Twitter",
"2" => Providers.GitHub,
_ => null
};
}

8
sandbox/OpenIddict.Sandbox.Console.Client/Program.cs

@ -78,10 +78,10 @@ var host = new HostBuilder()
// parameter containing their URL as part of authorization responses. For more information,
// see https://datatracker.ietf.org/doc/html/draft-ietf-oauth-security-topics#section-4.4.
options.UseWebProviders()
.UseTwitter()
.SetClientId("bXgwc0U3N3A3YWNuaWVsdlRmRWE6MTpjaQ")
.SetClientSecret("VcohOgBp-6yQCurngo4GAyKeZh0D6SUCCSjJgEo1uRzJarjIUS")
.SetRedirectUri("callback/login/twitter");
.UseGitHub()
.SetClientId("992372d088f8676a7945")
.SetClientSecret("1f18c22f766e44d7bd4ea4a6510b9e337d48ab38")
.SetRedirectUri("callback/login/github");
});
// Register the worker responsible for creating the database used to store tokens

22
sandbox/OpenIddict.Sandbox.WinForms.Client/MainForm.Designer.cs

@ -29,7 +29,7 @@
private void InitializeComponent()
{
this.LocalLogin = new System.Windows.Forms.Button();
this.TwitterLogin = new System.Windows.Forms.Button();
this.GitHubLogin = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// LocalLogin
@ -42,22 +42,22 @@
this.LocalLogin.UseVisualStyleBackColor = true;
this.LocalLogin.Click += new System.EventHandler(this.LocalLoginButton_Click);
//
// TwitterLogin
// GitHubLogin
//
this.TwitterLogin.Location = new System.Drawing.Point(258, 258);
this.TwitterLogin.Name = "TwitterLogin";
this.TwitterLogin.Size = new System.Drawing.Size(283, 83);
this.TwitterLogin.TabIndex = 1;
this.TwitterLogin.Text = "Log in using Twitter";
this.TwitterLogin.UseVisualStyleBackColor = true;
this.TwitterLogin.Click += new System.EventHandler(this.TwitterLoginButton_Click);
this.GitHubLogin.Location = new System.Drawing.Point(258, 258);
this.GitHubLogin.Name = "GitHubLogin";
this.GitHubLogin.Size = new System.Drawing.Size(283, 83);
this.GitHubLogin.TabIndex = 1;
this.GitHubLogin.Text = "Log in using GitHub";
this.GitHubLogin.UseVisualStyleBackColor = true;
this.GitHubLogin.Click += new System.EventHandler(this.GitHubLoginButton_Click);
//
// MainForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(800, 450);
this.Controls.Add(this.TwitterLogin);
this.Controls.Add(this.GitHubLogin);
this.Controls.Add(this.LocalLogin);
this.Name = "MainForm";
this.Text = "OpenIddict WinForms client";
@ -68,6 +68,6 @@
#endregion
private Button LocalLogin;
private Button TwitterLogin;
private Button GitHubLogin;
}
}

4
sandbox/OpenIddict.Sandbox.WinForms.Client/MainForm.cs

@ -20,8 +20,8 @@ namespace OpenIddict.Sandbox.WinForms.Client
private async void LocalLoginButton_Click(object sender, EventArgs e)
=> await AuthenticateAsync("Local");
private async void TwitterLoginButton_Click(object sender, EventArgs e)
=> await AuthenticateAsync(Providers.Twitter);
private async void GitHubLoginButton_Click(object sender, EventArgs e)
=> await AuthenticateAsync(Providers.GitHub);
private async Task AuthenticateAsync(string provider)
{

10
sandbox/OpenIddict.Sandbox.WinForms.Client/Program.cs

@ -81,11 +81,11 @@ var host = new HostBuilder()
// parameter containing their URL as part of authorization responses. For more information,
// see https://datatracker.ietf.org/doc/html/draft-ietf-oauth-security-topics#section-4.4.
options.UseWebProviders()
.UseTwitter()
.SetClientId("bXgwc0U3N3A3YWNuaWVsdlRmRWE6MTpjaQ")
.SetClientSecret("VcohOgBp-6yQCurngo4GAyKeZh0D6SUCCSjJgEo1uRzJarjIUS")
// Note: Twitter doesn't support the recommended ":/" syntax and requires using "://".
.SetRedirectUri("com.openiddict.sandbox.winforms.client://callback/login/twitter");
.UseGitHub()
.SetClientId("cf8efb4d76c0cb7109d3")
.SetClientSecret("e8c0f6b869164411bb9052e42414cbcc52d518cd")
// Note: GitHub doesn't support the recommended ":/" syntax and requires using "://".
.SetRedirectUri("com.openiddict.sandbox.winforms.client://callback/login/github");
});
// Register the worker responsible for creating the database used to store tokens

2
sandbox/OpenIddict.Sandbox.Wpf.Client/MainWindow.xaml

@ -7,6 +7,6 @@
Title="OpenIddict WPF client" Height="450" Width="800">
<Grid>
<Button Content="Log in using the local server" HorizontalAlignment="Center" VerticalAlignment="Top" Click="LocalLoginButton_Click" Height="64" Width="252" FontSize="20" Margin="0,130,0,0" />
<Button Content="Log in using Twitter" HorizontalAlignment="Center" VerticalAlignment="Top" Click="TwitterLoginButton_Click" Height="64" Width="252" FontSize="20" Margin="0,234,0,0" />
<Button Content="Log in using GitHub" HorizontalAlignment="Center" VerticalAlignment="Top" Click="GitHubLoginButton_Click" Height="64" Width="252" FontSize="20" Margin="0,234,0,0" />
</Grid>
</Window>

4
sandbox/OpenIddict.Sandbox.Wpf.Client/MainWindow.xaml.cs

@ -21,8 +21,8 @@ namespace OpenIddict.Sandbox.Wpf.Client
private async void LocalLoginButton_Click(object sender, RoutedEventArgs e)
=> await AuthenticateAsync("Local");
private async void TwitterLoginButton_Click(object sender, RoutedEventArgs e)
=> await AuthenticateAsync(Providers.Twitter);
private async void GitHubLoginButton_Click(object sender, RoutedEventArgs e)
=> await AuthenticateAsync(Providers.GitHub);
private async Task AuthenticateAsync(string provider)
{

10
sandbox/OpenIddict.Sandbox.Wpf.Client/Program.cs

@ -82,11 +82,11 @@ var host = new HostBuilder()
// parameter containing their URL as part of authorization responses. For more information,
// see https://datatracker.ietf.org/doc/html/draft-ietf-oauth-security-topics#section-4.4.
options.UseWebProviders()
.UseTwitter()
.SetClientId("bXgwc0U3N3A3YWNuaWVsdlRmRWE6MTpjaQ")
.SetClientSecret("VcohOgBp-6yQCurngo4GAyKeZh0D6SUCCSjJgEo1uRzJarjIUS")
// Note: Twitter doesn't support the recommended ":/" syntax and requires using "://".
.SetRedirectUri("com.openiddict.sandbox.wpf.client://callback/login/twitter");
.UseGitHub()
.SetClientId("8abc54b6d5f4e39d78aa")
.SetClientSecret("f37ef38bdb18a0f5f2d430a8edbed4353c012dc3")
// Note: GitHub doesn't support the recommended ":/" syntax and requires using "://".
.SetRedirectUri("com.openiddict.sandbox.wpf.client://callback/login/github");
});
// Register the worker responsible for creating the database used to store tokens

Loading…
Cancel
Save