Help is available by sending an email to csf-support@mit.edu
Have any suggestion on how improve this wiki?  Please give us your feedback at csf-support@mit.edu

Quick Links to:

CSF Email properties description

Need more information about the csf-email email service?  Go to the CSF Email Service Technical Spec for more information.

  1. email.address.from:
    • Description:  A string containing an email address from whom the email is being sent.  The string may contain more than just an email address.
    • Usage:  Optional
    • Example:  email.address.from=registration@mit.edu ("MIT Office of the Registrar")
    • Dependencies:  If specified, this value will always be used in the from field of the email. If not specified, the CSF Email Service default address (csf-support@mit.edu) will be used.
  2. email.address.test.to:
    • Description:  A string containing an email address to whom the email is being sent.
    • Usage:  Optional.  Recommend to be used on WORKSTATION, DEV, TEST and QA servers and not used on PRODUCTION servers.
    • Example:  email.address.test.to=rjrenolds@mit.edu
    • Dependencies:  Used in conjunction with the email.production.mode property.
        When email.production.mode=false:
          email will be sent to the email address specified with this property.
        When email.production.mode=true:
          email will be sent to the email address specified by the calling application.
      If no "to address" is determined in either of the above cases, the CSF Email Service default address (csf-support@mit.edu) will be used.
  3. email.address.bcc:
    • Description:  A string of CSV email address(es) to be used in the email's bcc.
    • Usage:  Optional
    • Example:  email.address.bcc=rjrenolds@mit.edu
    • Dependencies:  Used in conjunction with the email.production.mode property.
        When email.production.mode=false:
          bcc addresses will not be added to the emails.
        When email.production.mode=true:
          bcc addresses will be added to the emails.
  4. email.production.mode:
    • Description:  Used to indicate whether or not the applicaition is deployed on a production server.
    • Usage:  Optional. Only the boolean values true or false are allowed (default is false).
    • Example
        When email.production.mode=false:
          the application is deployed to DEV, TEST or QA server and is not deployed to a PRODUCTION server.
        When email.production.mode=true:
          the application is deployed to a PRODUCTION server.
    • Dependencies:  None.
  5. email.app.id:
    • Description: Used to identify the application that created the email.
    • Usage: Required.
    • Example: email.app.id=ssb
        In this example, the application id is ssb and must be unique.
    • Dependencies: The application id must be unique. In other words, each application must have its own unique email.app.id value.
  6. email.sendEmailSchedule:
    • Description: Used to set the time interval for sending emails. The property value follows the format for the Quartz cron trigger. IMPORTANT: in a clustered environment (i.e. TEST and PROD), this property should be different for every server in the cluster: we want to avoid multiple quartz jobs running against the same email data at the same time and sending duplicate emails. In fact we recommend effectively disabling the quartz job on all but one of the servers in a given cluster by specifying a schedule that will never be triggered (e.g. a data in the year 2099).
    • Usage: Required when using csf-email in a cluster. If not specified, the csf-email default schedule will be used (every 10 minutes starting at the top of the hour).
    • Example: email.sendEmailSchedule=0 0/20 0-22 * * ?
        In this example, the emails will be send every 20 minutes, at 0, 20, and 40 minutes past the hour.
    • Dependencies: none.
    • Recommended Settings In Clustered Environment (TEST/PROD):
      one server in cluster (e.g. sea-app-5 in TEST): email.sendEmailSchedule=0 0/10 0-22 * * ?
      other server(s) in cluster (e.g. sea-app-6 in TEST): email.sendEmailSchedule=0 * * * * ? 2099
  7. email.deleteEmailSchedule:
    • Description: Used to set the time interval for deleting emails that have been sent. The property value follows the format for the Quartz cron trigger. IMPORTANT: in a clustered environment (i.e. TEST and PROD), this property should be different for every server in the cluster: we want to avoid multiple quartz jobs running against the same email data at the same time. In fact we recommend effectively disabling the quartz job on all but one of the servers in a given cluster by specifying a schedule that will never be triggered (e.g. a data in the year 2099).
    • Usage: Required when using csf-email in a cluster. If not specified, the csf-email default schedule will be used (nightly at 10.30pm).
    • Example: email.deleteEmailSchedule=0 45 23 * * ?
        In this example, the emails will be deleted every night at 11.45pm.
    • Dependencies: none.
    • Recommended Settings In Clustered Environment (TEST/PROD):
      one server in cluster (e.g. sea-app-5 in TEST): email.deleteEmailSchedule=0 30 22 * * ?
      other server(s) in cluster (e.g. sea-app-6 in TEST): email.deleteEmailSchedule=0 * * * * ? 2099

