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
- PropertyChangingEventArgs.cs
- TextEffect.cs
- LocalizationComments.cs
- SamlAttributeStatement.cs
- InnerItemCollectionView.cs
- ParserHooks.cs
- DataQuery.cs
- DeclarativeCatalogPart.cs
- AsymmetricKeyExchangeDeformatter.cs
- _TLSstream.cs
- AutomationIdentifierGuids.cs
- AppSecurityManager.cs
- SizeAnimationBase.cs
- EdmEntityTypeAttribute.cs
- Table.cs
- DefaultDiscoveryServiceExtension.cs
- QilVisitor.cs
- PartEditor.cs
- ClipboardProcessor.cs
- AsymmetricKeyExchangeFormatter.cs
- AdjustableArrowCap.cs
- dataprotectionpermission.cs
- HierarchicalDataSourceConverter.cs
- DeploymentExceptionMapper.cs
- DSACryptoServiceProvider.cs
- WindowsIdentity.cs
- NullableDecimalSumAggregationOperator.cs
- TemplateAction.cs
- SessionStateSection.cs
- SqlNotificationRequest.cs
- Point3DCollectionValueSerializer.cs
- DataSetMappper.cs
- ScrollContentPresenter.cs
- RegexRunner.cs
- PathFigure.cs
- RequestTimeoutManager.cs
- TraceSection.cs
- _OverlappedAsyncResult.cs
- RoleManagerEventArgs.cs
- HotSpotCollection.cs
- PropertyTabAttribute.cs
- _FixedSizeReader.cs
- TraceLevelStore.cs
- TreeViewHitTestInfo.cs
- CustomCredentialPolicy.cs
- Range.cs
- DataGridCellItemAutomationPeer.cs
- CategoryValueConverter.cs
- RegistryPermission.cs
- GAC.cs
- ProtectedConfigurationProviderCollection.cs
- SafeArrayRankMismatchException.cs
- DataColumn.cs
- DetailsViewDeletedEventArgs.cs
- QueryMatcher.cs
- ConfigurationSection.cs
- SignedXmlDebugLog.cs
- MyContact.cs
- DataServiceClientException.cs
- FlowLayout.cs
- BigInt.cs
- DetailsViewDesigner.cs
- XmlDictionary.cs
- ConnectionPoint.cs
- objectquery_tresulttype.cs
- WindowsGraphicsWrapper.cs
- RSAOAEPKeyExchangeDeformatter.cs
- ApplicationInterop.cs
- User.cs
- RoamingStoreFile.cs
- OdbcErrorCollection.cs
- Timeline.cs
- safelinkcollection.cs
- Buffer.cs
- TrackingValidationObjectDictionary.cs
- CompiledQuery.cs
- TreeViewItemAutomationPeer.cs
- CompiledQuery.cs
- DataGridCommandEventArgs.cs
- Base64Encoder.cs
- HttpConfigurationSystem.cs
- Content.cs
- DoubleLink.cs
- ConstructorNeedsTagAttribute.cs
- CssTextWriter.cs
- AssemblyFilter.cs
- XD.cs
- Span.cs
- DocumentCollection.cs
- KeyGesture.cs
- RC2.cs
- DecimalStorage.cs
- WebEventCodes.cs
- PostBackTrigger.cs
- SamlSubject.cs
- FamilyCollection.cs
- AtomServiceDocumentSerializer.cs
- AccessorTable.cs
- StaticExtensionConverter.cs
- TextEditorContextMenu.cs