001: /*
002: * Copyright 1999,2004 The Apache Software Foundation.
003: *
004: * Licensed under the Apache License, Version 2.0 (the "License");
005: * you may not use this file except in compliance with the License.
006: * You may obtain a copy of the License at
007: *
008: * http://www.apache.org/licenses/LICENSE-2.0
009: *
010: * Unless required by applicable law or agreed to in writing, software
011: * distributed under the License is distributed on an "AS IS" BASIS,
012: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013: * See the License for the specific language governing permissions and
014: * limitations under the License.
015: */
016:
017: package org.apache.catalina.authenticator;
018:
019: public class Constants {
020:
021: public static final String Package = "org.apache.catalina.authenticator";
022:
023: // Authentication methods for login configuration
024: public static final String BASIC_METHOD = "BASIC";
025: public static final String CERT_METHOD = "CLIENT-CERT";
026: public static final String DIGEST_METHOD = "DIGEST";
027: public static final String FORM_METHOD = "FORM";
028:
029: // User data constraints for transport guarantee
030: public static final String NONE_TRANSPORT = "NONE";
031: public static final String INTEGRAL_TRANSPORT = "INTEGRAL";
032: public static final String CONFIDENTIAL_TRANSPORT = "CONFIDENTIAL";
033:
034: // Form based authentication constants
035: public static final String FORM_ACTION = "/j_security_check";
036: public static final String FORM_PASSWORD = "j_password";
037: public static final String FORM_USERNAME = "j_username";
038:
039: // Cookie name for single sign on support
040: public static final String SINGLE_SIGN_ON_COOKIE = "JSESSIONIDSSO";
041:
042: // --------------------------------------------------------- Request Notes
043:
044: /**
045: * <p>If a user has been authenticated by the web layer, by means of a
046: * login method other than CLIENT_CERT, the username and password
047: * used to authenticate the user will be attached to the request as
048: * Notes for use by other server components. A server component can
049: * also call several existing methods on Request to determine whether
050: * or not any user has been authenticated:</p>
051: * <ul>
052: * <li><strong>((HttpServletRequest) getRequest()).getAuthType()</strong>
053: * will return BASIC, CLIENT-CERT, DIGEST, FORM, or <code>null</code>
054: * if there is no authenticated user.</li>
055: * <li><strong>((HttpServletRequest) getRequest()).getUserPrincipal()</strong>
056: * will return the authenticated <code>Principal</code> returned by the
057: * <code>Realm</code> that authenticated this user.</li>
058: * </ul>
059: * <p>If CLIENT_CERT authentication was performed, the certificate chain
060: * will be available as a request attribute, as defined in the
061: * servlet specification.</p>
062: */
063:
064: /**
065: * The notes key for the password used to authenticate this user.
066: */
067: public static final String REQ_PASSWORD_NOTE = "org.apache.catalina.request.PASSWORD";
068:
069: /**
070: * The notes key for the username used to authenticate this user.
071: */
072: public static final String REQ_USERNAME_NOTE = "org.apache.catalina.request.USERNAME";
073:
074: /**
075: * The notes key to track the single-sign-on identity with which this
076: * request is associated.
077: */
078: public static final String REQ_SSOID_NOTE = "org.apache.catalina.request.SSOID";
079:
080: // ---------------------------------------------------------- Session Notes
081:
082: /**
083: * If the <code>cache</code> property of our authenticator is set, and
084: * the current request is part of a session, authentication information
085: * will be cached to avoid the need for repeated calls to
086: * <code>Realm.authenticate()</code>, under the following keys:
087: */
088:
089: /**
090: * The notes key for the password used to authenticate this user.
091: */
092: public static final String SESS_PASSWORD_NOTE = "org.apache.catalina.session.PASSWORD";
093:
094: /**
095: * The notes key for the username used to authenticate this user.
096: */
097: public static final String SESS_USERNAME_NOTE = "org.apache.catalina.session.USERNAME";
098:
099: /**
100: * The following note keys are used during form login processing to
101: * cache required information prior to the completion of authentication.
102: */
103:
104: /**
105: * The previously authenticated principal (if caching is disabled).
106: */
107: public static final String FORM_PRINCIPAL_NOTE = "org.apache.catalina.authenticator.PRINCIPAL";
108:
109: /**
110: * The original request information, to which the user will be
111: * redirected if authentication succeeds.
112: */
113: public static final String FORM_REQUEST_NOTE = "org.apache.catalina.authenticator.REQUEST";
114:
115: }
|