Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / xsp / System / Web / Extensions / ui / AuthenticationServiceManager.cs / 1 / AuthenticationServiceManager.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI { using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel; using System.Security.Permissions; using System.Text; using System.Web; using System.Web.ApplicationServices; using System.Web.Script.Serialization; using System.Web.Security; using System.Diagnostics; [ AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal), AspNetHostingPermission(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal), DefaultProperty("Path"), TypeConverter(typeof(EmptyStringExpandableObjectConverter)) ] public class AuthenticationServiceManager { private string _path; internal static void ConfigureAuthenticationService(ref StringBuilder sb, HttpContext context, ScriptManager scriptManager, Listproxies) { string authServiceUrl = null; AuthenticationServiceManager authManager; if(scriptManager.HasAuthenticationServiceManager) { authManager = scriptManager.AuthenticationService; // get ScriptManager.ServiceUrl authServiceUrl = authManager.Path.Trim(); if(authServiceUrl.Length > 0) { authServiceUrl = scriptManager.ResolveUrl(authServiceUrl); } } // combine proxy ServiceUrls (find the first one that has specified one) if(proxies != null) { foreach(ScriptManagerProxy proxy in proxies) { if(proxy.HasAuthenticationServiceManager) { authManager = proxy.AuthenticationService; // combine urls authServiceUrl = ApplicationServiceManager.MergeServiceUrls(authManager.Path, authServiceUrl, proxy); } } } AuthenticationServiceManager.GenerateInitializationScript(ref sb, context, scriptManager, authServiceUrl); } private static void GenerateInitializationScript(ref StringBuilder sb, HttpContext context, ScriptManager scriptManager, string serviceUrl) { bool authEnabled = ApplicationServiceHelper.AuthenticationServiceEnabled; if(authEnabled) { if (sb == null) { sb = new StringBuilder(ApplicationServiceManager.StringBuilderCapacity); } // The default path points to the built-in service (if it is enabled) // Note that the client can't default to this path because it doesn't know what the app root is, we must tell it. // We must specify the default path to the proxy even if a custom path is provided, because on the client they could // reset the path back to the default if they want. string defaultServicePath = scriptManager.ResolveClientUrl("~/" + System.Web.Script.Services.WebServiceData._authenticationServiceFileName); sb.Append("Sys.Services._AuthenticationService.DefaultWebServicePath = '"); sb.Append(JavaScriptString.QuoteString(defaultServicePath)); sb.Append("';\n"); } bool pathSpecified = !String.IsNullOrEmpty(serviceUrl); if(pathSpecified) { if (sb == null) { sb = new StringBuilder(ApplicationServiceManager.StringBuilderCapacity); } sb.Append("Sys.Services.AuthenticationService.set_path('"); sb.Append(JavaScriptString.QuoteString(serviceUrl)); sb.Append("');\n"); } // only emit this script if (1) the auth webservice is enabled or (2) a custom webservice url is specified if ((authEnabled || pathSpecified) && (context != null && context.Request.IsAuthenticated)) { Debug.Assert(sb != null); sb.Append("Sys.Services.AuthenticationService._setAuthenticated(true);\n"); } } [ DefaultValue(""), Category("Behavior"), NotifyParentProperty(true), ResourceDescription("ApplicationServiceManager_Path"), UrlProperty() ] public string Path { get { return _path ?? String.Empty; } set { _path = value; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI { using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel; using System.Security.Permissions; using System.Text; using System.Web; using System.Web.ApplicationServices; using System.Web.Script.Serialization; using System.Web.Security; using System.Diagnostics; [ AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal), AspNetHostingPermission(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal), DefaultProperty("Path"), TypeConverter(typeof(EmptyStringExpandableObjectConverter)) ] public class AuthenticationServiceManager { private string _path; internal static void ConfigureAuthenticationService(ref StringBuilder sb, HttpContext context, ScriptManager scriptManager, Listproxies) { string authServiceUrl = null; AuthenticationServiceManager authManager; if(scriptManager.HasAuthenticationServiceManager) { authManager = scriptManager.AuthenticationService; // get ScriptManager.ServiceUrl authServiceUrl = authManager.Path.Trim(); if(authServiceUrl.Length > 0) { authServiceUrl = scriptManager.ResolveUrl(authServiceUrl); } } // combine proxy ServiceUrls (find the first one that has specified one) if(proxies != null) { foreach(ScriptManagerProxy proxy in proxies) { if(proxy.HasAuthenticationServiceManager) { authManager = proxy.AuthenticationService; // combine urls authServiceUrl = ApplicationServiceManager.MergeServiceUrls(authManager.Path, authServiceUrl, proxy); } } } AuthenticationServiceManager.GenerateInitializationScript(ref sb, context, scriptManager, authServiceUrl); } private static void GenerateInitializationScript(ref StringBuilder sb, HttpContext context, ScriptManager scriptManager, string serviceUrl) { bool authEnabled = ApplicationServiceHelper.AuthenticationServiceEnabled; if(authEnabled) { if (sb == null) { sb = new StringBuilder(ApplicationServiceManager.StringBuilderCapacity); } // The default path points to the built-in service (if it is enabled) // Note that the client can't default to this path because it doesn't know what the app root is, we must tell it. // We must specify the default path to the proxy even if a custom path is provided, because on the client they could // reset the path back to the default if they want. string defaultServicePath = scriptManager.ResolveClientUrl("~/" + System.Web.Script.Services.WebServiceData._authenticationServiceFileName); sb.Append("Sys.Services._AuthenticationService.DefaultWebServicePath = '"); sb.Append(JavaScriptString.QuoteString(defaultServicePath)); sb.Append("';\n"); } bool pathSpecified = !String.IsNullOrEmpty(serviceUrl); if(pathSpecified) { if (sb == null) { sb = new StringBuilder(ApplicationServiceManager.StringBuilderCapacity); } sb.Append("Sys.Services.AuthenticationService.set_path('"); sb.Append(JavaScriptString.QuoteString(serviceUrl)); sb.Append("');\n"); } // only emit this script if (1) the auth webservice is enabled or (2) a custom webservice url is specified if ((authEnabled || pathSpecified) && (context != null && context.Request.IsAuthenticated)) { Debug.Assert(sb != null); sb.Append("Sys.Services.AuthenticationService._setAuthenticated(true);\n"); } } [ DefaultValue(""), Category("Behavior"), NotifyParentProperty(true), ResourceDescription("ApplicationServiceManager_Path"), UrlProperty() ] public string Path { get { return _path ?? String.Empty; } set { _path = value; } } } } // 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
- XmlSchemaComplexContent.cs
- DispatchChannelSink.cs
- DirectoryLocalQuery.cs
- Schema.cs
- XamlTypeMapper.cs
- WebServiceHostFactory.cs
- ConfigurationLocationCollection.cs
- FieldToken.cs
- NewItemsContextMenuStrip.cs
- ErrorFormatter.cs
- TreeBuilder.cs
- ProgressBarBrushConverter.cs
- Binding.cs
- ModelUIElement3D.cs
- TypeDefinition.cs
- metadatamappinghashervisitor.cs
- ArrangedElement.cs
- ImageEditor.cs
- RegexInterpreter.cs
- CannotUnloadAppDomainException.cs
- DependencyPropertyKind.cs
- IdentityReference.cs
- DataReceivedEventArgs.cs
- StringExpressionSet.cs
- ProtectedConfigurationSection.cs
- ModuleBuilder.cs
- DeferredTextReference.cs
- AxHostDesigner.cs
- TransformerTypeCollection.cs
- MediaPlayerState.cs
- RevocationPoint.cs
- EffectiveValueEntry.cs
- WebPageTraceListener.cs
- Compiler.cs
- UserNameSecurityToken.cs
- GenericTypeParameterBuilder.cs
- CalendarDesigner.cs
- XmlException.cs
- Opcode.cs
- ClickablePoint.cs
- CodePrimitiveExpression.cs
- SmtpReplyReaderFactory.cs
- EncoderFallback.cs
- IconConverter.cs
- AnnotationAdorner.cs
- MemberExpression.cs
- ServiceBehaviorElementCollection.cs
- DataList.cs
- DecimalConverter.cs
- HandlerFactoryWrapper.cs
- LayoutEditorPart.cs
- View.cs
- HostingEnvironmentException.cs
- XPathDocumentBuilder.cs
- InstanceHandleReference.cs
- SQLStringStorage.cs
- RichTextBoxConstants.cs
- CallTemplateAction.cs
- _OverlappedAsyncResult.cs
- XPathPatternParser.cs
- ApplicationFileParser.cs
- TreeNodeBinding.cs
- ActivityCodeDomSerializer.cs
- NativeMethods.cs
- PropertyTabAttribute.cs
- SerialStream.cs
- TextEditorCharacters.cs
- RangeValidator.cs
- XXXOnTypeBuilderInstantiation.cs
- HttpHandlersInstallComponent.cs
- ZipPackagePart.cs
- RuntimeArgumentHandle.cs
- DataObjectCopyingEventArgs.cs
- DataGridViewCheckBoxColumn.cs
- TimelineClockCollection.cs
- CodeGeneratorAttribute.cs
- cache.cs
- OleDbDataAdapter.cs
- ConfigurationPermission.cs
- WebPartDisplayModeCollection.cs
- ProtocolsSection.cs
- EditorPartCollection.cs
- DispatcherExceptionFilterEventArgs.cs
- webeventbuffer.cs
- FatalException.cs
- Assert.cs
- DataRowComparer.cs
- XmlSchemaInfo.cs
- QueryComponents.cs
- Serializer.cs
- ExpandedWrapper.cs
- DataGridViewRowPostPaintEventArgs.cs
- ItemDragEvent.cs
- PeerValidationBehavior.cs
- TokenBasedSetEnumerator.cs
- InvalidCastException.cs
- EntityType.cs
- WebReferencesBuildProvider.cs
- GlobalizationSection.cs
- PropertyBuilder.cs