Questione : Rilevare il prespegnimento della condizione di sessione

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

Risposta : Rilevare il prespegnimento della condizione di sessione

Perché non fate appena cambiamento il vostro modo di SessionState “a StateServer„.  Potreste avere un'edizione con lo stagno di applicazione che ricicla e in InProc se quello accade, sia condizione di sessione che processo dell'operaio di asp.net è riciclato.  In SessionState, il filetto del filetto di sessione e dell'operaio di asp.net è separato e se ricicla, interessa soltanto il filetto dell'operaio.  In ogni modo, controllare il collegamento qui sotto.

=/> " allineare "  

http://msdn.microsoft.com/en-us/library/ms178586.aspx

Non dimenticare di attivare il servizio di condizione di ASP.NET.

Potete eseguirli in un richiamo di ordine VS2008 con questo ordine

aspnet_state netto di inizio

Altre soluzioni  
 
programming4us programming4us