Session Timeouts - User modifiable

I'm looking for a way for a user to be able to increase their session &
idle timeouts after logging in. I want the user to have to make the
choice to increase them, every time they login.
On checking the API we have getMaxSessionTime() and getMaxIdleTime()
exposed in com.iplanet.portalserver.session, but not setMaxSessionTime()
& setMaxIdleTime(). After a little digging I found these hidden in
com.iplanet.portalserver.InternalSession.
The other option I'd like to provide to users is the ability to
reauthenticate a session. Again I found this hidden in the
InternalSession class.
Is there any reason the API is missing these key features?

These are internal api's that were not meant to be exposed.
Internal api's could change any time, as part of our current release
we limited changing of the users session timeout values to the
administrator ...
KArthik !
David Rather wrote:
I'm looking for a way for a user to be able to increase their session &
idle timeouts after logging in. I want the user to have to make the
choice to increase them, every time they login.
On checking the API we have getMaxSessionTime() and getMaxIdleTime()
exposed in com.iplanet.portalserver.session, but not setMaxSessionTime()
& setMaxIdleTime(). After a little digging I found these hidden in
com.iplanet.portalserver.InternalSession.
The other option I'd like to provide to users is the ability to
reauthenticate a session. Again I found this hidden in the
InternalSession class.
Is there any reason the API is missing these key features?

