summaryrefslogtreecommitdiffstats
path: root/samples/OpenIdProviderWebForms
diff options
context:
space:
mode:
Diffstat (limited to 'samples/OpenIdProviderWebForms')
-rw-r--r--samples/OpenIdProviderWebForms/Default.aspx52
-rw-r--r--samples/OpenIdProviderWebForms/Default.aspx.cs48
-rw-r--r--samples/OpenIdProviderWebForms/Default.aspx.designer.cs25
-rw-r--r--samples/OpenIdProviderWebForms/OpenIdProviderWebForms.csproj7
4 files changed, 88 insertions, 44 deletions
diff --git a/samples/OpenIdProviderWebForms/Default.aspx b/samples/OpenIdProviderWebForms/Default.aspx
index 36272c4..ef090e1 100644
--- a/samples/OpenIdProviderWebForms/Default.aspx
+++ b/samples/OpenIdProviderWebForms/Default.aspx
@@ -1,47 +1,9 @@
-<%@ Page Language="C#" AutoEventWireup="true" MasterPageFile="~/Site.Master" %>
+<%@ Page Language="C#" AutoEventWireup="true" MasterPageFile="~/Site.Master" CodeBehind="Default.aspx.cs"
+ Inherits="OpenIdProviderWebForms._default" %>
<%@ Import Namespace="OpenIdProviderWebForms.Code" %>
-<%@ Import Namespace="DotNetOpenAuth.OpenId.Provider" %>
-<%@ Import Namespace="DotNetOpenAuth.Messaging" %>
<%@ Register Assembly="DotNetOpenAuth" Namespace="DotNetOpenAuth.OpenId" TagPrefix="openid" %>
<%@ Register Assembly="DotNetOpenAuth" Namespace="DotNetOpenAuth" TagPrefix="openauth" %>
-
-<script runat="server">
- protected void Page_Load(object sender, EventArgs e) {
- if (Request.QueryString["rp"] != null) {
- if (Page.User.Identity.IsAuthenticated) {
- SendAssertion(Request.QueryString["rp"]);
- } else {
- FormsAuthentication.RedirectToLoginPage();
- }
- } else {
- TextBox relyingPartySite = (TextBox)loginView.FindControl("relyingPartySite");
- if (relyingPartySite != null) {
- relyingPartySite.Focus();
- }
- }
- }
-
- protected void sendAssertionButton_Click(object sender, EventArgs e) {
- TextBox relyingPartySite = (TextBox)loginView.FindControl("relyingPartySite");
- SendAssertion(relyingPartySite.Text);
- }
-
- private void SendAssertion(string relyingPartyRealm) {
- Uri providerEndpoint = new Uri(Request.Url, Page.ResolveUrl("~/server.aspx"));
- OpenIdProvider op = new OpenIdProvider();
- try {
- // Send user input through identifier parser so we accept more free-form input.
- string rpSite = Identifier.Parse(relyingPartyRealm);
- op.PrepareUnsolicitedAssertion(providerEndpoint, rpSite, Util.BuildIdentityUrl(), Util.BuildIdentityUrl()).Send();
- } catch (ProtocolException ex) {
- Label errorLabel = (Label)loginView.FindControl("errorLabel");
- errorLabel.Visible = true;
- errorLabel.Text = ex.Message;
- }
- }
-</script>
-
<asp:Content runat="server" ContentPlaceHolderID="head">
<openauth:XrdsPublisher runat="server" XrdsUrl="~/op_xrds.aspx" />
@@ -52,12 +14,12 @@
}
return this.substring(0, substring.length) == substring;
};
-
+
function updateBookmark(rpRealm) {
if (!(rpRealm.startsWith("http://") || rpRealm.startsWith("https://"))) {
rpRealm = "http://" + rpRealm;
}
-
+
var bookmarkUrl = document.location + "?rp=" + encodeURIComponent(rpRealm);
bookmarkParagraph.style.display = '';
bookmark.href = bookmarkUrl;
@@ -82,11 +44,13 @@
party site. Just type in the URL to the site's home page. This could be the sample
relying party web site. </p>
<div>
- <asp:TextBox runat="server" ID="relyingPartySite" Columns="40" onchange="updateBookmark(this.value)" onkeyup="updateBookmark(this.value)" />
+ <asp:TextBox runat="server" ID="relyingPartySite" Columns="40" onchange="updateBookmark(this.value)"
+ onkeyup="updateBookmark(this.value)" />
<asp:Button runat="server" ID="sendAssertionButton" Text="Login" OnClick="sendAssertionButton_Click" />
<asp:RequiredFieldValidator runat="server" ControlToValidate="relyingPartySite" Text="Specify relying party site first" />
</div>
- <p id="bookmarkParagraph" style="display:none">Bookmark <a id="bookmark"></a> so you can log into the RP automatically in the future.</p>
+ <p id="bookmarkParagraph" style="display: none">Bookmark <a id="bookmark"></a>so you
+ can log into the RP automatically in the future.</p>
<p>An unsolicited assertion is a way to log in to a relying party site directly from
your OpenID Provider. </p>
<p><asp:Label runat="server" EnableViewState="false" Visible="false" ID="errorLabel"
diff --git a/samples/OpenIdProviderWebForms/Default.aspx.cs b/samples/OpenIdProviderWebForms/Default.aspx.cs
new file mode 100644
index 0000000..808dbb1
--- /dev/null
+++ b/samples/OpenIdProviderWebForms/Default.aspx.cs
@@ -0,0 +1,48 @@
+namespace OpenIdProviderWebForms {
+ using System;
+ using System.Web.Security;
+ using System.Web.UI.WebControls;
+ using DotNetOpenAuth.Messaging;
+ using DotNetOpenAuth.OpenId;
+ using DotNetOpenAuth.OpenId.Provider;
+ using OpenIdProviderWebForms.Code;
+
+ /// <summary>
+ /// Page for handling logins to this server.
+ /// </summary>
+ public partial class _default : System.Web.UI.Page {
+ protected void Page_Load(object sender, EventArgs e) {
+ if (Request.QueryString["rp"] != null) {
+ if (Page.User.Identity.IsAuthenticated) {
+ SendAssertion(Request.QueryString["rp"]);
+ } else {
+ FormsAuthentication.RedirectToLoginPage();
+ }
+ } else {
+ TextBox relyingPartySite = (TextBox)loginView.FindControl("relyingPartySite");
+ if (relyingPartySite != null) {
+ relyingPartySite.Focus();
+ }
+ }
+ }
+
+ protected void sendAssertionButton_Click(object sender, EventArgs e) {
+ TextBox relyingPartySite = (TextBox)loginView.FindControl("relyingPartySite");
+ SendAssertion(relyingPartySite.Text);
+ }
+
+ private void SendAssertion(string relyingPartyRealm) {
+ Uri providerEndpoint = new Uri(Request.Url, Page.ResolveUrl("~/server.aspx"));
+ OpenIdProvider op = new OpenIdProvider();
+ try {
+ // Send user input through identifier parser so we accept more free-form input.
+ string rpSite = Identifier.Parse(relyingPartyRealm);
+ op.PrepareUnsolicitedAssertion(providerEndpoint, rpSite, Util.BuildIdentityUrl(), Util.BuildIdentityUrl()).Send();
+ } catch (ProtocolException ex) {
+ Label errorLabel = (Label)loginView.FindControl("errorLabel");
+ errorLabel.Visible = true;
+ errorLabel.Text = ex.Message;
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/samples/OpenIdProviderWebForms/Default.aspx.designer.cs b/samples/OpenIdProviderWebForms/Default.aspx.designer.cs
new file mode 100644
index 0000000..74f2647
--- /dev/null
+++ b/samples/OpenIdProviderWebForms/Default.aspx.designer.cs
@@ -0,0 +1,25 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+// This code was generated by a tool.
+// Runtime Version:2.0.50727.4912
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace OpenIdProviderWebForms {
+
+
+ public partial class _default {
+
+ /// <summary>
+ /// loginView control.
+ /// </summary>
+ /// <remarks>
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ /// </remarks>
+ protected global::System.Web.UI.WebControls.LoginView loginView;
+ }
+}
diff --git a/samples/OpenIdProviderWebForms/OpenIdProviderWebForms.csproj b/samples/OpenIdProviderWebForms/OpenIdProviderWebForms.csproj
index c45b0f5..ceea842 100644
--- a/samples/OpenIdProviderWebForms/OpenIdProviderWebForms.csproj
+++ b/samples/OpenIdProviderWebForms/OpenIdProviderWebForms.csproj
@@ -99,6 +99,13 @@
<Compile Include="decide.aspx.designer.cs">
<DependentUpon>decide.aspx</DependentUpon>
</Compile>
+ <Compile Include="Default.aspx.cs">
+ <DependentUpon>Default.aspx</DependentUpon>
+ <SubType>ASPXCodeBehind</SubType>
+ </Compile>
+ <Compile Include="Default.aspx.designer.cs">
+ <DependentUpon>Default.aspx</DependentUpon>
+ </Compile>
<Compile Include="Global.asax.cs">
<DependentUpon>Global.asax</DependentUpon>
</Compile>