Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / Configuration / AuthenticationSection.cs / 2 / AuthenticationSection.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
/*****************************************************************************
From machine.config
******************************************************************************/
namespace System.Web.Configuration {
using System;
using System.Xml;
using System.Configuration;
using System.Collections.Specialized;
using System.Collections;
using System.Globalization;
using System.IO;
using System.Text;
using System.Web.Util;
using System.ComponentModel;
using System.Security.Permissions;
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
public sealed class AuthenticationSection : ConfigurationSection {
private static ConfigurationPropertyCollection _properties;
private static readonly ConfigurationProperty _propForms =
new ConfigurationProperty("forms", typeof(FormsAuthenticationConfiguration), null, ConfigurationPropertyOptions.None);
private static readonly ConfigurationProperty _propPassport =
new ConfigurationProperty("passport", typeof(PassportAuthentication), null, ConfigurationPropertyOptions.None);
private static readonly ConfigurationProperty _propMode =
new ConfigurationProperty("mode", typeof(AuthenticationMode), AuthenticationMode.Windows, ConfigurationPropertyOptions.None);
static AuthenticationSection() {
// Property initialization
_properties = new ConfigurationPropertyCollection();
_properties.Add(_propForms);
_properties.Add(_propPassport);
_properties.Add(_propMode);
}
private bool authenticationModeCached = false;
private AuthenticationMode authenticationModeCache;
public AuthenticationSection() {
}
protected override ConfigurationPropertyCollection Properties {
get {
return _properties;
}
}
[ConfigurationProperty("forms")]
public FormsAuthenticationConfiguration Forms {
get {
return (FormsAuthenticationConfiguration)base[_propForms];
}
}
[ConfigurationProperty("passport")]
public PassportAuthentication Passport {
get {
return (PassportAuthentication)base[_propPassport];
}
}
[ConfigurationProperty("mode", DefaultValue = AuthenticationMode.Windows)]
public AuthenticationMode Mode {
get {
if (authenticationModeCached == false) {
authenticationModeCache = (AuthenticationMode)base[_propMode];
authenticationModeCached = true;
}
return authenticationModeCache;
}
set {
base[_propMode] = value;
authenticationModeCache = value;
}
}
protected override void Reset(ConfigurationElement parentElement) {
base.Reset(parentElement);
authenticationModeCached = false;
}
// this should only happen at runtime since the design time machine does not
// need Passport installed to configure the server.
internal void ValidateAuthenticationMode() {
if (Mode == AuthenticationMode.Passport && UnsafeNativeMethods.PassportVersion() < 0) {
throw new ConfigurationErrorsException(SR.GetString(SR.Passport_not_installed));
}
}
}
}
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ThreadStaticAttribute.cs
- XmlNodeChangedEventArgs.cs
- odbcmetadatafactory.cs
- HyperLink.cs
- URL.cs
- NamedPermissionSet.cs
- XsdDuration.cs
- WebPartsPersonalizationAuthorization.cs
- IndependentlyAnimatedPropertyMetadata.cs
- HtmlInputPassword.cs
- XmlCDATASection.cs
- ThaiBuddhistCalendar.cs
- SystemInfo.cs
- HashAlgorithm.cs
- x509store.cs
- EventBuilder.cs
- IndexingContentUnit.cs
- ContentPlaceHolder.cs
- SystemIPInterfaceProperties.cs
- DateTimeValueSerializer.cs
- WindowsMenu.cs
- FormClosedEvent.cs
- XmlSchemaSimpleTypeList.cs
- DuplexClientBase.cs
- AppSettingsExpressionBuilder.cs
- SecUtil.cs
- SchemaNotation.cs
- ListManagerBindingsCollection.cs
- BufferedStream.cs
- SessionKeyExpiredException.cs
- GcHandle.cs
- WebPartHeaderCloseVerb.cs
- ApplicationBuildProvider.cs
- CustomLineCap.cs
- ZipIORawDataFileBlock.cs
- DataGridRelationshipRow.cs
- ContainerSelectorActiveEvent.cs
- VsPropertyGrid.cs
- AutomationProperty.cs
- InstalledFontCollection.cs
- ListViewAutomationPeer.cs
- CounterSample.cs
- ObjectDataSourceFilteringEventArgs.cs
- PropertyGridEditorPart.cs
- QilScopedVisitor.cs
- __ComObject.cs
- ToolStripDropDown.cs
- IdentitySection.cs
- ServiceDescriptionImporter.cs
- CompilationLock.cs
- PageOutputColor.cs
- DBBindings.cs
- EventLogEntryCollection.cs
- ParameterBinding.cs
- IdentityElement.cs
- Emitter.cs
- DocumentReference.cs
- CodeAccessPermission.cs
- ElementMarkupObject.cs
- PointAnimation.cs
- XPathDocumentIterator.cs
- StructuredTypeEmitter.cs
- PinnedBufferMemoryStream.cs
- OutputCacheSettingsSection.cs
- Certificate.cs
- HelpInfo.cs
- PropertyChangingEventArgs.cs
- Double.cs
- SoundPlayerAction.cs
- BitmapCacheBrush.cs
- MimeMapping.cs
- RandomNumberGenerator.cs
- StateBag.cs
- PeerReferralPolicy.cs
- PropertyFilterAttribute.cs
- DataKey.cs
- EmptyQuery.cs
- D3DImage.cs
- SqlIdentifier.cs
- XmlDataSourceNodeDescriptor.cs
- DiscoveryClientBindingElement.cs
- Model3DCollection.cs
- EventManager.cs
- FileDialogCustomPlaces.cs
- ObjectAnimationUsingKeyFrames.cs
- EpmCustomContentDeSerializer.cs
- DataView.cs
- RuleElement.cs
- ThicknessAnimation.cs
- RichTextBox.cs
- VirtualizedItemPattern.cs
- AnnotationDocumentPaginator.cs
- HijriCalendar.cs
- ConfigurationSectionHelper.cs
- IriParsingElement.cs
- PrintControllerWithStatusDialog.cs
- AttributeXamlType.cs
- SqlConnectionPoolProviderInfo.cs
- GridView.cs
- DefaultHttpHandler.cs