Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / xsp / System / Web / Configuration / AuthenticationConfig.cs / 1 / AuthenticationConfig.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
/*
* AuthenticationConfigHandler class
*
* Copyright (c) 1999 Microsoft Corporation
*/
namespace System.Web.Configuration {
using System.Runtime.Serialization;
using System.Web.Util;
using System.Collections;
using System.IO;
using System.Security.Principal;
using System.Xml;
using System.Security.Cryptography;
using System.Configuration;
using System.Globalization;
using System.Web.Hosting;
static internal class AuthenticationConfig {
internal static String GetCompleteLoginUrl(HttpContext context, String loginUrl) {
if (String.IsNullOrEmpty(loginUrl)) {
return String.Empty;
}
if (UrlPath.IsRelativeUrl(loginUrl)) {
loginUrl = UrlPath.Combine(HttpRuntime.AppDomainAppVirtualPathString, loginUrl);
}
return loginUrl;
}
internal static bool AccessingLoginPage(HttpContext context, String loginUrl) {
if (String.IsNullOrEmpty(loginUrl)) {
return false;
}
loginUrl = GetCompleteLoginUrl(context, loginUrl);
if (String.IsNullOrEmpty(loginUrl)) {
return false;
}
// Ignore query string
int iqs = loginUrl.IndexOf('?');
if (iqs >= 0) {
loginUrl = loginUrl.Substring(0, iqs);
}
String requestPath = context.Request.Path;
if (StringUtil.EqualsIgnoreCase(requestPath, loginUrl)) {
return true;
}
// It could be that loginUrl in config was UrlEncoded (ASURT 98932)
if (loginUrl.IndexOf('%') >= 0) {
String decodedLoginUrl;
// encoding is unknown try UTF-8 first, then request encoding
decodedLoginUrl = HttpUtility.UrlDecode(loginUrl);
if (StringUtil.EqualsIgnoreCase(requestPath, decodedLoginUrl)) {
return true;
}
decodedLoginUrl = HttpUtility.UrlDecode(loginUrl, context.Request.ContentEncoding);
if (StringUtil.EqualsIgnoreCase(requestPath, decodedLoginUrl)) {
return true;
}
}
return false;
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
/*
* AuthenticationConfigHandler class
*
* Copyright (c) 1999 Microsoft Corporation
*/
namespace System.Web.Configuration {
using System.Runtime.Serialization;
using System.Web.Util;
using System.Collections;
using System.IO;
using System.Security.Principal;
using System.Xml;
using System.Security.Cryptography;
using System.Configuration;
using System.Globalization;
using System.Web.Hosting;
static internal class AuthenticationConfig {
internal static String GetCompleteLoginUrl(HttpContext context, String loginUrl) {
if (String.IsNullOrEmpty(loginUrl)) {
return String.Empty;
}
if (UrlPath.IsRelativeUrl(loginUrl)) {
loginUrl = UrlPath.Combine(HttpRuntime.AppDomainAppVirtualPathString, loginUrl);
}
return loginUrl;
}
internal static bool AccessingLoginPage(HttpContext context, String loginUrl) {
if (String.IsNullOrEmpty(loginUrl)) {
return false;
}
loginUrl = GetCompleteLoginUrl(context, loginUrl);
if (String.IsNullOrEmpty(loginUrl)) {
return false;
}
// Ignore query string
int iqs = loginUrl.IndexOf('?');
if (iqs >= 0) {
loginUrl = loginUrl.Substring(0, iqs);
}
String requestPath = context.Request.Path;
if (StringUtil.EqualsIgnoreCase(requestPath, loginUrl)) {
return true;
}
// It could be that loginUrl in config was UrlEncoded (ASURT 98932)
if (loginUrl.IndexOf('%') >= 0) {
String decodedLoginUrl;
// encoding is unknown try UTF-8 first, then request encoding
decodedLoginUrl = HttpUtility.UrlDecode(loginUrl);
if (StringUtil.EqualsIgnoreCase(requestPath, decodedLoginUrl)) {
return true;
}
decodedLoginUrl = HttpUtility.UrlDecode(loginUrl, context.Request.ContentEncoding);
if (StringUtil.EqualsIgnoreCase(requestPath, decodedLoginUrl)) {
return true;
}
}
return false;
}
}
}
// 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
- MouseEvent.cs
- FunctionNode.cs
- FixedPageProcessor.cs
- NetworkAddressChange.cs
- SyndicationElementExtension.cs
- IOThreadTimer.cs
- ResourcesChangeInfo.cs
- RouteItem.cs
- ColumnTypeConverter.cs
- XpsS0ValidatingLoader.cs
- DecimalStorage.cs
- ToolCreatedEventArgs.cs
- InheritanceAttribute.cs
- ResXResourceWriter.cs
- HighlightComponent.cs
- SizeChangedInfo.cs
- XsdCachingReader.cs
- SmiMetaData.cs
- DetailsViewRow.cs
- SqlDataSourceCommandEventArgs.cs
- UriTemplateDispatchFormatter.cs
- X509Utils.cs
- EmptyReadOnlyDictionaryInternal.cs
- UInt64Converter.cs
- LinqDataSourceDeleteEventArgs.cs
- TextElementEnumerator.cs
- XamlSerializationHelper.cs
- ComContractElement.cs
- AxisAngleRotation3D.cs
- AppDomainAttributes.cs
- Function.cs
- StorageInfo.cs
- MediaContext.cs
- Effect.cs
- AppSettingsExpressionBuilder.cs
- WorkflowRuntimeSection.cs
- EntityDataSourceWizardForm.cs
- XamlFigureLengthSerializer.cs
- Run.cs
- DocumentEventArgs.cs
- Parameter.cs
- BindingExpressionUncommonField.cs
- ConfigsHelper.cs
- ObjectDesignerDataSourceView.cs
- CodeExpressionStatement.cs
- processwaithandle.cs
- FixedSOMTable.cs
- DbMetaDataFactory.cs
- ReverseComparer.cs
- NativeMethods.cs
- _NegoState.cs
- XmlCharacterData.cs
- PropertyEmitterBase.cs
- ISSmlParser.cs
- MessageQueueConverter.cs
- COM2PictureConverter.cs
- ConvertEvent.cs
- HeaderCollection.cs
- MarkupCompilePass2.cs
- AssemblyEvidenceFactory.cs
- CollectionBase.cs
- RadialGradientBrush.cs
- Pens.cs
- CellPartitioner.cs
- ProbeDuplex11AsyncResult.cs
- BufferModeSettings.cs
- nulltextcontainer.cs
- SmtpNegotiateAuthenticationModule.cs
- EventMappingSettings.cs
- SessionEndingCancelEventArgs.cs
- PerfService.cs
- CompiledWorkflowDefinitionContext.cs
- EmptyEnumerator.cs
- PermissionListSet.cs
- DummyDataSource.cs
- XPathMessageFilterElementCollection.cs
- Grid.cs
- SqlReferenceCollection.cs
- InkCanvasInnerCanvas.cs
- FixedSOMPageConstructor.cs
- ProfileService.cs
- AsymmetricKeyExchangeFormatter.cs
- UpdateEventArgs.cs
- Model3DGroup.cs
- GZipDecoder.cs
- Win32.cs
- MarkupCompilePass1.cs
- IconBitmapDecoder.cs
- PtsContext.cs
- TriggerCollection.cs
- EntityModelSchemaGenerator.cs
- EncodingNLS.cs
- SimpleType.cs
- FileDialogCustomPlace.cs
- ArgumentException.cs
- ThicknessConverter.cs
- PackageFilter.cs
- HierarchicalDataSourceControl.cs
- DataProtection.cs
- TextBox.cs