I cari esperti, il
I hanno un applicazione Web del aspx che richiede per funzionare più di 8 ore senza rinfrescano o logout. Prego nessun collegamento ma io vorrebbe conoscere il codice di qualche VB.NET o il prespegnimento di sessione di Javascript che avverte lo scritto a finestra che dice: “Non ci è stato attività per un po di tempo. Scattar “GIUSTO„ se desiderate continuare la vostra sessione, o scatto “annullamento„ per logout. Per la vostra sicurezza se non potete rispondere a questo messaggio in 2 minuti sarete annotato automaticamente fuori„ e riorientate a login.aspx dopo che il prespegnimento espira. il
I sta facendo questo per i 2 giorni senza alcun successo, inoltre io lo gradirebbe ha potuto vedere il mio codice qui sotto: web.config, global.asax, login.vb per la vostra revisione ed il vostro aiuto è realmente molto elogiativi. Thanks.
WEB.CONFIG
: Come un'alternativa alla mano che pubblica questa lima voi può utilizzare l'attrezzo di admin di fotoricettore del per configurare le regolazioni per la vostra applicazione. Use l'opzione di configurazione di Website->Asp.Net nella lista completa visiva di Studio. A delle regolazioni e delle osservazioni può essere trovato nei ments del machine.config.com situati solitamente nel \ Windows \ Microsoft.Net \ Framework \ v2.x \ di Config--name= " system.web.extensions„ type= " System.Web.Configuration del del >
. SystemWebExtensionsSectionGroup, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, type= " " scripting„ System.Web.Configuration del name= " del di PublicKeyToken=31BF3856AD364E35. ScriptingSectionGroup, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35 " > < nome di sezione = " scriptResourceHandler„ type= " System.Web.Configuration. ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, webServices falsi„ type= " System.Web.Configuration del name= " del „ del requirePermission= " di PublicKeyToken=31BF3856AD364E35„ allowDefinition= " MachineToApplication„. ScriptingWebServicesSectionGroup, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35 " > < nome di sezione = " jsonSerialization„ type= " System.Web.Configuration. ScriptingJsonSerializationSection, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, allowDefinition= " falso Everywhere„/> Application„/> e„ type= " System.Web.Configuration. ScriptingAuthenticationServiceSection, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, requirePermission= allowDefinition= " " falso„ MachineToApplication„/> 64E35„ /> < nome di sezione = " roleService„ type= " System.Web.Configuration. ScriptingRoleServiceSection, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, requirePermission= allowDefinition= " " falso„ MachineToApplication„/> 64E35„/> --> di " allineare„ inserire i simboli del di ricerca degli errori nella pagina compilata. Poiché questo interessa la prestazione, fissare questo valore per allineare soltanto il durante le opzioni di development.
Visual Basic: Strict= stabilito del " allineare„ respingere tutto il tipo di dati di conversioni dove la perdita di dati può accadere. Explicit= stabilito del " allineare„ forzare dichiarazione di tutto il variables. --batchTimeout= " 43200 defaultLanguage= " allineare„ " VB„ numRecompilesBeforeAppRestart= " di del debug=„ del explicit= " 15 assembly= " falso " " System.Core, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089„ assembly= " System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35„ assembly= " System.Data.DataSetExtensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089„ assembly= " System.Web.Extensions del del del > „ dello strict= del del del . Design, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35„ assembly= " System.Design, Version= 2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A„ assembly= " System.Windows.F del />orms, Version= 2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089„ assembly= " System.Drawing.Design, Version= 2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A„ assembly= " Microsoft.Office.Interop.Excel, Version= 11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c„ assembly= " System.Xml, Version= 2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089„ assembly= " System.DirectoryServices, Version= 2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A„ assembly= " System.DirectoryServices.Protocols, Version= 2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A„ assembly= " System.ServiceProcess, Version= 2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A„ assembly= " System.Web.RegularExpressi del del di/> del del del di/> del di/> />ons, Version= 2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A„ ufficio del assembly= del ", Version= 11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c„ accessibilità del assembly= del ", Version= 2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A„ assembly= " CrystalDecisions.CrystalReports del . Engine, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304„ assembly= " CrystalDecisions.Enterprise.Framework, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304„ assembly= " CrystalDecisions.ReportAppServer.ClientDoc, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304„ assembly= " CrystalDecisions.Shared, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304„ assembly= " CrystalDecisions.Enterprise.InfoStore, Version=10.5.3700.0 del del del del , Culture=neutral, PublicKeyToken=692fbea5521e1304„ assembly= " CrystalDecisions.Web, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304„ assembly= " CrystalDecisions.ReportSource, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304„ assembly= " Microsoft.Office.Tools.Excel.v9.0, Version= 9.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A„ sistema„ namespace= " System.Collections„ namespace= " System.Collections del del del /> del di/> del namespace= del del . Generic„ namespace= " System.Collections del . Specialized„ namespace= " System.Configuration„ namespace= " System.Text„ namespace= " System.Text.Reg del del />ularExpressions„ namespace= " System.Linq„ namespace= " System.Xml.Linq„ namespace= " System.Xml„ namespace= " System.Web„ namespace= " System.Web.Caching„ namespace= " System.Web.SessionState„ namespace= " System.Web.Security„ namespace= " System.Web.Profile„ namespace= " System.Web.UI„ namespace= " System.Web.UI.WebControls„ namespace= " System.Web.UI.WebControls.WebParts " namespace= " System.Web.UI.HtmlControls„ namespace= " System.DirectoryServices " tagPrefix= " asp del del del del del del del del del del del del /> del del del /> tagPrefix= " ajaxToolkit„/> it„„ del assembly= " di AjaxControlToolkit del namespace= " del „ del assembly= " System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35„„ del namespace= " System.Web.UI.WebControls del tagPrefix= " asp del „ del assembly= " System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35„„ del namespace= " System.Web.UI/> la sezione del permette al di configurazione del modo di autenticazione di sicurezza usato da ASP.NET per identificare un utente ricevuto. del timeout= " 480 " --il enabled= del mode= " allineare " di er> " forma " il timeout= " del loginUrl= " login.aspx dei del > 540„ protection= "„ del name=„ .authCookie tutto il„/" users= " del users= del di/>
"„„ del path= dello slidingExpiration= cookieless= " UseCookies " timeout= del
" 540 *? “/> del di/> di/> --mode= " RemoteOnly„ di del > defaultRedirect= " GenericErrorPage.htm " statusCode= di " 403„ redirect= " NoAccess.htm„ statusCode= di " 404„ redirect= " FileNotFound.htm„ di/> del del rvices„ del verb= " del „ del path= " *.asmx„ *„ del validate=. ScriptHandlerFactory, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35„ type= " falso System.Web.Script.Services„ del validate= " " di *_AppService.axd„ del path= del verb= " del *„. ScriptHandlerFactory, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, Il validate= enabled= " " falso„„ del type= " System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35„„ del path= " ScriptResource.axd della TESTA del verb= " del di PublicKeyToken=31BF3856AD364E35„ OTTENERE, del defaultProvider= " MyXmlSiteMapProvider del „ del type= " System.Web.Handlers.ScriptModule, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35„ " di ScriptModule del name= del di/> allineano " il description= " fornitore di MyXmlSiteMapProvider„ del name= " del del > di SiteMap che legge dentro le lime di .sitemap.„ type= " System.Web.XmlSiteMapProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a " siteMapFile= " Web.sitemap " c# del language= del di/> "; Cs; csharp " extension= " .cs " warningLevel= " 4 " type= " Microsoft.CSharp.CSharpCodeProvider, sistema, Version= 2.0.0.0, Culture=neutral, vb falso del language= del " " del value= " " di WarnAsError " del name= di del name= " di di PublicKeyToken=b77a5c561934e089 " CompilerVersion " value= " v3.5 "; vbs; visualbasic; il warningLevel= " " del extension= " .vb del vbscript " 4 value= " " di OptionInfer del name= " di " del value= " v3.5 " " di CompilerVersion del name= di " del type= " Microsoft.VisualBasic.VBCodeProvider, il sistema, Version= 2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 " allinea " il value=/>
/> la sezione di system.webServer è richiesto per la corsa del ASP.NET AJAX nell'ambito dei servizi d'informazione di Internet 7.0. Non è necessario per la versione precedente di IIS. --integratedMode " type= " System.Web.Script.Services " del preCondition= " " di *.asmx " del path= " del verb= " di ScriptHandlerFactory del name= " del del name= " del del name= " del del name= " del di/> " del preCondition= " " di ScriptModule del name= del del name= " del di/> del validateIntegratedModeConfiguration= " di " ScriptModule " managedHandler " type= " System.Web.Handlers.ScriptModule, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35 " WebServiceHandlerFactory-Integrated " ScriptHandlerFactory " ScriptHandlerFactoryAppServices " di/> del iptHandlerFactory, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35 " integratedMode " type= " System.Web.Script.Services " del preCondition= " " di *_AppService.axd " del path= " del verb= " di ScriptHandlerFactoryAppServices del name= " del *. ScriptHandlerFactory, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35 " integratedMode " verb= " " del preCondition= " " di ScriptResource del name= del OTTIENE, urna del xmlns= di/> " " del path= " della TESTA " ScriptResource.axd " type= " System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35: schemi-microsoft-com: il asm.v1 " name= " System.Web.Extensions " di del > publicKeyToken= " 31bf3856ad364e35 " oldVersion= " 1.0.0.0 - 1.1.0.0 " del newVersion= " 3.5.0.0 " name= " System.Web.Extensions.Design " di di/> publicKeyToken= " 31bf3856ad364e35 " oldVersion= " 1.0.0.0 del - 1.1.0.0 " newVersion= " 3.5.0.0 " allowOverride= di " allinea " il server=AVC " del value= " " di ConnectionString del key= del del > ; database=NNN; uid=User; pwd=user " key= " ActiveDirectoryConn " value= " LDAP di/>
et " server=AVC " del value= " " di ConnectionString del name= del di/> ; database=NNN; uid=User; il
delle maniglie btnLogin.Click
del btnLogin_Click di/>
LOGIN.VB
Protected del pwd=user " (mittente di ByVal come oggetto, ByVal e come System.EventArgs) oscura il adPath come stringa = “LDAP: //DC=cool, di DC=net " oscurano il adAuth come nuovo Try di SITE.LDAPAuthentication (adPath) se allineare = adAuth.IsAuthenticated (txtDomain.Text, txtusername. Il testo, txtPassword.Text) Then
'ottiene a di ruoli di utente i gruppi fiochi mentre la stringa = il
di adAuth.GetGroups () 'generano il biglietto ed aggiunge il isCookiePersistent fioco di groups. come booleano = authTicket fioco di chkPersist.Checked mentre il nuovo
di FormsAuthenticationTicket (1, txtUsername.Text, DateTime.Now, DateTime.Now.AddHours (12), isCookiePersistent, gruppi) 'cifra il encryptedTicket fioco di ticket. mentre il
di FormsAuthentication.Encrypt (authTicket) 'genera la a il biscotto ed allora aggiunge il biglietto cifrato al biscotto come authCookie fioco di data. come nuovo HttpCookie (FormsAuthentication. FormsCookieName,
del encryptedTicket) 'se ChkPersist è controllato 'in modo che il browser per scrivere il tempo di scadenza del biscotto deve essere “non confonde FormsAuthenticationTicket.Expire con il biscotto espira di tempo se Then estremità If
di authTicket.Expiration “aggiunge il biscotto ai biscotti uscenti collection. HttpContext.Current.Response.
di Cookies.Add (authCookie) “potete riorientare now. “Response.Redirect (FormsAuthentication.GetRedirectUrl (txtUsername.Text, falso)) Response.Redirect (FormsAuthentication.GetRedirectUrl (txtUsername.Text, chkPersist.Checked))il “ Else di Response.Redirect (“default.aspx„) errorLabel.Text = “l'autenticazione non è riuscito. Controllare il nome e la parola d'accesso di utente. Assicurar che la vostra serratura di protezioni sulla vostra tastiera sia disinserita. “fermo di If di conclusione del ex come Exception errorLabel.Text = “autenticare di errore. „ + ex. Applicazione Language= " VB " codice di Sub
GLOBAL.ASAX
<%@ di conclusione del di Try
di conclusione di Message del
LDAPAuthentication.VB
Imports System Imports Microsoft.VisualBasic Imports System.DirectoryServices Imports System.Exception
Namespace SITE
di Sub di conclusione del del del principal
come _filterAttribute riservato di String come nuovo secondario pubblico di String
(Percorso di ByVal come stringa) il _path del = la funzione pubblica IsAuthenticated (dominio di Sub
di conclusione del path di ByVal come username di ByVal, della stringa come pwd di ByVal, della stringa come stringa) come Boolean
oscurano il domainAndUsername come stringa = dominio +„ \ “+ entrata fioca del username mentre nuovo il
la legatura di Try 'al AdsObject natale per forzare authentication. oscura il obj come oggetto = la ricerca fioca di entry.NativeObject
come nuovo
di DirectorySearcher (entrata) search.SearchScope = ricerca di SearchScope.Subtree . Filtro =„ sAMAccountName (di CN= " + username + ") “
' = nome. Il vecchio nome di inizio attività del NT 4.0, deve essere unico nel dominio. Può essere confuso con CN. ricerca del . Il filtro =„ (SAMAccountName= " + username + ") “ del search.PropertiesToLoad.Add (“cn„) oscura il risultato come
di search.FindOne = di SearchResult () se il risultato è niente Then False l'estremità If
di ritorno 'il nuovo percorso all'utente nel _path = nel risultato di directory. . _filterAttribute di Path = DirectCast (risultato. Fermo del di Properties (“cn„) (0), della stringa) ex come tiro nuovo System.Exception (“utente autenticante di System.Exception di errore. „ + ex. La funzione pubblica di ritorno GetGroups di Function
di conclusione di Try
True di conclusione del del messaggio) () come String
oscura la ricerca mentre nuova ricerca del di DirectorySearcher (_path). Il filtro = “(cn=„ & _filterAttribute & ") “ search.PropertiesToLoad.Add (““
del sAMAccountname„ del memberOf„)
'di search.PropertiesToLoad.Add () oscura i groupNames come nuovo risultato fioco del
Try di System.Text.StringBuilder () come SearchResult = propertyCount fioco del di search.FindOne () come il numero intero = risultato. Proprietà (“memberOf„). Count oscura il dn come equalsIndex fioco di String come numero intero, commaIndex come Integer
oscura il propertyCounter come il numero intero = 0 mentre propertyCounter < propertyCount dn = DirectCast (risultato. equalsIndex del di Properties (“memberOf„) (propertyCounter), della stringa) = dn.IndexOf (“=„, commaIndex di 1) = dn.IndexOf („, “, 1) se -1 = estremità di ritorno If groupNames.Append (dn di Then Nothing del equalsIndex. groupNames.Append di Substring ((equalsIndex + 1), (commaIndex - equalsIndex) - 1)) (“|") System.Math.Max (System.Threading. Interlocked. Increment (propertyCounter), propertyCounter - fermo di While di conclusione di 1) ex come tiro nuovo System.Exception (“errore di Exception che ottiene i nomi di gruppo. „ + ex. Estremità di ritorno Class End Namespace di Function di conclusione del di Try groupNames.ToString di conclusione del del messaggio) ()
class= del
|