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
- TypeLibConverter.cs
- Setter.cs
- InvalidateEvent.cs
- AuthenticateEventArgs.cs
- MyContact.cs
- ActiveXHelper.cs
- ModuleBuilderData.cs
- TreeViewImageIndexConverter.cs
- LinearGradientBrush.cs
- sortedlist.cs
- XmlAttributeProperties.cs
- DynamicValueConverter.cs
- SqlGenericUtil.cs
- CodeLabeledStatement.cs
- XmlProcessingInstruction.cs
- BaseCodeDomTreeGenerator.cs
- Operand.cs
- GestureRecognizer.cs
- OdbcTransaction.cs
- ConstraintStruct.cs
- SiteMap.cs
- MaskedTextProvider.cs
- MultiBindingExpression.cs
- SplitterDesigner.cs
- SrgsGrammar.cs
- PageHandlerFactory.cs
- GeneratedContractType.cs
- ContractsBCL.cs
- TracePayload.cs
- MetadataItemCollectionFactory.cs
- Events.cs
- HandleInitializationContext.cs
- ColumnResult.cs
- WindowsFont.cs
- DeviceSpecificDesigner.cs
- OdbcInfoMessageEvent.cs
- TextBoxLine.cs
- TemplateColumn.cs
- CompModSwitches.cs
- TagMapInfo.cs
- WebBaseEventKeyComparer.cs
- BatchParser.cs
- AggregateNode.cs
- Span.cs
- SafeMarshalContext.cs
- TypeBuilder.cs
- DataObject.cs
- PseudoWebRequest.cs
- XPathNodeIterator.cs
- SmtpFailedRecipientException.cs
- XmlDeclaration.cs
- CloseSequenceResponse.cs
- MtomMessageEncodingElement.cs
- StrokeNodeOperations.cs
- ListControl.cs
- HttpRawResponse.cs
- MethodBuilderInstantiation.cs
- XmlDocumentSerializer.cs
- HtmlEmptyTagControlBuilder.cs
- CharConverter.cs
- TableCell.cs
- HttpListenerPrefixCollection.cs
- CompiledQueryCacheEntry.cs
- ActiveXHost.cs
- ParentControlDesigner.cs
- ProcessManager.cs
- InlineCollection.cs
- BaseValidator.cs
- ResponseStream.cs
- LinqToSqlWrapper.cs
- DictationGrammar.cs
- NullRuntimeConfig.cs
- TypeSemantics.cs
- SafeMemoryMappedViewHandle.cs
- XsltCompileContext.cs
- SpeechEvent.cs
- NotifyIcon.cs
- IdentityModelDictionary.cs
- RequestBringIntoViewEventArgs.cs
- EncodingDataItem.cs
- DispatcherHooks.cs
- Root.cs
- GACMembershipCondition.cs
- SetterBaseCollection.cs
- SemaphoreFullException.cs
- SqlOuterApplyReducer.cs
- DataGridTextColumn.cs
- TargetConverter.cs
- RadialGradientBrush.cs
- MailBnfHelper.cs
- COAUTHIDENTITY.cs
- SecurityContext.cs
- ExportFileRequest.cs
- StringPropertyBuilder.cs
- Int16AnimationUsingKeyFrames.cs
- GradientStop.cs
- BinaryMethodMessage.cs
- TypeNameConverter.cs
- ZipIOCentralDirectoryFileHeader.cs
- RegisteredHiddenField.cs