diff options
author | Andrew Arnott <andrewarnott@gmail.com> | 2009-12-01 08:46:37 -0800 |
---|---|---|
committer | Andrew Arnott <andrewarnott@gmail.com> | 2009-12-01 08:46:37 -0800 |
commit | 2d3d04e8c707fe2c571404aa4ee18b5d14e37514 (patch) | |
tree | 2eb64af6ef8d750fc7fb39cc7f9f07c7039f5a06 | |
parent | f9c61ba44a6db800ae181161c5d9151eb735f1e8 (diff) | |
download | DotNetOpenAuth-2d3d04e8c707fe2c571404aa4ee18b5d14e37514.zip DotNetOpenAuth-2d3d04e8c707fe2c571404aa4ee18b5d14e37514.tar.gz DotNetOpenAuth-2d3d04e8c707fe2c571404aa4ee18b5d14e37514.tar.bz2 |
Google Apps sample now intelligently displays the "full trust required" message.
3 files changed, 27 insertions, 4 deletions
diff --git a/samples/OpenIdRelyingPartyWebForms/loginGoogleApps.aspx b/samples/OpenIdRelyingPartyWebForms/loginGoogleApps.aspx index 3e9eb05..3f3860e 100644 --- a/samples/OpenIdRelyingPartyWebForms/loginGoogleApps.aspx +++ b/samples/OpenIdRelyingPartyWebForms/loginGoogleApps.aspx @@ -8,8 +8,9 @@ <rp:OpenIdLogin ID="OpenIdLogin1" runat="server" ExampleUrl="yourname@yourdomain.com" TabIndex="1" LabelText="Google Apps email address or domain:" RegisterVisible="False" onloggedin="OpenIdLogin1_LoggedIn" /> - <p> - <b>NOTE:</b> Full trust permissions are required. Modify web.config to allow full - trust before trying this sample. - </p> + <asp:Panel runat="server" ID="fullTrustRequired" EnableViewState="false"> + <b>STOP:</b> Full trust permissions are required for Google Apps support + due to certificate chain verification requirements. + Modify web.config to allow full trust before trying this sample. + </asp:Panel> </asp:Content> diff --git a/samples/OpenIdRelyingPartyWebForms/loginGoogleApps.aspx.cs b/samples/OpenIdRelyingPartyWebForms/loginGoogleApps.aspx.cs index c93f972..9e3acfe 100644 --- a/samples/OpenIdRelyingPartyWebForms/loginGoogleApps.aspx.cs +++ b/samples/OpenIdRelyingPartyWebForms/loginGoogleApps.aspx.cs @@ -2,6 +2,8 @@ using System; using System.Collections.Generic; using System.Linq; + using System.Security; + using System.Security.Permissions; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; @@ -29,10 +31,21 @@ protected void Page_Load(object sender, EventArgs e) { this.OpenIdLogin1.RelyingParty = relyingParty; this.OpenIdLogin1.Focus(); + + this.fullTrustRequired.Visible = IsPartiallyTrusted(); } protected void OpenIdLogin1_LoggedIn(object sender, OpenIdEventArgs e) { State.FriendlyLoginName = e.Response.FriendlyIdentifierForDisplay; } + + private static bool IsPartiallyTrusted() { + try { + new SecurityPermission(PermissionState.Unrestricted).Demand(); + return false; + } catch (SecurityException) { + return true; + } + } } } diff --git a/samples/OpenIdRelyingPartyWebForms/loginGoogleApps.aspx.designer.cs b/samples/OpenIdRelyingPartyWebForms/loginGoogleApps.aspx.designer.cs index 6224dbb..e927f65 100644 --- a/samples/OpenIdRelyingPartyWebForms/loginGoogleApps.aspx.designer.cs +++ b/samples/OpenIdRelyingPartyWebForms/loginGoogleApps.aspx.designer.cs @@ -21,5 +21,14 @@ namespace OpenIdRelyingPartyWebForms { /// To modify move field declaration from designer file to code-behind file. /// </remarks> protected global::DotNetOpenAuth.OpenId.RelyingParty.OpenIdLogin OpenIdLogin1; + + /// <summary> + /// fullTrustRequired 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.Panel fullTrustRequired; } } |