Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / MIT / System / Web / Mobile / MobileFormsAuthentication.cs / 1305376 / MobileFormsAuthentication.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System.Diagnostics; using System.Security; using System.Web.Security; using System.Web.UI.MobileControls; using System.Security.Permissions; namespace System.Web.Mobile { /* * MobileFormsAuthentication * provides mobile comopatible version of ASP.Net methods * * Copyright (c) 2000 Microsoft Corporation */ [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] [Obsolete("The System.Web.Mobile.dll assembly has been deprecated and should no longer be used. For information about how to develop ASP.NET mobile applications, see http://go.microsoft.com/fwlink/?LinkId=157231.")] public class MobileFormsAuthentication { // Class only contains statics, so make the constructor private. private MobileFormsAuthentication() { } ///public static void RedirectFromLoginPage(String userName, bool createPersistentCookie) { FormsAuthentication.RedirectFromLoginPage(userName, createPersistentCookie, FormsAuthentication.FormsCookiePath); } /// public static void RedirectFromLoginPage(String userName, bool createPersistentCookie, String strCookiePath) { FormsAuthentication.RedirectFromLoginPage(userName, createPersistentCookie, strCookiePath); /* // Disallow redirection to an absolute url. String requestReturnUrl = HttpContext.Current.Request["ReturnUrl"]; if (requestReturnUrl != null && requestReturnUrl.IndexOf (":") != -1) { throw new SecurityException(SR.GetString(SR.Security_ReturnUrlCannotBeAbsolute, requestReturnUrl)); } // GetRedirectUrl redirects to returnUrl if it exists, current app's default.aspx otherwise. String redirectUrl = FormsAuthentication.GetRedirectUrl(userName, createPersistentCookie); Debug.Assert (redirectUrl == requestReturnUrl || requestReturnUrl == null); String updatedRedirectUrl = redirectUrl; String cookieName = FormsAuthentication.FormsCookieName; HttpCookie cookie = FormsAuthentication.GetAuthCookie(userName, createPersistentCookie, strCookiePath); String strEncrypted = cookie.Value; int ticketLoc = redirectUrl.IndexOf(cookieName + "="); if(ticketLoc != -1) { updatedRedirectUrl = redirectUrl.Substring(0, ticketLoc); updatedRedirectUrl += cookieName + "=" + strEncrypted; int ampersandLoc = redirectUrl.IndexOf('&', ticketLoc); if(ampersandLoc != -1) { updatedRedirectUrl += redirectUrl.Substring(ampersandLoc); } } else { int loc = updatedRedirectUrl.IndexOf('?'); updatedRedirectUrl += (loc != -1) ? "&" : "?"; updatedRedirectUrl += cookieName + "=" + strEncrypted; } HttpContext.Current.Response.Redirect(updatedRedirectUrl, true); // MobileRedirect.RedirectToUrl(HttpContext.Current, updatedRedirectUrl, true); */ } /// public static void SignOut() { /* MobilePage page = HttpContext.Current.Handler as MobilePage; if (page != null) { page.Adapter.PersistCookielessData = false; if (!page.Device.SupportsEmptyStringInCookieValue) { // Desktop signout with empty cookie value is not handled properly by the device. InternalSignOut (); return; } } */ FormsAuthentication.SignOut(); } /* private static void InternalSignOut () { HttpContext context = HttpContext.Current; String userName = context.User == null || context.User.Identity == null || context.User.Identity.Name == null ? "" : context.User.Identity.Name; FormsAuthenticationTicket ticket = new FormsAuthenticationTicket ( 1, // version userName, DateTime.Now, // Issue-Date new DateTime(1999, 10, 12), // Expiration false, // IsPersistent "", // User-Data FormsAuthentication.FormsCookiePath); String encryptedTicket = FormsAuthentication.Encrypt (ticket); if (encryptedTicket == null) { // Encrypt returned null encryptedTicket = "x"; } HttpCookie cookie = new HttpCookie (FormsAuthentication.FormsCookieName, encryptedTicket); cookie.Path = FormsAuthentication.FormsCookiePath; cookie.Expires = new System.DateTime (1999, 10, 12); cookie.Secure = FormsAuthentication.RequireSSL; context.Response.Cookies.Remove (FormsAuthentication.FormsCookieName); context.Response.Cookies.Add (cookie); } */ } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System.Diagnostics; using System.Security; using System.Web.Security; using System.Web.UI.MobileControls; using System.Security.Permissions; namespace System.Web.Mobile { /* * MobileFormsAuthentication * provides mobile comopatible version of ASP.Net methods * * Copyright (c) 2000 Microsoft Corporation */ [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] [Obsolete("The System.Web.Mobile.dll assembly has been deprecated and should no longer be used. For information about how to develop ASP.NET mobile applications, see http://go.microsoft.com/fwlink/?LinkId=157231.")] public class MobileFormsAuthentication { // Class only contains statics, so make the constructor private. private MobileFormsAuthentication() { } ///public static void RedirectFromLoginPage(String userName, bool createPersistentCookie) { FormsAuthentication.RedirectFromLoginPage(userName, createPersistentCookie, FormsAuthentication.FormsCookiePath); } /// public static void RedirectFromLoginPage(String userName, bool createPersistentCookie, String strCookiePath) { FormsAuthentication.RedirectFromLoginPage(userName, createPersistentCookie, strCookiePath); /* // Disallow redirection to an absolute url. String requestReturnUrl = HttpContext.Current.Request["ReturnUrl"]; if (requestReturnUrl != null && requestReturnUrl.IndexOf (":") != -1) { throw new SecurityException(SR.GetString(SR.Security_ReturnUrlCannotBeAbsolute, requestReturnUrl)); } // GetRedirectUrl redirects to returnUrl if it exists, current app's default.aspx otherwise. String redirectUrl = FormsAuthentication.GetRedirectUrl(userName, createPersistentCookie); Debug.Assert (redirectUrl == requestReturnUrl || requestReturnUrl == null); String updatedRedirectUrl = redirectUrl; String cookieName = FormsAuthentication.FormsCookieName; HttpCookie cookie = FormsAuthentication.GetAuthCookie(userName, createPersistentCookie, strCookiePath); String strEncrypted = cookie.Value; int ticketLoc = redirectUrl.IndexOf(cookieName + "="); if(ticketLoc != -1) { updatedRedirectUrl = redirectUrl.Substring(0, ticketLoc); updatedRedirectUrl += cookieName + "=" + strEncrypted; int ampersandLoc = redirectUrl.IndexOf('&', ticketLoc); if(ampersandLoc != -1) { updatedRedirectUrl += redirectUrl.Substring(ampersandLoc); } } else { int loc = updatedRedirectUrl.IndexOf('?'); updatedRedirectUrl += (loc != -1) ? "&" : "?"; updatedRedirectUrl += cookieName + "=" + strEncrypted; } HttpContext.Current.Response.Redirect(updatedRedirectUrl, true); // MobileRedirect.RedirectToUrl(HttpContext.Current, updatedRedirectUrl, true); */ } /// public static void SignOut() { /* MobilePage page = HttpContext.Current.Handler as MobilePage; if (page != null) { page.Adapter.PersistCookielessData = false; if (!page.Device.SupportsEmptyStringInCookieValue) { // Desktop signout with empty cookie value is not handled properly by the device. InternalSignOut (); return; } } */ FormsAuthentication.SignOut(); } /* private static void InternalSignOut () { HttpContext context = HttpContext.Current; String userName = context.User == null || context.User.Identity == null || context.User.Identity.Name == null ? "" : context.User.Identity.Name; FormsAuthenticationTicket ticket = new FormsAuthenticationTicket ( 1, // version userName, DateTime.Now, // Issue-Date new DateTime(1999, 10, 12), // Expiration false, // IsPersistent "", // User-Data FormsAuthentication.FormsCookiePath); String encryptedTicket = FormsAuthentication.Encrypt (ticket); if (encryptedTicket == null) { // Encrypt returned null encryptedTicket = "x"; } HttpCookie cookie = new HttpCookie (FormsAuthentication.FormsCookieName, encryptedTicket); cookie.Path = FormsAuthentication.FormsCookiePath; cookie.Expires = new System.DateTime (1999, 10, 12); cookie.Secure = FormsAuthentication.RequireSSL; context.Response.Cookies.Remove (FormsAuthentication.FormsCookieName); context.Response.Cookies.Add (cookie); } */ } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HelpPage.cs
- Polyline.cs
- TableHeaderCell.cs
- WorkflowRuntimeServicesBehavior.cs
- EntitySqlQueryState.cs
- FontSource.cs
- XmlSchemaComplexContent.cs
- CngAlgorithm.cs
- OrderedDictionary.cs
- dbenumerator.cs
- JournalNavigationScope.cs
- SignedInfo.cs
- XmlHierarchicalDataSourceView.cs
- ToolStripItemCollection.cs
- SqlConnectionHelper.cs
- SystemIPGlobalStatistics.cs
- ToolStripItem.cs
- CommandLineParser.cs
- XmlHelper.cs
- PartialToken.cs
- DescendantQuery.cs
- ServiceHttpModule.cs
- Message.cs
- TableLayoutPanelDesigner.cs
- MarkupWriter.cs
- DataKeyArray.cs
- DatatypeImplementation.cs
- MenuItemBinding.cs
- ComponentEvent.cs
- BoundingRectTracker.cs
- UIElement3D.cs
- COM2IManagedPerPropertyBrowsingHandler.cs
- LoginNameDesigner.cs
- DoubleUtil.cs
- SqlConnectionString.cs
- WindowsClientCredential.cs
- DataGridViewCheckBoxCell.cs
- TrackingProfileDeserializationException.cs
- DBConnection.cs
- PartialCachingAttribute.cs
- ZeroOpNode.cs
- X509CertificateCollection.cs
- CacheDependency.cs
- ScriptIgnoreAttribute.cs
- PageEventArgs.cs
- PagesChangedEventArgs.cs
- LeftCellWrapper.cs
- InvalidFilterCriteriaException.cs
- RolePrincipal.cs
- DesignerTransaction.cs
- ArrangedElement.cs
- TextOnlyOutput.cs
- XXXInfos.cs
- ObjectPropertyMapping.cs
- DataGridViewLinkColumn.cs
- FixedHighlight.cs
- SByteStorage.cs
- DPTypeDescriptorContext.cs
- BaseCodeDomTreeGenerator.cs
- FixedTextSelectionProcessor.cs
- SystemIPGlobalProperties.cs
- Compiler.cs
- XmlObjectSerializerContext.cs
- TextOutput.cs
- DataGridViewAutoSizeColumnsModeEventArgs.cs
- DesignerActionGlyph.cs
- FormViewInsertEventArgs.cs
- AddInContractAttribute.cs
- PriorityBindingExpression.cs
- SqlDependencyListener.cs
- PatternMatcher.cs
- GB18030Encoding.cs
- QueryableDataSourceEditData.cs
- ChainedAsyncResult.cs
- TiffBitmapDecoder.cs
- CodeEventReferenceExpression.cs
- Hash.cs
- Classification.cs
- FontSource.cs
- RC2CryptoServiceProvider.cs
- PackageRelationshipSelector.cs
- StatusBarItemAutomationPeer.cs
- MenuAutoFormat.cs
- CmsInterop.cs
- ControlDesignerState.cs
- ChangeConflicts.cs
- CodeIdentifier.cs
- GenerateScriptTypeAttribute.cs
- DataGridViewSelectedColumnCollection.cs
- ToolboxControl.cs
- unitconverter.cs
- CodeMemberMethod.cs
- OdbcDataAdapter.cs
- XmlTextReaderImplHelpers.cs
- NativeMethods.cs
- TypeUnloadedException.cs
- DbConnectionOptions.cs
- COM2IDispatchConverter.cs
- BaseHashHelper.cs
- DrawingBrush.cs