CSF Local authorization/authentication properties description

  1. local.mitroles:
    • Description:  A csv string of application defined roles.
    • Usage:  Optional.  Only to be used on developer workstations.  Do not use on servers.
    • Example:  local.mitroles=SSB_ADMIN,SSB_PAYMENT,SSB_REPORTS.
    • Dependencies:
        Will only be used if local.authentication=true and local.mitroles contains a non-empty string.  Otherwise, the uaws or rolesws webservice will be used to get the user roles.
  2. local.mitroles.domain:
    • Description:  A string containing the application defined ROLES DB 3 character catagory.
    • Usage:  Optional.  Only to be used on developer workstations.  Do not use on servers.
    • Example:  local.mitroles.domain=SFS.
    • Dependencies:  Will only be used if local.authentication=true and local.mitroles contains a non-empty string.
  3. local.mitroles.function:
    • Description:  A string containing the application defined ROLES DB 3 character function.
    • Usage:  Optional.  Only to be used on developer workstations.  Do not use on servers.
    • Example:  local.mitroles.function=SSB.
    • Dependencies:  Will only be used if local.authentication=true and local.mitroles contains a non-empty string.
  4. local.authentication:
    • Description:  A boolean value indicating whether or not TOUCHSTONE authentication is to be used.
    • Usage:  Required.
    • Example:  Only the boolean values true or false are allowed.
        When local.authentication=false:
          Touchstone will be used to authenticate the user.  Always set this value to false when deployed to a server.
        When local.authentication=true:
          Authentication will be done via a local dialog box.  User will be prompted to enter the local.user.name and local.user.password.
    • Dependencies:  None.
  5. local.user.name:
    • Description:  A sting containing an abitrary user name.
    • Usage:  Optional.  Only to be used on developer workstations.
    • Example:  local.user.name=jblow.
    • Dependencies:  Will only be used if local.authentication=true.
  6. local.user.password:
    • Description:  A sting containing an abitrary user password.
    • Usage:  Optional.  Only to be used on developer workstations.
    • Example:  local.user.password=mypassword.
    • Dependencies:  Will only be used if local.authentication=true.

CSF User authorization properties description (for use with the uaws and the rolesws web services)

  1. roles.proxy.user:
    • Description:  A string containing the ROLES DB proxy user that is used by the CSF authorization service.  This is assigned by the ROLES DB administrator.  Current values are: REG$PRD, REG$TST, SFS$PRD, SFS$TST, GRAD$PRD, GRAD$TST.  Verify with your team leader as to which proxy user you should use.
    • Example:  roles.proxy.user=SFS$TST.
    • Usage:  Required.
    • Dependencies:  None
  2. roles.function.category:
    • Description:  A string containing the application defined ROLES DB 3 or 4 character catagory.  The 3 or 4 character catagory is assigned by the ROLES DB administrator.  The current valid categories are REG, SFS and GRAD.  Once you have selected the category, you must use it's corresponding proxy user.
    • Usage:  Required.
    • Example:  roles.function.category=SFS.
    • Dependencies:
        Will only be used if local.authentication=false or local.mitroles has not been used.  This will override the default
        category (REG) used by the uaws webservice when retrieving the user's roles from the ROLES DB.
  3. roles.function.function:
    • Description:  A string containing the application defined ROLES DB 3 character function.  The 3 character function is assigned by the ROLES DB administrator.
    • Usage:  Optional.
    • Example:  local.mitroles.function=SSB.
    • Dependencies:  If specified, this property will only be used if local.authentication=false or local.mitroles is not used.
  4. webservices.mitrolesws.proxy.user:
    • Description:  A ROLES DB proxy user that will be used by the uaws webservice when retreiving the user's authorizations.  The ROLES proxy user is assigned by the ROLES DB administrator.
    • Usage:  Required.  Used only with the WebServiceRoleswsSao listAuthorizationsByCriteria method.
    • Example:  webservices.mitrolesws.proxy.user=REG$PRD.
    • Dependencies:  None
  5. webservices.mitroles.url:
  6. webservices.mitrolesws.url:
  7. webservices.keyStore:
    • Description:  The Java keystore that is used to authenticate to the uaws webservice.
    • Usage:  Required.
    • Example:  webservices.keyStore=/certificates/keystores/registrar.jks.
    • Dependencies:  None
  8. webservices.keyStorePassword:
    • Description:  The password for the Java keystore.  You can get the password from ops.
    • Usage:  Required.
    • Example:  webservices.keyStorePassword=changeit.
    • Dependencies:  None
  9. webservices.trustStore:
    • Description:  The server trust store that is used to authenticate to the uaws webserver.  You can download the serverTrustStore.jks now.
    • Usage:  Required.
    • Example:  webservices.trustStore=/certificates/keystores/serverTrustStore.jks.
    • Dependencies:  None
  10. webservices.trustStorePassword:
    • Description:  The password for the Java truststore.
    • Usage:  Required.
    • Example:  webservices.keyStorePassword=changeit.
    • Dependencies:  None
  • No labels