De beste Deskundigen,
I hebben een toepassing van het aspxWeb die vereist om meer dan 8 uren zonder zich in werking te stellen verfrist of logout. Tevreden geen verbindingen maar ik zou willen één of andere code kennen VB.NET of van de Zitting JavaScript onderbreking die popup manuscript waarschuwen dat zegt: „Er is geen activiteit sinds enige tijd geweest. Klik „O.K.“ als u wenst om uw zitting voort te zetten, of „Cancel“ te klikken aan logout. Voor uw veiligheid als u aan dit bericht binnen 2 minuten niet kunt antwoorden zal u automatisch“ worden afgelogd en opnieuw richt aan login.aspx nadat de onderbreking verloopt.
I heeft dit 2 dagen zonder enig succes gedaan, ook van zou ik u kon mijn code zien hieronder houden: web.config, zijn global.asax, login.vb voor uw overzicht en uw hulp werkelijk veel waarderend. Thanks.
WEB.CONFIG
Nota hulpmiddel van Webadmin gebruiken om montages voor uw toepassing te vormen. Use de optie van de Configuratie Website->Asp.Net in de Visuele volledige die lijst van Studio. A van montages en commentaren kan in machine.config.com ments gewoonlijk worden gevonden in \ Vensters \ wordt gevestigd Microsoft.Net \ Framework \ v2.x \ Config -->
tion. SystemWebExtensionsSectionGroup, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35 " > tion. ScriptingSectionGroup, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral tion, van PublicKeyToken=31BF3856AD364E35 " > . ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35“ requirePermission= " valse " webServices/> tion“ van“ allowDefinition= " MachineToApplication“. ScriptingWebServicesSectionGroup, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, Van PublicKeyToken=31BF3856AD364E35 " > e“/> . ScriptingProfileServiceSection, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35“ requirePermission= " valse tion van“ allowDefinition= " MachineToApplication“/> . ScriptingAuthenticationServiceSection, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35“ requirePermission= " valse --> Vastgestelde compilatie te verbieden waar het gegevensverlies kan voorkomen. plaatste explicit= " waar“ aan krachtverklaring van al variables. --> art= " 15“ strict= " valse " > sions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35“/> sions/> van gn, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35“/> orms, Version= 2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089“/> .Interop.Excel, Version= 11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c“/> Services, Version= 2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A“/> ocess, Version= 2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A“/> 9429c de“/> .CrystalReports. Engine, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304“/> .ReportAppServer.ClientDoc, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304“/> .Enterprise.InfoStore, Version=10.5.3700.0, Culture=neutral Systeem“/> ons, van PublicKeyToken=692fbea5521e1304 het“/> .ReportSource, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304“/> c“/> ation“/> ularExpressions“/> “/> ionState“/> ile“/> ebControls“/> /> yServices " />
sions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35“/> it“ tagPrefix= " ajaxToolkit“/> de sectie laat configuratie van de wijze van de veiligheidsauthentificatie door ASP.NET wordt gebruikt toe om een inkomende gebruiker te identificeren die. timeout= " 480 " --> er>
“/> rvices. ScriptHandlerFactory, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35“/> rvices. ScriptHandlerFactory, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35“/> ScriptModule, System.Web.Extensions, Version= 3.5.0.0, Culture=neutral de ware " > 64E35“/> 4e089 " > name= " WarnAsError " value= " valse "/>
van de system.webServer- sectie voor het lopen ASP.NET AJAX onder/> de Diensten van de Informatie Internet --> iguration= " valse "/> 64E35 "/> : schema's -schema-microsoft-com: asm.v1 " >
LOGIN.VB
Protected (ByVal afzender als Voorwerp, ByVal e als System.EventArgs) Schemerige/> als Koord = „LDAP: //DC=cool, Schemerige adAuth van DC=net " als Nieuwe SITE.LDAPAuthentication (adPath) Try als Waar = adAuth.IsAuthenticated (txtDomain.Text, txtusername. De tekst, txtPassword.Text) Then
'krijgt de Schemerige groepen van gebruikersrollen aangezien het Koord = adAuth.GetGroups ()
'tot het kaartje leidt, en voegt/> Schemerige isCookiePersistent groups. Schemerige authTicket chkPersist.Checked 1, txtUsername.Text, DateTime.Now, DateTime.Now.AddHours (12), isCookiePersistent , groepen)
'/> Schemerige encryptedTicket codeert ticket. t (authTicket)
'tot a leidt het koekje, en voegt dan het gecodeerde kaartje aan het koekje toe aangezien/> Schemerige authCookie data. tion. FormsCookieName, encryptedTicket)
'als ChkPersist 'wordt gecontroleerd opdat browser schrijft de tijd van de koekjesafloop „moet worden geplaatst verwart geen FormsAuthenticationTicket.Expire met koekje verloopt tijd als Waar = isCookiePersistent Then authCookie.Expires = authTicket.Expiration Eind If
„het koekje aan de uitgaande koekjes collection. HttpContext.Current.Response toevoegt. Cookies.Add (authCookie)
„u kan now. „Response.Redirect (FormsAuthentication.GetRedirectUrl (txtUsername.Text,) opnieuw richten) Response.Redirect (FormsAuthentication.GetRedirectUrl (txtUsername.Text, chkPersist.Checked)) „Response.Redirect („default.aspx“) Else errorLabel.Text = „Authentificatie slaagde niet. Controleer gebruikersnaam en wachtwoord. Zorg ervoor uw Slot van Kappen op uw toetsenbord weg is. „/> de Vangst van If ex als Exception errorLabel.Text = „het voor authentiek verklaren van de Fout. “ + ex. Server "/>/> Sub (ByVal afzender als Voorwerp, ByVal e als EventArgs) “ Code Application_Start
GLOBAL.ASAX
<%@ van Sub
/> van Language= " VB " %>
/>/> Sub (ByVal afzender als Voorwerp, ByVal e als EventArgs) “ Code loopt Application_End />/> Sub (ByVal afzender als Voorwerp, ByVal e als EventArgs) “ Code loopt Application_Error beëindig/> Sub (ByVal afzender als Voorwerp, ByVal e als EventArgs) “ Code Session_Start/> „Session.Timeout = 1 van het Eind het SubSession_End (ByVal afzender als Voorwerp, ByVal e als EventArgs) Eind Sub SubApplication_BeginRequest (de afzender van ByVal als Voorwerp, ByVal e als EventArgs)
/>“ Branden aan het begin van elke/>/> Sub (/>l afzender ByVa“ Branden/>quest Application_AuthenticateRe
Schemerige cookieName als Koord voor authentiek te verklaren = is Schemerige authCookie van FormsAuthentication.FormsCookieName als HttpCookie = Context.Request.Cookies (cookieName)
als authCookie niets Then 'daar is is geen authentificatie/authorization Schemerige authTicket van If Return Eind/> als FormsAuthenticationTicket = Nothing Try authTicket = FormsAuthentication.Decrypt (authCookie. Waarde)/> de Vangst werpt Nieuwe ex Uitzondering (. Bericht) „schrijft de uitzondering aan Eind het van de Gebeurtenis Log. “ Return Try als niet (authTicket.IsPersistent) Then als (authTicket.Expired)/> het 'Koekje Then Return Eind ontbrak Eind If /> 'toen het kaartje werd gecre�ërd werd, het bezit UserData toegewezen/> 'pijp-afgebakend koord a Schemerige groepen als Koord () = authTicket.UserData.Split (Klusje New () {„|" c}) 'leidt tot een/> Schemerige identiteitskaart Identity. GenericIdentity (authTicket.Name, „LDAPAuthentication“) 'Dit hoofd door het/> Schemerige hoofd stroomt request. GenericPrincipal (/> groepen identiteitskaart, 'het nieuwe belangrijkste voorwerp aan het huidige HttpContext voorwerp Context.User = principal Privé _path van Sub
LDAPAuthentication.VB
Imports System Imports Microsoft.VisualBasic Imports System.DirectoryServices Imports System.Exception
Namespace SITE
Eind/> als/> Privé _filterAttribute String
vastmaken(Weg ByVal als Koord) _path = path de Overheidsfunctie IsAuthenticated van Sub
(domein ByVal als Koord, gebruikersbenaming ByVal als Koord, DOW ByVal als Koord) als Schemerige domainAndUsername van Boolean
als Koord = domein +“ \ „+ username Schemerige ingang als Nieuwe DirectoryEntry (_path, domainAndUsername, DOW)
Try 'bindt aan inheemse AdsObject aan krachtauthentication. Schemerige obj als Voorwerp =/> Schemerig onderzoek entry.NativeObject
search.SearchScope =/> onderzoek SearchScope.Subtree 'sAMAccountName = naam. De oude NT 4.0 openings van een sessienaam, moet in het domein uniek zijn. Kan met CN worden verward. /> onderzoek search.PropertiesToLoad.Add („cn“)/> Schemerig resultaat
als het resultaat niets Then /> de Update van If
de 'nieuwe weg aan de gebruiker in directory. _path = resultaat is. Path _filterAttribute = DirectCast (resultaat. Properties („cn“) (0), de Vangst ex als System.Exception werpen Nieuwe System.Exception („de voor authentiek verklarende gebruiker van de Fout. “ + ex. Bericht)/> de Overheidsfunctie GetGroups van Function
/>/> () als Schemerig onderzoek van String
als Nieuw (_path) onderzoek DirectorySearcher. De filter = „(cn=“ & _filterAttribute &“) „ search.PropertiesToLoad.Add („memberOf“)
'search.PropertiesToLoad.Add („sAMAccountname“)/> Schemerige groupNames
)
Try als SearchResult = () Schemerige propertyCount search.FindOne als Geheel = vloeit voort. Eigenschappen („memberOf“). Schemerige dn van Count als/> Schemerige equalsIndex String
als Geheel = 0 terwijl propertyCounter < propertyCount dn = DirectCast (resultaat. Properties („memberOf“) (propertyCounter), Koord) equalsIndex = dn.IndexOf („=“, 1) commaIndex = dn.IndexOf (“, „, 1) als -1 = equalsIndex/> het Eind If groupNames.Append van Nothing (dn. Substring ((equalsIndex + 1), (commaIndex - equalsIndex) - 1)) groupNames.Append („|“) System.Math.Max (System.Threading. Interlocked. Increment (propertyCounter), propertyCounter - 1)/> Vangst van While ex als Exception werpt Nieuwe System.Exception („Fout die groepsnamen verkrijgen. “ + ex. Bericht)/> het Eind Class End Namespace van Function ()/>/>
|