Difference between revisions of "Service Configuration"

From AgileApps Support Wiki
imported>Aeric
imported>Aeric
Line 84: Line 84:


===Global Tenancy===
===Global Tenancy===
Selected objects from a designated tenancy can be shared all other tenants who have installed a package that contains those objects.
:''Learn more:'' [[Global Data]]


:''Learn more:'' [[Global Data]]
:;Global Tenancy ID: The ID of tenant from which objects are shared.


:;Global Tenancy ID:
:;Global Tenancy Shared Object List: A comma separated list of [[Object ID]]s that are shared.
:;Global Tenancy Shared Object List:

Revision as of 03:41, 10 January 2014

Service Provider URL: http://{yourDomain}/networking/Service?t=1&targetpage=ViewPort.jsp
Settings > Service Provider Settings > Service Configuration

Basic Service Configuration

These values define the basic service configuration:

First-Time Service Configuration

Configure the Service Settings and specify Service and Domain names:
Parameter Description Typical Value
Service Name Name of the service provider Financiocorp Services
Prefix for Service Domain Optional subdomain name

Allowed characters: a-z, A-Z, 0-9, - (alphanumeric, plus hyphen)

Example: service

Service Domain The Domain Name part of the URL mydomain.com
Domain URL

Read Only
Automatically populated as:

Prefix + Service Domain

service.mydomain.com


Subsequent Configuration

These additional parameters become available after the initial configuration is complete.

Parameter Description Typical Value
Recaptcha Private Key After signing up for Google's reCaptcha implementation of the Captcha service, enter the public and private keys here. (They are used to interact with that service.)
Recaptcha Public Key
Error Notification Email Address An email message is sent to this address when errors occur customer_support@mydomain.com
No Reply Email Address The email address to use for messages sent by the platform, when replies are not permitted systemadministrator@mydomain.com
Help Domain Required field; Domain name for user help; This page is opened in a new browser window when Help is invoked from the platform http://www.mydomain.com/help
Document Directory File location for email attachments and generated documents /usr/local/
Temp Directory Used as a temporary storage location /temp/
Supported Languages Languages that are supported in this instance of the platform, and are available for selection by tenants.
Learn more: Translation Workbench

Service Domain

The Service Domain is required, and must comply with the following guidelines:
  • The Service Domain name must be unique
  • Service Domain names can contain the following characters:
  • alphanumeric (a-z, A-Z, 0-9)
  • hyphen (-)
  • period, dot, full stop (.), used as the delimiter in the Prefix for Service Domain

Prefix for Service Domain

If Tenant Subdomains are enabled in the platform, this value defines the service provider's subdomain. If they are not, then the prefix adds text to the domain name that happens to include a dot (period).

The prefix field accepts alphanumerics and the underscore. The prefix is added to the Service Domain setting to produce the (read-only) Domain URL.

Examples
Prefix for Service Domain Service Domain Domain URL(Read Only)
www.abc.com www.abc.com
xyz www.abc.com xyz.abc.com
xyz abc.com xyz.abc.com

Reserved Subdomains
Admins can specify which subdomains are restricted from creation by normal tenants in the LongJump interface. When a user enters a restricted subdomain on the tenant creation page, an error message appears below that field. By default, a set of subdomains are added as reserved subdomains. It can be updated as per the requirement.

Accessing Reserved Subdomains
  1. Go to LongJump > Configure Service Settings > Edit.
  2. In the Reserved Subdomains field, type the subdomains you wish to restrict.
    Subdomains should be entered as comma-separated-values, with no spaces before or after the comma.
  3. Ensure that you restart the server after making changes to the LongJump platform.
Considerations
  • You already know that you use this URL to manage tenants:
http://{yourPrefix}.{yourDomain}/networking/Service?t=1&targetpage=ViewPort.jsp
  • You can also access the platform in the same way that other tenants do, using a URL of this kind:
https://{yourPrefix}.{yourDomain}.com/networking/servicedesk/index.jsp
  • That URL gives you the ServiceDesk application and other applications, just like any other tenant.
(Without Tenant Subdomains, you can still log in to the platform to access applications--but there can be no Service Portal. That capability exists only when there is distinctive a URL that no other tenant would use to log on. If Tenant Subdomains are not enabled, then all tenants use the same URL to log in.)

Help Domain

As a Service Provider, you might create a help website to align with a customer's branded instance of the platform. In this case, the URL of the help website would be used as the default Help Domain. When a user clicks the Help link in the platform, that URL opens in a new browser window.

Email Configuration

Configuration for all the emails sent from the AgileApps Cloud platform.

Parameter Description Typical Value
Hostname For Email-relay Server Hostname localhost
User Name User/login name for the email-relay service
Password Password related to the user/login name for the email-relay service

Bounced Email Configuration

Use this option to designate a mailbox you have set up to handle bounced messages (messages sent from the platform that come back because they cannot be delivered).

  • Enable Bounced Email Processing - Yes or No
  • Hostname - The server that hosts the mailbox you set up
  • Mailbox Address - The address of the mailbox. (It is accessed using the POP3 protocol.)
  • Password - The password used to access the mailbox. (This field appears only when editing.)
  • [Test Email Configuration] - Click this button to test the settings.

Develop Configuration

Java code running in a tenancy is subject to strict limits--or governors:

  • Some settings put limits on the number of resources that tenants can use, to prevent infinite loops and other kinds of runaway programs. The limits apply to each tenant execution interval--from the time that the platform application instance gives control to tenant code, until the time that control returns to the platform. Up to that limit, an application can use as many resources as it wants. But once a constraint is exceeded, the executing code aborts with an exception.
  • Other settings restrict the kinds of Java classes that can be used, to prevent unwarranted access to the server and/or security violations.