Similar Messages

  • How to set session timeout per user

    Hi,
    Ho do I set the session timeout per User in the
    Application.cfm File??
    I tried using
    <cfif SESSION.UID EQ 1>
    <CFAPPLICATION NAME="appControl" SESSIONMANAGEMENT="Yes"
    sessiontimeout="#CreateTimeSpan(0,0,20,0)#">
    </cfelse>
    <CFAPPLICATION NAME="appControl" SESSIONMANAGEMENT="Yes"
    sessiontimeout="#CreateTimeSpan(1,0,0,0)#">
    </cfif>
    But this didnt work because the cfapplication seems to have
    to be at the top before I call the variable SESSION.UID which
    I set on my login page..
    Someone know how to do this??
    Regards
    Martin

    Martin,
    Your code example cannot work because the "session" scope
    doesn't exist until your application scope is defined. So you have
    to handle this manually. Here's how you can get it done. First,
    define your application to the maximum sessiontimeout you want to
    have.
    <CFAPPLICATION NAME="appControl" SESSIONMANAGEMENT="Yes"
    SESSIONTIMEOUT="#CreateTimeSpan(1,0,0,0)#">
    Then, I don't know how you are doing your login
    authentication but when you have authenticated the user, you need
    to define the userid and the most recent activity in the session.
    Also determine your timeout value based on the userid. See example:
    <CFIF IS_AUTHENTICATED>
    <CFSET session.user.uid = form.userid>
    <CFSET session.user.most_recent_activity = now()>
    <CFIF session.user.id eq 1>
    <CFSET session.user.timeout_mins = 20>
    <CFELSE>
    <CFSET session.user.timeout_mins = 1440>
    </CFIF>
    </CFIF>
    Now, all you have to do is check whether the user has been
    idle for too long and kill the session by purging all session
    variables. For example:
    <!--- if user id is defined, this means user is logged in
    --->
    <CFIF structKeyExists(session, "user") and
    structKeyExists(session.user, "id")>
    <!--- check if timeout has expired --->
    <CFIF datediff("n", session.user.most_recent_activity,
    now()) gt session.user.timeout_mins>
    <!--- timeout has expired, kill the session and log the
    user out --->
    <CFSET StructClear(session)>
    <!--- insert your logout code here --->
    <CFELSE>
    <!--- user hasn't timed out, so reset the most recent
    activity to now --->
    <CFSET session.user.most_recent_activity = now()>
    </CFIF>
    </CFIF>

  • Hi I have two questions. I am using NAS 4.1 and was wondering is it possible to set a different session timeout for different users? How is the session timeout set? Thanks, YS

     

    <i>I am using NAS 4.1 and was wondering is it possible to set a different session timeout for different users?</i>
    Um, there is no such thing as NAS4.1.
    I'm assuming that you mean NAS4.0 (maybe NAS4.0sp1?). If so, then the session timeouts are specified in the session section of the NTV configuration files.
    AFAIK, you can specify session timeouts on a per user basis.

  • Session-timeout is happening intermittently for few users in weblogic.

    Hi,
    We have a war file deployed on a cluster. And from the past 3 days, few users are reporting that the session is getting timed out within 30 mins.
    Actually the session timeout is set for 240 mins(4 hrs), this is defined in the web.xml file.
    And the interesting thing is , this is not happening to everyone. Only few users are facing this session timeout in sometime.
    Any suggestions or such experiences!!!

    Hi,
    What is the exact error that the user is seeing in their browser ?
    Does this happen with all browsers ?
    Thanks,
    Sharmela

  • Need to warn user of session timeout in BSP app hap_document......

    Hi,
    We're using the hap_document app to allow employees to change appraisal documents in ESS and for managers to create them thru MSS....
    When employees have their documents open for more than 1 hour, the next time they click on save, it takes them to the session timeout (ICM, version 6040, module icxxthr_mt.c)....
    Is there a way to add a timer to the document.htm or body.htm pages in the application to start a timer, reset it each time user clicks on save, and warn him with a popup when we're within 5 minutes to a timeout...
    I've read messages on the BSP thread that say...
    "Document.htm is split in two frames. One hidden to enable session handling, the second one visible which contains the document.
    So the document.htm is not refreshed, the second frame is refreshed. I tried your approach as well and was not able to tie the script to the second frame.
    Regards and Groetjes,
    Maurice"
    I've also read Thomas's stateful/stateless timeout parameters article...
    Can anyone help me with where I would put the timer javascript code (if not in document.htm or body.htm) and which timeout parameter to check...
    Thanks for all your help,
    Venkatesh

    Look at the sample code..Will solve your problem..
    <%@page language="abap" %>
    <%@extension name="htmlb" prefix="htmlb" %>
    <script type="text/javascript">
    function remind() {
    var msg = "Your Session will be timed out in 10 Secs";
    alert(msg);
    </script>
    <htmlb:content design="design2003" >
      <%
      data: v_rem type string.
      DATA: port TYPE STRING.
      port = request->get_header_field( if_http_header_fields_sap=>server_port ).
      DATA: services TYPE TABLE OF ICM_SINFO.
      CALL FUNCTION 'ICM_GET_INFO' TABLES SERVLIST = services.
      FIELD-SYMBOLS: <service> TYPE ICM_SINFO.
      DATA: wait TYPE STRING.
      READ TABLE services ASSIGNING <service> WITH KEY service = port.
      wait = <service>-KEEPALIVE - 10.
      CONDENSE wait.
      concatenate `'remind(`  wait `)',2000` into v_rem.
      %>
      <htmlb:page onLoad = "setTimeout(<%= v_rem %>)"
                  title  = " " >
        <htmlb:form>
          <htmlb:textView text   = "Hello World!"
                          design = "EMPHASIZED" />
          <htmlb:button text    = "Press Me"
                        onClick = "myClickHandler" />
        </htmlb:form>
      </htmlb:page>
    </htmlb:content>
    <i>* Reward each useful answer</i>
    Raja T

  • Session Timeout and DAD Authentication

    My application uses the authentication scheme 'No authentication (using DAD)'. The users log in from an external program and the user IDs are captured in the variable remote_user. My authorization scheme checks that the user ID exists in a database table. All this seems to work fine.
    However, I need to implement a session timeout on the application. I've followed the steps described in the "Automatic Session Timeouts" utility in the Application Express Studio but when I tried to modify the authentication scheme by adding:
    return auth_pkg.check_timeout;
    to the Session Verify Function I got the following errors:
    No functional attributes may be set when page sentry function is '-DATABASE-'.
    and
    Session verification function may not be specified if page sentry function is specified.
    I'm new to Apex and I don't know where to go from here. Any advice please?
    Thanks
    Maria

    Maria,
    The usual way to do the authentication part is to use a custom page sentry function. Many examples have been posted on the forum based on the ntlm page sentry code. Search for those keywords here (ntml page sentry) and you should find it easily. Then you can modify it by adding the session timeout logic in that function.
    Scott

  • Sso session timeout per partner application

    Hello,
    I was just wondering if it is possible to configure SSO session timeouts per partner application? I'm looking to log out users of a particular application after 15 minutes, but don't want this change to affect any of my other SSO enabled applications. Is this possible?
    Thanks,

    Hi,
    I do not think so, you can not specify specail parameter for one application in SSO.
    Why because SSO is one component (within your Infra) through which you logon different apps.
    Another solution may be it will expensive is that you 'll need to use different infra for this specific application.
    Regards,
    Hamdy

  • Session Timeouts and SmbServer

    Hi,
    When having iFS mapped to a network drive (via SMB), the SMB server
    is unable to recover from a timeout of the LibrarySession. The network
    drive then seems to be empty and doing a refresh within explorer
    doesn't help either. The only thing that helps, is remapping the
    network drive.
    Within Node.log of iFS I see this stacktrace.
    7/10/02 9:02 AM SmbServer: oracle.ifs.common.IfsException
    oracle.ifs.common.IfsException: IFS-21000: Session is not connected or has timed-out
    at java.lang.Throwable.fillInStackTrace(Native Method)
    at java.lang.Throwable.fillInStackTrace(Compiled Code)
    at java.lang.Throwable.<init>(Compiled Code)
    at java.lang.Exception.<init>(Compiled Code)
    at oracle.ifs.common.IfsException.<init>(Compiled Code)
    at oracle.ifs.common.IfsException.<init>(Compiled Code)
    at oracle.ifs.common.IfsException.<init>(Compiled Code)
    at oracle.ifs.beans.LibraryObject.verifyConnected(Compiled Code)
    at oracle.ifs.beans.Folder.findPublicObjectByPath(Compiled Code)
    at oracle.ifs.beans.FolderPathResolver.findPublicObjectByPath(Compiled Code)
    at oracle.ifs.beans.FolderPathResolver.findPublicObjectByPath(Compiled Code)
    at oracle.ifs.protocols.smb.server.DbTree$DbQuery.<init>(Compiled Code)
    at oracle.ifs.protocols.smb.server.DbTree.getQuery(Compiled Code)
    at oracle.ifs.protocols.smb.server.ComTrans.trans2FindFirst(Compiled Code)
    at oracle.ifs.protocols.smb.server.ComTrans.replyTransaction2(Compiled Code)
    at oracle.ifs.protocols.smb.server.ComTrans.process(Compiled Code)
    at oracle.ifs.protocols.smb.server.ComSmb.handleSmbMessage(Compiled Code)
    at oracle.ifs.protocols.smb.server.SmbThread.handleNbMessage(Compiled Code)
    at oracle.ifs.protocols.smb.server.SmbThread.readPackets(Compiled Code)
    at oracle.ifs.protocols.smb.server.SmbThread.run(Compiled Code)
    This behavior actually causes us big problems when editing files via MS Office.
    Fortunately Office is able to still save it's data using some generated filename.
    (At least until now I could not create any data loss)
    But then you have to close it, remap then network drive, rename the file and then
    reopen the file. This is big trouble to users, which are not familiar with mapping
    network drives and renaming files with extensions.
    Is there a way to make the SmbServer keep the LibrarySession alive, as long as
    the network drive is mapped ?
    Regards,
    Jens Lorenz

    Workflow #2:
    Login to my account
    Click view all email
    Open Drafts Folder
    Open draft email response
    Select "Send" to send email (total in session time of 30 seconds)
    On screen reload, where I would expect to see some sort of indication that my email was successfully sent, instead the system throws session time out message and kicks me out.
    I have no idea if my email was successfully sent or not.
    Workflow #3:
    Login to my account
    Click view all email
    Attempted to open the first new email in my inbox (total time in session <15 seconds)
    System throws session timeout error and kicks me out to the main login.
    There is obviously something going on with your session holding code. The session variable is not being passed correctly or something but it's very, very frustrating to spend 30-45 minutes trying to type out a couple of lines, particularly when you have multiple important activities going on that you need to respond too via email.

  • Portal Session Timeout - ICM/Webdynpro/POWL

    Hi Experts,
    We are having SRM Portal which has POWL Webdynpro and other applications running.
    SRM Portal is a seperate JAVA Instance and integrated to backend with SSO enabled.
    We have Logon Ticket Timeout set as default 8 Hours and the Session Timeout in Portal set as 2 Hours (Server>services>webcontainer>properties>Session Timeout).
    For the ABAP backend, we have rdisp/plugin_auto_logout-->7200 (2 Hours) and ICM timeout as remommeded by SAP as icm/server_port_0     = PROT=HTTP,PORT=8012,TIMEOUT=90,PROCTIMEOUT=600
    Now the problem is:
    1. Users connected to portal and work on any POWL Iviews has an idle time of two hours-->we get the ICM session timeout error page.
    2. Sometimes Users get the Login screen of portal within the Navigation Frame which can be identified as the Ticket Expiration
    Is there a possibility to control the behavior of portal to avoid these error pages to Users like if the timeout happened in backend, there should be auto refresh if the user clicks the application.
    And if the ticket expired, the portal should refresh to the home screen on clicking any Iview.
    We tried the IDLE timeout pop up and in Vain, you could see my another post on the same.
    Portal Idle Pop Up
    Regards,
    Sethu

    Hi,
    Read SAP note 705013,
    I think adjusting the kernel parameters, rdisp/gui_auto_logout and  rdisp/plugin_auto_logout will help.
    Try adding below parameters in the Instance profile.
    icm/keep_alive_timeout 3600
    icm/conn_timeout 5000
    Regards,
    Venkata S Pagolu

  • Session Timeout directly taking to login page

    Hi,
    In our application when session time out happens, it is directly taking to login page, instead of showing the time out error message . We have a CustomExceptionHandler defined in our application. When I debugged, I identified that the following error message
    <StateManagerImpl><restoreView> Could not find saved view state for token -ppfn0o4n8 (*ADF_FACES-30107)*
    comes when user clicks login the second time.
    We want to know how to get the error message first before it goes to the login page? Any configuration we are missing?
    Here is our applications web.xml
    <?xml version = '1.0' encoding = 'UTF-8'?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5" xmlns="http://java.sun.com/xml/ns/javaee">
    <description>Empty web.xml file for Web Application</description>
    <context-param>
    <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
    <param-value>client</param-value>
    </context-param>
    <context-param>
    <param-name>jndiContext</param-name>
    <param-value>inv</param-value>
    </context-param>
    <context-param>
    <param-name>UserEnvironmentName</param-name>
    <param-value>UserEnvironment</param-value>
    </context-param>
    <context-param>
    <param-name>CacheConfigureFile</param-name>
    <param-value>inv-cache.xml</param-value>
    </context-param>
    <context-param>
    <param-name>SecurityRepositoryClass</param-name>
    <param-value>oracle.communications.inventory.api.framework.security.impl.SecurityRepositoryImpl</param-value>
    </context-param>
    <context-param>
    <description>Whether the 'Generated by...' comment at the bottom of ADF Faces HTML pages should contain version number information.</description>
    <param-name>oracle.adf.view.rich.versionString.HIDDEN</param-name>
    <param-value>false</param-value>
    </context-param>
    <context-param>
    <param-name>oracle.adfinternal.view.rich.libraryPartitioning.ENABLED</param-name>
    <param-value>true</param-value>
    </context-param>
    <context-param>
    <param-name>ilog.views.faces.CONTROLLER_PATH</param-name>
    <param-value>/_contr</param-value>
    </context-param>
    <context-param>
    <param-name>ilog.views.faces.CONTENT_LENGTH_ENABLED</param-name>
    <param-value>true</param-value>
    </context-param>
    <context-param>
    <description>If this parameter is true, there will be an automatic check of the modification date of your JSPs, and saved state will be discarded when JSP's change. It will also automatically check if your skinning css files have changed without you having to restart the server. This makes development easier, but adds overhead. For this reason this parameter should be set to false when your application is deployed.</description>
    <param-name>org.apache.myfaces.trinidad.CHECK_FILE_MODIFICATION</param-name>
    <param-value>false</param-value>
    </context-param>
    <context-param>
    <param-name>APPLICATION_NAME</param-name>
    <param-value>Unified Inventory Management</param-value>
    </context-param>
    <context-param>
    <param-name>COPYRIGHT_FROM_YEAR</param-name>
    <param-value>2007</param-value>
    </context-param>
    <context-param>
    <param-name>COPYRIGHT_TO_YEAR</param-name>
    <param-value>2011</param-value>
    </context-param>
    <context-param>
    <!-- Maximum memory per request (in bytes) -->
    <param-name>org.apache.myfaces.trinidad.UPLOAD_MAX_MEMORY</param-name>
    <!-- Use 500K -->
    <param-value>512000</param-value>
    </context-param>
    <context-param>
    <!-- Maximum disk space per request (in bytes) -->
    <param-name>org.apache.myfaces.trinidad.UPLOAD_MAX_DISK_SPACE</param-name>
    <!-- Use 100M -->
    <param-value>104857600</param-value>
    </context-param>
    <filter>
    <filter-name>trinidad</filter-name>
    <filter-class>org.apache.myfaces.trinidad.webapp.TrinidadFilter</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>trinidad</filter-name>
    <servlet-name>Faces Servlet</servlet-name>
    <dispatcher>FORWARD</dispatcher>
    <dispatcher>REQUEST</dispatcher>
    </filter-mapping>
    <listener>
    <listener-class>oracle.communications.inventory.api.framework.listener.ContextListener</listener-class>
    </listener>
    <listener>
    <listener-class>oracle.communications.inventory.ui.framework.IlogContextListener</listener-class>
    </listener>
    <!-- Cartridge Installer servlet for post re-deploy -->
    <listener>
    <listener-class>
    oracle.communications.inventory.cartridge.deploy.CartridgeInstallerServletContextListener
    </listener-class>
    </listener>
    <persistence-context-ref>
    <persistence-context-ref-name>persistence/EntityManager</persistence-context-ref-name>
    <persistence-unit-name>default</persistence-unit-name>
    </persistence-context-ref>
    <listener>
    <listener-class>oracle.adf.mbean.share.connection.ADFConnectionLifeCycleCallBack</listener-class>
    </listener>
    <listener>
    <listener-class>oracle.adf.mbean.share.config.ADFConfigLifeCycleCallBack</listener-class>
    </listener>
    <servlet>
    <servlet-name>BIGRAPHSERVLET</servlet-name>
    <servlet-class>oracle.adfinternal.view.faces.bi.renderkit.graph.GraphServlet</servlet-class>
    </servlet>
    <servlet>
    <servlet-name>BIGAUGESERVLET</servlet-name>
    <servlet-class>oracle.adfinternal.view.faces.bi.renderkit.gauge.GaugeServlet</servlet-class>
    </servlet>
    <servlet>
    <servlet-name>MapProxyServlet</servlet-name>
    <servlet-class>oracle.adfinternal.view.faces.bi.renderkit.geoMap.servlet.MapProxyServlet</servlet-class>
    </servlet>
    <servlet>
    <servlet-name>GatewayServlet</servlet-name>
    <servlet-class>oracle.adfinternal.view.faces.bi.renderkit.graph.FlashBridgeServlet</servlet-class>
    </servlet>
    <servlet>
    <servlet-name>media</servlet-name>
    <servlet-class>oracle.communications.inventory.ui.media.servlet.MediaServlet</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>BIGRAPHSERVLET</servlet-name>
    <url-pattern>/servlet/GraphServlet/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>BIGAUGESERVLET</servlet-name>
    <url-pattern>/servlet/GaugeServlet/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>MapProxyServlet</servlet-name>
    <url-pattern>/mapproxy/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>resources</servlet-name>
    <url-pattern>/bi/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>GatewayServlet</servlet-name>
    <url-pattern>/flashbridge/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>media</servlet-name>
    <url-pattern>/media_image</url-pattern>
    </servlet-mapping>
    <resource-ref>
    <res-ref-name>wm/ruleWorkManager</res-ref-name>
    <res-type>commonj.work.WorkManager</res-type>
    <res-auth>Container</res-auth>
    <res-sharing-scope>Unshareable</res-sharing-scope>
    </resource-ref>
    <filter>
    <filter-name>JpsFilter</filter-name>
    <filter-class>oracle.security.jps.ee.http.JpsFilter</filter-class>
    <init-param>
    <param-name>enable.anonymous</param-name>
    <param-value>true</param-value>
    </init-param>
    <init-param>
    <param-name>remove.anonymous.role</param-name>
    <param-value>false</param-value>
    </init-param>
    <init-param>
    <param-name>addAllRoles</param-name>
    <param-value>true</param-value>
    </init-param>
    <init-param>
    <param-name>jaas.mode</param-name>
    <param-value>doasprivileged</param-value>
    </init-param>
    </filter>
    <filter>
    <filter-name>ADFLibraryFilter</filter-name>
    <filter-class>oracle.adf.library.webapp.LibraryFilter</filter-class>
    </filter>
    <filter>
    <filter-name>adfBindings</filter-name>
    <filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>JpsFilter</filter-name>
    <servlet-name>Faces Servlet</servlet-name>
    <dispatcher>FORWARD</dispatcher>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>INCLUDE</dispatcher>
    </filter-mapping>
    <filter-mapping>
    <filter-name>ADFLibraryFilter</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
    <filter-mapping>
    <filter-name>adfBindings</filter-name>
    <servlet-name>Faces Servlet</servlet-name>
    <dispatcher>FORWARD</dispatcher>
    <dispatcher>REQUEST</dispatcher>
    </filter-mapping>
    <servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
    <servlet-name>resources</servlet-name>
    <servlet-class>org.apache.myfaces.trinidad.webapp.ResourceServlet</servlet-class>
    </servlet>
    <servlet>
    <servlet-name>adflibResources</servlet-name>
    <servlet-class>oracle.adf.library.webapp.ResourceServlet</servlet-class>
    </servlet>
    <servlet>
    <servlet-name>adfAuthentication</servlet-name>
    <servlet-class>oracle.adf.share.security.authentication.AuthenticationServlet</servlet-class>
    <init-param>
    <param-name>success_url</param-name>
    <param-value>/faces/InventoryUIShell</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
    <servlet-name>Controller</servlet-name>
    <servlet-class>ilog.views.faces.IlvFacesController</servlet-class>
    <load-on-startup>3</load-on-startup>
    </servlet>
    <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/faces/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>resources</servlet-name>
    <url-pattern>/adf/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>resources</servlet-name>
    <url-pattern>/afr/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>adflibResources</servlet-name>
    <url-pattern>/adflib/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>adfAuthentication</servlet-name>
    <url-pattern>/adfAuthentication</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>Controller</servlet-name>
    <url-pattern>/_contr/*</url-pattern>
    </servlet-mapping>
    <session-config>
    <session-timeout>35</session-timeout>
    </session-config>
    <mime-mapping>
    <extension>html</extension>
    <mime-type>text/html</mime-type>
    </mime-mapping>
    <mime-mapping>
    <extension>txt</extension>
    <mime-type>text/plain</mime-type>
    </mime-mapping>
    <jsp-config>
    <jsp-property-group>
    <url-pattern>*.jsff</url-pattern>
    <is-xml>true</is-xml>
    </jsp-property-group>
    </jsp-config>
    <security-constraint>
    <web-resource-collection>
    <web-resource-name>allPages</web-resource-name>
    <url-pattern>/</url-pattern>
    </web-resource-collection>
    <auth-constraint>
    <role-name>valid-users</role-name>
    </auth-constraint>
    </security-constraint>
    <security-constraint>
    <web-resource-collection>
    <web-resource-name>Unsecured resources</web-resource-name>
    <url-pattern>/images/</url-pattern>
    <url-pattern>*.png</url-pattern>
    <url-pattern>*.gif</url-pattern>
    <url-pattern>*.jpg</url-pattern>
    <url-pattern>*.jpeg</url-pattern>
    <url-pattern>*.bmp</url-pattern>
    <url-pattern>*.css</url-pattern>
    <url-pattern>*.js</url-pattern>
    <url-pattern>/css/*</url-pattern>
    <url-pattern>/afr/blank.html</url-pattern>
    </web-resource-collection>
    </security-constraint>
    <security-constraint>
    <web-resource-collection>
    <web-resource-name>adfAuthentication</web-resource-name>
    <url-pattern>/adfAuthentication</url-pattern>
    </web-resource-collection>
    <auth-constraint>
    <role-name>valid-users</role-name>
    </auth-constraint>
    </security-constraint>
    <login-config>
    <auth-method>FORM</auth-method>
    <form-login-config>
    <form-login-page>/faces/login.jspx</form-login-page>
    <form-error-page>/faces/error.jspx</form-error-page>
    </form-login-config>
    </login-config>
    <security-role>
    <role-name>valid-users</role-name>
    </security-role>
    <welcome-file-list>
    <welcome-file>/faces/InventoryUIShell</welcome-file>
    </welcome-file-list>
    </web-app>

    hi
    this can be done using a simple "Servlet Filters" which will check whether the user session is valid or not. so for every connect to the server the filter runs and redirects to the login page if the session has expired. here you can configure your filter to be activated for every URL or a patterns of urls.
    u need servlet2.3 supported server for this.
    hope this helps
    shrini
    I have an business j2ee application run on oc4j. When the session timeout declared on the web.xml expire, i want to redirect automaticaly the user to my login.jsp to force him to reconnect. I try j_security_chek, but i want to restart the business application at the top and not to the page which are request. Somebody know who i can do this mechanism. I try too special tag in jsp, this run very good but i have to repeate this call on every page. I look for an other simply mechanism to that
    Thanks

  • Re: [iPlanet-JATO] Re: session timeout when not submitting to a handler

    Mark--
    I know what's happening here, but am curious about your approach. You said
    in an earlier email that you were generating links directly to JSPs, but
    from what you are describing, you are generating JATO-style links to access
    JATO pages. Nothing wrong with that, but there is a signficant difference.
    Actually, it just occurred to me, I'm wondering what your URLs look like.
    The way the request dispatching works in JATO is it ignores anything after
    an initial "." in the final part of the URL path. For example, a request
    for "/myapp/module1/MyPage.jsp" doesn't actually try to hit the JSP, instead
    it tries to hit the JATO page "/myapp/module1/MyPage".
    The end result is that you may think you are accessing a JSP directly, but
    are instead accessing a JATO page. The reason the request dispatching works
    this way is because it is illegal to access JATO JSPs directly, and there is
    actually a (disabled) JATO feature that piggybacks on the use of the
    dot-delimited URL.
    So, now I need to understand your intent. I wasn't really sure why you were
    generating direct JSP/page links to begin with. This works against the Type
    II architecture JATO uses, in which all JATO requests go back to the
    controller servlet.
    If you are trying to design something like a menu page, you may have thought
    that it was burdensome to create a number of HREF children, plus implement
    event handlers for each of them. This definitely would be burdensome beyond
    just a handful of links, but this is why JATO provides other mechanisms for
    doing what I'll call here "polymorphic HREFs".
    Assuming this menu page scenario, the easiest thing to do is to simply use
    one HREF child on the page, and add a value to it each time it is rendered
    that distinguishes it from the other instances on the page. In your event
    handler for the HREF, you simply check this value and use it to decide which
    page to forward to. You can add a value to an HREF or Button by using the
    "addExtraValue()" method. Or, if you are using JATO 1.2, you can add extra
    query string NVPs right in the JSP document using the "queryParams"
    attribute of the <jato:href> tag. Thus, your one HREFchild and event
    handler become "polymorphic" because what they do depends on the context in
    which they are invoked.
    Now, I still don't have confirmation that this is what you were trying to
    do, so until I do, let me explain the exception you're seeing. JATO assumes
    that when a request comes in for a page that includes the pageAttributes
    NVP, it is a request coming from a previously generated JATO page. Because
    of the way JATO works, this means that the request dispatching code should
    send the request back to the originally rendered page. For example, if Page
    A renders an HREF, which the user then activates, JATO sends the request
    back to Page A for handling. All of the HREFs and forms generated during
    rendering of Page A actually refer back to Page A, regardless of where those
    links or buttons actually pass the request in their event handlers/Command
    objects.
    So, what's happening when you include the pageAttributes in your HREFs is
    that JATO is assuming that a request is being sent to the target page, with
    the assumption that the target page has a mechanism in place to handle the
    request. This assumption relies on the specification of the "originator" of
    the request being specified in the request. For links/HREFs, the name and
    value of the HREF is sent along with the request. For forms, the name and
    value of the button that was pressed are sent in the request. JATO uses the
    presence of these name/value pairs to decide which event handler, or which
    Command object, to invoke to handle the request.
    The exception you are receiving is saying that there was no object on the
    target page that indicated it could handle the request. This is to be
    expected, since you have not specified a query parameter that indicates
    which CommandField child is responsible the request. However, this is where
    I see the disconnect, because that is not what I believe you were trying to
    do (as explained above).
    So now, given all the information above, can you tell me what you're trying
    to accomplish, and whether or not the info I've given you has helped you to
    design a mechanism more in line with a JATO approach? If not, given that I
    understand what you're trying to do, I can offer a more concrete solution.
    Todd
    ----- Original Message -----
    From: <Mark_Dubinsky@p...>
    Sent: Monday, November 05, 2001 2:54 PM
    Subject: [iPlanet-JATO] Re: session timeout when not submitting to a handler
    This is the exception we get:
    (And BTW, leaving a blank value for the pageAttributes doesn't help)
    [05/Nov/2001 17:49:18:4] error: <portalServlet.processRequest>
    javax.servlet.ServletException: The request was not be handled by the
    specified handler
    at java.lang.Throwable.fillInStackTrace(Native Method)
    at java.lang.Throwable.fillInStackTrace(Compiled Code)
    at java.lang.Throwable.<init>(Compiled Code)
    at java.lang.Exception.<init>(Compiled Code)
    at
    javax.servlet.ServletException.<init>(ServletException.java:107)
    at
    com.putnaminvestments.common.jato.ApplicationServletBase.dispatchRequ
    est(Compiled Code)
    at
    com.putnaminvestments.common.jato.ApplicationServletBase.processReque
    st(Compiled Code)
    at
    com.putnaminvestments.bp.portal.portalServlet.processRequest(Compiled
    Code)
    at
    com.putnaminvestments.common.jato.ApplicationServletBase.doPost(Compi
    led Code)
    at
    com.putnaminvestments.common.jato.ApplicationServletBase.doGet(Compil
    ed Code)
    at javax.servlet.http.HttpServlet.service(Compiled Code)
    at com.putnaminvestments.bp.bpServletBase.service(Compiled
    Code)
    at javax.servlet.http.HttpServlet.service(Compiled Code)
    at
    com.netscape.server.servlet.servletrunner.ServletInfo.service(Compile
    d Code)
    at
    com.netscape.server.servlet.servletrunner.ServletRunner.execute(Compi
    led Code)
    at com.kivasoft.applogic.AppLogic.execute(Compiled Code)
    at com.kivasoft.applogic.AppLogic.execute(Compiled Code)
    at com.kivasoft.thread.ThreadBasic.run(Native Method)
    at com.kivasoft.thread.ThreadBasic.run(Native Method)
    at com.kivasoft.thread.ThreadBasic.run(Native Method)
    at com.kivasoft.thread.ThreadBasic.run(Native Method)
    at com.kivasoft.thread.ThreadBasic.run(Compiled Code)
    at java.lang.Thread.run(Compiled Code)
    --- In iPlanet-JATO@y..., "Todd Fast" <Todd.Fast@S...> wrote:
    Mark--
    Initially we tried to add the pageAttributes NVP as well, but that
    was
    causing an exception, so we stopped doing that.That's odd--what was the exception?
    Our problem now is that when the SessionTimes out it does not go
    to
    onSessionTimeout method as in processRequestMethod of the
    ApplicationServletBase it looks for pageAttributes. If it is notnull
    then only onSessionTimeOut method is called.This is sadly the only technique for determining if a session hastimed out
    and a new one been created, versus the initial creation of thesession.
    Is there any work around for this? Maybe you can suggest how topass
    the pageAttributes without causing the initial exception?Definitely--let me know what the exception was and I'll be able tosuggest
    something. However, it shouldn't really be any harder thanappending a
    "jato.pageAttributes=" empty NVP on the HREF.
    Todd
    Todd Fast
    Senior Engineer
    Sun/Netscape Alliance
    todd.fast@s...
    For more information about JATO, please visit:
    http://developer.iplanet.com/tech/appserver/framework/index.jsp

    OK, here's what I'm trying to do: We have, like you said, a menu
    page. The pages that it goes to and the number of links are all
    variable and read from the database. In NetD we were able to create
    URLs in the form
    pgXYZ?SPIDERSESSION=abcd
    so this is what I'm trying to replicate here. So the URL that works
    is
    pgContactUs?GXHC_GX_jst=fc7b7e61662d6164&GXHC_gx_session_id_=cc9c6dfa5
    601afa7
    which I interpreted to be the equivalent of the old Netd way. Our
    javascript also loads other frames of the page in the same manner.
    And I believe the URL-rewritten frame sources of a frameset look like
    this too.
    This all worked except for the timeout problem. In theory we could
    rewrite all URLs to go to a handler, but that would be...
    inconvenient.

  • Session Timeout Thoughts

    I saw a post from awhile ago that you can't change the session timeout in iTunes U. Is this still true?
    Our users are having timeout issues and we have an unfortunately lengthy login process to get back into iTunes U so I had some thoughts on the Site Login URL.
    We use a portal to authenticate our users who then click an SSO link to take them to a jump page that assembles their credentials and generates an SSO link into iTunes U. I'd really like to avoid having to go back through the portal to get users back into iTunes.
    What if, instead of passing just the destination back to the site login URL, iTunes U passed a full SSO link. This way, I can just point my site login URL to the jump page. The jump page can then parse the SSO link to verify the user's credentials and just create a new SSO link right back into iTunes U, almost transparently to the users.
    Are there any better options to solve this problem? I know this would require some modification on the iTunes U side, but it seems like it'd solve some problems.
    Thanks
    Jason

    Hi Jason,
    I don't think I did a good job at explaining what I'm trying to get at. Sorry, let me try another way.
    The problem is not one of security necessarily. If you get a signature back from Apple, sure, your jump site can verify that Apple sent you warnings about sessions that are about to timeout. The problem is that Apple cannot distinguish our local users from the identity and credentials we send. It might seem that way in specific instances (because some sites have an elaborate identity/credentialling scheme), but it is not true in the general case. It is entirely possible that scores of people can share exactly the same identity/credential info ... that is totally legal in the iTunes U world (and why I urge people not to think of "users" and "accounts" whenever they think iTunes U). For example, lessay I have a site that has a very simple credentialling scheme, say ...
    Administrator@urn:mace:itunesu.com:sites:uic.edu
    Instructor@urn:mace:itunesu.com:sites:uic.edu
    Student@urn:mace:itunesu.com:sites:uic.edu
    Authenticated@urn:mace:itunesu.com:sites:uic.edu
    Unauthenticated@urn:mace:itunesu.com:sites:uic.edu
    All@urn:mace:itunesu.com:sites:uic.edu
    Further, let's say that I "anonymize" my users by sending no identity info to Apple. So if Apple sends my jump site the following:
    credentials=Student@urn:mace:itunesu.com:sites:uic.edu
    identity=
    time=123456789
    signature=stringwith_bunch_ofhex
    which one of my local users does that belong to? ... whose session should I recredential? Sure, you can make a complex credentialling scheme that narrows usage down to the specific person ... but I would urge you to think of credentials as a kind of "hall pass" ... a token that lets you into a specific place within iTunes U ... and not as a way to identify someone. Remember that Apple has to use a system that applies in the general case and what I have above is totally legal. If I want, I can obfuscate my users to be certain that only -I- know who's accessing iTunes U.
    Recall, too, the way that iTunes U is setup. Your transfer CGI sends a URL to Apple and Apple sends you back loads of HTML/JavaScript/CSS in return. Your transfer CGI passes all of it back to the end user. The heart of the HTML Apple sends is this itmss: redirect:
    itmss://deimos.apple.com/WebObjects/Core.woa/BrowsePrivately/uic.edu?
    credentialKey=1474615910&identity=2253747564656e7422203c5374756
    4656e74407569632e6564753e202853747564656e7429205b305d&time=
    1203747692&signature=32d169daa7a282f8c7efa7d4f7f7fb0dceaac507c26
    f205123473f09d6b9ef50&x=true&ignore.mscache=8974210
    That is how Apple talks to your end users. The session is private ... between Apple and your end users. The only way for you to know which session belongs to which local user is for Apple to send you that itmss link and say, in effect, "the session associated with this link is about to time out". Your jump site would have to maintain a connection between itmss links, your local users, and the credentials associated with both. But if your site is -already- caching local user/credential info, there is no need for Apple to send your creds/identity back to you.
    As ever, if my understanding is itself cloudy, I bow to Duncan. He knows all and I am happy to be corrected. Like you guys, I am here to learn.

  • Session Timeout (secs) WiSM's

    Hi All,
    Probably an easy question here.
    I am just wondering what I should set my Session Timeout (secs) on my SSID's to int the WiSM's? Mine is currently set to 1800secs, but I sort of want to change it to 300 secs so that when people walk out of a particular building, they will need to re-associate and get a new IP address (If that makes Sense!)
    Thanks,

    There is no exact definiton for session timeouts. In your case it could be 900 secs[15 mins] so hat its not too early session timeouts. Normally users need to reauthenticate if they move to different access points.

  • Session timeout skillbuilders question

    Application security attributes settings
    Session Timeout  Maximum Session Length in Seconds   60
    On session timeout direct to this URL   <url>
    Maximum Session Idle Time in Seconds   45
    On session idle time timeout direct to this URL   <url>
    Session timeout component settings
    Name: SkillBuilders Session Timeout (1.0.1) [Plug-in]
    *Session Timeout Action  Alert
    *Session Timeout Message  Application will timeout shortly
    *Mask Browser Screen on Timeout  No
    *Session Idle Warning  Yes
    *Session Idle Title      Idle message Warning ( I cannot see this displayed but when I copied that area this came)
    *Session Idle Message    This application session will expire shortly! If you want to continue working please click ok on the alert.
    *Show Warning Seconds Before  40
    *Keep Session Alive           Yes
    So the moment I start my application and the login page is displayed i get the idle message displayed on the screen.  So my application should timeout in 1 minute. I should be alerted after 45 seconds.
    Are the settings correct?
      Murali

    Please keep in mind that maximum session length and idle time are two different things. The following configuration should satisfy your requirements
    Configure the following application attributes:
    "Maximum Session Length in Seconds" =  ??? -- you did not specify how long your session can last, if left blank it will revert to the instance level setting which defaults to 8 hours
    "Maximum Session Idle Time in Seconds" = 10800 -- the maximum amount of time the user as to interact with the server again
    Configure plugin settings:
    "Session Timeout Action" = ALERT
    "Session Timeout Message" = <your message>
    "Session Idle Warning" = Yes
    "Session Idle Title" = <your title>
    "Session Idle Message" = <your message>
    "Show Warning Seconds Before" = 900 -- 15 min x 60 seconds
    "Keep Session Alive" = Yes -- this will renew the session if the user interacts with the idle warning
    Please let me know if you have any questions.
    Good Luck!
    Tyson

  • Session TimeOut -Email

    Hi All,
    Recently, the last 5 days, everytime I sign in to my verizon email account at work I immediately get an error message that says "Session TimeOut your session has ended please sign in again" I'm running Windows 7 and have tried both IE8 And firefox for browsers and get the same problem.
    Interestingly, when I sign into my verizon email account from my home computer I have no problems. Running Vista and using IE8 at home.
    Any thoughts on the problem would be much appreciated!!

    Either your work connection does not allow cookies to be saved or they have another security measure preventing access. This is not related to your account if you are able to login successfully from home. Please talk further with your works IT group.
    Anthony_VZ
    **If someones post has helped you, please acknowledge their assistance by clicking the red thumbs up button to give them Kudos. If you are the original poster and any response gave you your answer, please mark the post that had the answer as the solution**
    Notice: Content posted by Verizon employees is meant to be informational and does not supersede or change the Verizon Forums User Guidelines or Terms or Service, or your Customer Agreement Terms and Conditions or plan

Maybe you are looking for

  • Help for Multiprovider

    Dear All, In my project client wants to maintain only 2 years history. So should i create DSO or InfoCube?? Moreover we need to develop one query which will show up data for Current transaction (coming from Cube) as well as History data. So we decide

  • Calling secured webservice from java

    Hi Experts, I am trying to call a secured webservice from java. I got the code to call a non secured web service in java. What changes do i need to do in this to call a secured webservice. Please help me. Thank you Regards Gayaz calling unsecured web

  • Query for PO and GPRO

    Hi guys. I am relatively new to SAP Business with less than one month experience handling this software. I was given a task by my superior last week, whereby I was asked to create a query that will enable both PO and GRPO "combine" together, thus ena

  • Compiling and running ToME in home dir: very weird error

    I rather prefer having games in my home directory if possible, but when I compile ToME in my home dir in the usual way: make -f makefile.std preceded by the installation of Lua and followed by copying the tome binary and the tome-233-src/lib director

  • 10$ reward (paypal) to fix apple sign-in page missing icons

    still missing icons on this stupid page after reformatting and reinstalling the os all i see are a bunch of question marks and some of the page sometimes as many as 7 are missing it is now officially driving me nuts as i sign-in everyday nothing i tr