The Service Provider Settings can be used to tighten those restrictions, ameliorate them, or lift them entirely.

Considerations
  • Settings are global. They apply to all tenants in the platform instance.
  • Settings apply to scheduled (background) jobs, as well as foreground applications.
  • The minimum for all numeric settings is "1".
  • Changes to these settings take effect only when the platform application instance is restarted.

Here are the default settings:

Parameter Description Default Value
Apply Governors in Java Code? Whether or not governors are applied to this platform instance. A development instance may want to turn them off, in some cases. Any multi-tenant production instance will want them on, to ensure that a runaway program in one tenant does not interfere with other tenants.

Notepad.png

Note: Currently, the code governance is available for Linux installations only.

Yes
Max Number of Statements allowed The maximum number of Java code statements that can be run during an execution interval. 10000


Maximum String Length allowed The total size of all strings allocated in the Java heap space during an execution interval. 30000


Maximum CPU Time allowed (milliseconds) The maximum number of CPU milliseconds that can be consumed during an execution interval. 60000


Java classes not allowed in code There are certain Java classes which are disallowed in tenant classes, to prevent access to the server and any compromise of server security. (They are, however, allowed in global classes developed by the ISV for use by all tenants.)

In order to protect the security of the server, enter a comma-separated list of fully qualified Java Class Names for this option. At compile time, application will check if any of these classes are referenced in the user code and throw an exception if they are. Note that this will take effect only after the server is restarted.

<syntaxhighlight lang="java" enclose="div"> java.lang.System, java.lang.Runtime, java.lang.Class, java.lang.ClassLoader, java.lang.Thread, java.lang.ThreadGroup, java.lang.ThreadLocal, java.lang.Runnable, java.lang.Compiler, java.lang.RuntimePermission,

java.lang.reflect.AccessibleObject, java.lang.reflect.Array, java.lang.reflect.Constructor, java.lang.reflect.Field, java.lang.reflect.Method, java.lang.reflect.Modifier, java.lang.reflect.Proxy, java.lang.reflect.ReflectPermission,

java.io.FileReader, java.io.FileWriter, java.io.FileInputStream, java.io.FileOutputStream,

java.net.DatagramSocket, java.net.DatagramSocketImpl, java.net.HttpURLConnection, java.net.Inet4Address, java.net.Inet6Address, java.net.InetAddress, java.net.InetSocketAddress, java.net.JarURLConnection, java.net.MulticastSocket, java.net.ServerSocket, java.net.Socket, java.net.URL, java.net.URI, java.net.URLClassLoader, java.net.URLConnection, java.net.URLStreamHandler, java.lang.Process, java.lang.ProcessBuilder </syntaxhighlight>

Libraries supported in Java Code

When compiling user-defined code, the platform allows certain libraries like jars or internal java packages:

  • If a custom library is required, the jar can be placed in the ../tomcat/lib folder of the Apache Tomcat installation
  • To include these library files, enter a comma-separated list of such jar files for this option
  • Note that this will take effect only after the server is restarted.
Empty


No. of Objects in Database Views

Database Views allow the creation of custom categories that join multiple objects

  • These database views can be used as the base category for a Report
  • The maximum number of tables that are allowed is five (5), with a default value of three (3)
  • The number of joins in these tables is restricted to the maximum number + 1
Default: 3, Range is 3-5
Maximum rows in a List View

Maximum number of rows that are fetched in a List View for an object is defined by this option

  • This number is limited by the maximum int value supported by Java/MySQL i.e. 2^16 = 4G
10000
Maximum rows in a report
  • Maximum number of rows that are fetched in a report
  • This number is limited by the maximum int value supported by Java/MySQL i.e. 2^16 = 4G
5000
Maximum rows in a Scheduled Report
  • Maximum number of rows that are fetched in a report that runs in the background queue.
  • This number is limited by the maximum int value supported by Java/MySQL i.e. 2^16 = 4G
5000
Maximum Savepoints Intermediate placemarks, which identify points at which the data fields contain intact, legitimate values 5
Maximum Recursions in Java API Allow a function to call itself the specified number of times 10

Tenant Configuration

This section is used by:
Allow Unauthenticated Tenant Creation
Allows any prospective customer to create a new tenancy (a trial account).
  • Unchecked by default
  • If checked, trial accounts can be created by unauthenticated users who have a computer and network connection that meets the Minimum Client Requirements
Enable Tenant Subdomains
This setting lets customers specify a URL subdomain when registering, giving them a unique URL they can use to access their platform applications.
Learn more: Tenant Subdomains

Catalog Configuration

Catalog Configuration Catalog Considerations

Community Site Configuration

A Community can be created to support community applications like Support Portal, Answers, Ideas, Social Networking. When enabled, all Users in all the tenancies (under a single ISV) can share knowledge and collaborate, without requiring a separate login to the platform.

Enable Community
Checkbox
Community Tenancy ID
Enter the Tenant ID
Community Site Name
Enter the Site name for the community; this name is displayed on each page

Global Tenancy

Selected objects from a designated tenancy can be shared all other tenants who have installed a package that contains those objects.

Learn more: Global Data
Global Tenancy ID
The ID of tenant from which objects are shared.
Global Tenancy Shared Object List
A comma separated list of Object IDs that are shared.