Repository: syncope Updated Branches: refs/heads/master 98703d1c7 -> 88602c0bb
[SYNCOPE-700] Finalizing reference guide content Project: http://git-wip-us.apache.org/repos/asf/syncope/repo Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/88602c0b Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/88602c0b Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/88602c0b Branch: refs/heads/master Commit: 88602c0bbdd9bc1aea560676225d12ca71c588d0 Parents: 98703d1 Author: Francesco Chicchiriccò <[email protected]> Authored: Fri Aug 26 18:10:15 2016 +0200 Committer: Francesco Chicchiriccò <[email protected]> Committed: Fri Aug 26 18:10:15 2016 +0200 ---------------------------------------------------------------------- src/main/asciidoc/getting-started/obtain.adoc | 44 ------ src/main/asciidoc/images/installer-12.png | Bin 375102 -> 72643 bytes src/main/asciidoc/images/installer-13.png | Bin 72643 -> 39897 bytes src/main/asciidoc/images/installer-14.png | Bin 39897 -> 0 bytes .../adminconsole/adminconsole.adoc | 2 +- .../workingwithapachesyncope/customization.adoc | 29 ++-- .../systemadministration/activitimodeler.adoc | 46 ++++++ .../configurationparameters.adoc | 44 ++++++ .../configureconnidlocations.adoc | 72 +++++++++ .../systemadministration/connectorbundles.adoc | 124 +++++++++++++++ .../systemadministration/dbms.adoc | 152 +++++++++++++++++++ .../systemadministration/domainsmanagement.adoc | 35 +++++ .../emailconfiguration.adoc | 32 ++++ .../systemadministration/highavailability.adoc | 52 +++++++ .../systemadministration/importexport.adoc | 83 ++++++++++ .../systemadministration/javaeecontainer.adoc | 113 ++++++++++++++ .../setadmincredentials.adoc | 49 ++++++ .../systemadministration.adoc | 73 +++++++++ .../workingwithapachesyncope.adoc | 18 +-- 19 files changed, 892 insertions(+), 76 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/getting-started/obtain.adoc ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/getting-started/obtain.adoc b/src/main/asciidoc/getting-started/obtain.adoc index a1e81a4..2b205cd 100644 --- a/src/main/asciidoc/getting-started/obtain.adoc +++ b/src/main/asciidoc/getting-started/obtain.adoc @@ -225,68 +225,24 @@ image::installer-3.png[installer-3] image::installer-4.png[installer-4] -Installation path:: -* installation path: is the directory where Syncope overlay will be created - image::installer-5.png[installer-5] -Maven:: -* *Maven home directory:* is the Maven home directory; -* *Group ID:* something like 'com.mycompany' - maven overlay property; -* *Artifact ID:* something like 'myproject' - maven overlay property; -* *Secret Key:* Provide any pseudo-random, 16 character length, string here that will be used in the generated project for AES ciphering; -* *Anonymous Key:* - Provide any pseudo-random, 16 character length, string here that will be used in the generated project for AES ciphering; -* *Configuration directory:* where Syncope configuration files are stored; -* *Log directory:* where Syncope logs are stored; -* *Bundle directory:* where ConnId bundles are stored; -* *Syncope version:* the project version that would be to install. - image::installer-6.png[installer-6] -Syncope options:: -* *Swagger:* check if you want to install http://swagger.io[Swagger UI^]; -* *Camel:* check if you want to install http://camel.apache.org[Camel provisioning^]; -* *Activiti workflow modeler:* check if you want to install http://activiti.org[Activiti modeler^] (default is true); - image::installer-7.png[installer-7] -Database:: -* DBMS where Syncope will be installed; - image::installer-8.png[installer-8] -Database settings:: -* Depends on DBMS selected (in the example: PostgreSQL) -** Database JDBS url; -** Database user; -** Database password; - image::installer-9.png[installer-9] -Application server:: -* Container where Syncope will be deployed; - image::installer-10.png[installer-10] -Application server settings:: -* Depends on container selected (in the example: Tomcat) - -The next images shows how the installer print some feedback directly on the GUI or reading the log file under the -configuration directory: - -[source] --- -/var/tmp/syncope_2_0_0/install.log --- - image::installer-11.png[installer-11] image::installer-12.png[installer-12] image::installer-13.png[installer-13] -image::installer-14.png[installer-14] - [[installer-components]] ==== Components http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/images/installer-12.png ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/images/installer-12.png b/src/main/asciidoc/images/installer-12.png index 692790f..0bc120e 100644 Binary files a/src/main/asciidoc/images/installer-12.png and b/src/main/asciidoc/images/installer-12.png differ http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/images/installer-13.png ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/images/installer-13.png b/src/main/asciidoc/images/installer-13.png index 0bc120e..8fbf70f 100644 Binary files a/src/main/asciidoc/images/installer-13.png and b/src/main/asciidoc/images/installer-13.png differ http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/images/installer-14.png ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/images/installer-14.png b/src/main/asciidoc/images/installer-14.png deleted file mode 100644 index 8fbf70f..0000000 Binary files a/src/main/asciidoc/images/installer-14.png and /dev/null differ http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/reference-guide/workingwithapachesyncope/adminconsole/adminconsole.adoc ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/reference-guide/workingwithapachesyncope/adminconsole/adminconsole.adoc b/src/main/asciidoc/reference-guide/workingwithapachesyncope/adminconsole/adminconsole.adoc index b33808e..13f5788 100644 --- a/src/main/asciidoc/reference-guide/workingwithapachesyncope/adminconsole/adminconsole.adoc +++ b/src/main/asciidoc/reference-guide/workingwithapachesyncope/adminconsole/adminconsole.adoc @@ -30,7 +30,7 @@ You should be greeted by the following web page. [.text-center] image::consoleLogin.png[console-login] -You can use the <<changing-admin-password,default admin credentials>> to login. +You can use the <<set-admin-credentials,default admin credentials>> to login. ==== Pages http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/reference-guide/workingwithapachesyncope/customization.adoc ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/reference-guide/workingwithapachesyncope/customization.adoc b/src/main/asciidoc/reference-guide/workingwithapachesyncope/customization.adoc index 67f98e0..4d73273 100644 --- a/src/main/asciidoc/reference-guide/workingwithapachesyncope/customization.adoc +++ b/src/main/asciidoc/reference-guide/workingwithapachesyncope/customization.adoc @@ -63,6 +63,21 @@ endif::[] This general behavior might have exceptions, as highlighted below. ==== +As a general way to operate, the Embedded Mode (see the +ifeval::["{backend}" == "html5"] +http://syncope.apache.org/docs/getting-started.html[Apache Syncope Getting Started Guide] +endif::[] +ifeval::["{backend}" == "pdf"] +http://syncope.apache.org/docs/getting-started.pdf[Apache Syncope Getting Started Guide] +endif::[] +for details) allows to work comfortably from a single workstation, with no need of additional setup; such mode is +effectively implemented as the `all` +https://maven.apache.org/guides/introduction/introduction-to-profiles.html[Maven profile^], where the available optional +components and extensions are enabled. + +When deploying the generated WAR artifacts into an external <<javaee-container>> however, the required components and +extensions need to be explicitly selected and enabled, as shown in the following. + +[[deployment-directories]] .Deployment directories **** Apache Syncope needs three base directories to be defined: @@ -85,20 +100,6 @@ $ mkdir /opt/syncope/conf .... **** -As a general way to operate, the Embedded Mode (see the -ifeval::["{backend}" == "html5"] -http://syncope.apache.org/docs/getting-started.html[Apache Syncope Getting Started Guide] -endif::[] -ifeval::["{backend}" == "pdf"] -http://syncope.apache.org/docs/getting-started.pdf[Apache Syncope Getting Started Guide] -endif::[] -for details) allows to work comfortably from a single workstation, with no need of additional setup; such mode is -effectively implemented as the `all` -https://maven.apache.org/guides/introduction/introduction-to-profiles.html[Maven profile^], where the available optional -components and extensions are enabled. + -When deploying the generated WAR artifacts into an external <<javaee-container>> however, the required components and -extensions need to be explicitly selected and enabled, as shown in the following. - The WAR artifacts are generated by running the Maven command (with reference to the suggested directory layout): .... http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/activitimodeler.adoc ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/activitimodeler.adoc b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/activitimodeler.adoc new file mode 100644 index 0000000..4ab1e9d --- /dev/null +++ b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/activitimodeler.adoc @@ -0,0 +1,46 @@ +// +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. +// +==== Enable the Activiti Modeler + +Due to licensing issues - see +https://issues.apache.org/jira/browse/SYNCOPE-439?focusedCommentId=13829896&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13829896[this comment^] +for more information - it is not possible to embed the +http://www.activiti.org/components.html#modeler[Activiti Modeler^], which provides a powerful graphical web editing +interface for Activiti BPM, into any Apache Syncope artifact; thus, some manual steps are required to enable it on a +working Apache Syncope deployment, for use with the admin console. + +[WARNING] +This procedure requires Apache Maven since it is using a fake project to perform all required setup tasks. + +First of all, generate a new Maven project as described in the +ifeval::["{backend}" == "html5"] +http://syncope.apache.org/docs/getting-started.html[Apache Syncope Getting Started Guide,] +endif::[] +ifeval::["{backend}" == "pdf"] +http://syncope.apache.org/docs/getting-started.pdf[Apache Syncope Getting Started Guide,] +endif::[] +then build via + +.... +mvn -P all clean install +.... + +At this point, copy the `console/target/activiti-modeler/` directory in the desired location of the host where the +admin console is deployed, then set the value of `activitiModelerDirectory` with such path in the `console.properties` +file. http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/configurationparameters.adoc ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/configurationparameters.adoc b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/configurationparameters.adoc new file mode 100644 index 0000000..f45973a --- /dev/null +++ b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/configurationparameters.adoc @@ -0,0 +1,44 @@ +// +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. +// + +==== Configuration Parameters + +Most run-time configuration options are available as parameters and can be tuned either via the admin console, CLI or +barely invoking the REST layer through http://curl.haxx.se/[curl^]: + +* `password.cipher.algorithm` - which cipher algorithm shall be used for encrypting password values; supported +algorithms include `SHA-1`, `SHA-256`, `SHA-512`, `AES`, `S-MD5`, `S-SHA-1`, `S-SHA-256`, `S-SHA-512` and `BCRYPT`; +salting options are available in the `security.properties` file; +* `notificationjob.cronExpression` - +http://www.quartz-scheduler.org/documentation/quartz-2.2.x/tutorials/crontrigger.html[cron^] expression describing how +frequently the pending <<tasks-notification,notification tasks>> are processed: empty means disabled; +* `notification.maxRetries` - how many times the delivery of a given notification should be attempted before giving up; +* `token.length` - the length of the random tokens that can be generated as part of various <<workflow,workflow>> +processes, including <<password-reset,password reset>>; +* `token.expireTime` - the time after which the generated random tokens expire; +* `selfRegistration.allowed` - whether self-registration (tipically via the enduser application) is allowed; +* `passwordReset.allowed` - whether the <<password-reset,password reset>> feature (tipically via the enduser +application) is allowed; +* `passwordReset.securityQuestion` - whether the <<password-reset,password reset>> feature involves security questions; +* `authentication.statuses` - the list of <<workflow,workflow>> statuses for which users are allowed to authenticate; +* `log.lastlogindate` - whether the system updates the `lastLoginDate` field of users upon authentication; +* `tasks.interruptMaxRetries` - how many attempts shall be made when interrupting a running <<task,task>>; +* `return.password.value` - whether the hashed password value shall be returned when reading users. + +Besides this default set, new configuration parameters can be define to support <<customization,custom>> code. http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/configureconnidlocations.adoc ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/configureconnidlocations.adoc b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/configureconnidlocations.adoc new file mode 100644 index 0000000..59eef00 --- /dev/null +++ b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/configureconnidlocations.adoc @@ -0,0 +1,72 @@ +// +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. +// +==== Configure ConnId locations + +Apache Syncope can be configured for using either local and remote <<external-resources,connector bundles>>: + +* *local* connector bundles are located somewhere in the same filesystem where the Java EE container running +Apache Syncope is deployed; +* *remote* connector bundles are provided via Java or .NET +https://connid.atlassian.net/wiki/display/BASE/Connector+Servers[connector server^]. + +While local connector bundles feature an easy setup, remote connector bundles allow enhanced deployment scenarios and +are particularly useful when it is needed to deal with architectural security constraints or when a connector bundle +requires to run on a specific platform OS (say MS Windows) while Apache Syncope is deployed on another platform OS +(say GNU/Linux). + +The `connid.properties` file holds the configuration for defining which ConnId locations (either local and remote) +will be considered. + +The format is quite straightforward: + +.... +connid.locations=location1,\ +location2,\ +... +locationN +.... + +where each location is the string representation of an URI of the form `file:/path/to/directory/` for local locations, +`connid://key@host:port` for remote non-SSL connector servers or finally `connids://key@host:port[?trustAllcerts=true]` +for remote SSL connector servers, with optional flag to disable certificate check. + + +.Single local location +==== +.... +connid.locations=file:/opt/syncope/bundles/ +.... +==== + +.Single remote location +==== +.... +connid.locations=connid://sampleKey@windows2008:4554 +.... +==== + +.Multiple locations +==== +.... +connid.locations=file:/opt/syncope/bundles/,\ +file:/var/tmp/bundles/,\ +connid://sampleKey@windows2008:4554,\ +connids://anotherKey@windows2008:4559,\ +connids://aThirdKey@linuxbox:9001?trustAllCerts=true +.... +==== http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/connectorbundles.adoc ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/connectorbundles.adoc b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/connectorbundles.adoc new file mode 100644 index 0000000..29b07f5 --- /dev/null +++ b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/connectorbundles.adoc @@ -0,0 +1,124 @@ +// +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. +// +==== Install connector bundles + +<<external-resources,Connector bundles>> are made available as JAR files and can be configured, for a given deployment: + +* for Maven project, in local sources; +* for all distributions, at run-time. + +===== Local sources + +====== Different version of predefined connector bundle + +First of all, verify which connector bundles are predefined in your project by looking at your project's parent +ifeval::["{snapshotOrRelease}" == "release"] +http://central.maven.org/maven2/org/apache/syncope/syncope/2.0.0-M4/{docVersion}[POM^]. +endif::[] +ifeval::["{snapshotOrRelease}" == "snapshot"] +https://repository.apache.org/content/groups/snapshots/org/apache/syncope/syncope/{docVersion}[POM^]. +endif::[] + +As you can see, there are several Maven properties on the form `connid.*.version`, controlling the related connector +bundle's version. + +If you want your own project to use a different version of a given connector bundle, all you need to do is to override +the related property in your own project's root pom.xml. + +Hence, supposing that you would like to use `net.tirasa.connid.bundles.db.table` version `2.2.5-SNAPSHOT` rather than +`2.2.4` shipped with Apache Syncope, add the following property to your own project's root `pom.xml`: + +[source,xml] +.... +<properties> + ... + <connid.database.version>2.2.5-SNAPSHOT</connid.database.version> +</properties> +.... + +====== Non-predefined connector bundle + +If the needed connector bundle is not in the predefined set as shown above, you will need to add a new property into +your own project's root `pom.xml`: + +[source,xml] +.... +<properties> + ... + <my.new.connector.version>1.0.0</my.new.connector.version> +</properties> +.... + +then change the `maven-dependency-plugin` configuration both in `core/pom.xml` and `console/pom.xml` from + +[source,xml] +.... +<plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-dependency-plugin</artifactId> + <inherited>true</inherited> + <executions> + <execution> + <id>set-bundles</id> + <phase>process-test-resources</phase> + <goals> + <goal>copy</goal> + </goals> + </execution> + </executions> +</plugin> +.... + +to + +[source,xml] +.... +<plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-dependency-plugin</artifactId> + <inherited>true</inherited> + <configuration> + <artifactItems> + <artifactItem> + <groupId>my.new.connector.groupId</groupId> + <artifactId>my.new.connector.artifactId</artifactId> + <version>${my.new.connector.version}</version> + </artifactItem> + </artifactItems> + </configuration> + <executions> + <execution> + <id>set-bundles</id> + <phase>process-test-resources</phase> + <goals> + <goal>copy</goal> + </goals> + </execution> + </executions> +</plugin> +.... + +===== Run-time + +Connector bundles can be added or replaced at run-time by performing the following steps: + +. https://github.com/Tirasa/ConnId/blob/master/README.md#available-connectors[Download^] the required connector bundle +JAR file; +. Copy the downloaded JAR file into one of configured <<configure-connid-locations,ConnId locations>>, typically the +`bundles` directory where the other connector bundles are already available. http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/dbms.adoc ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/dbms.adoc b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/dbms.adoc new file mode 100644 index 0000000..446a690 --- /dev/null +++ b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/dbms.adoc @@ -0,0 +1,152 @@ +// +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. +// +==== DBMS + +===== PostgreSQL + +In `provisioning.properties`: + +.... +quartz.jobstore=org.quartz.impl.jdbcjobstore.PostgreSQLDelegate +quartz.sql=tables_postgres.sql +.... + +In `domains/Master.properties` (for the `Master` domain): + +.... +Master.driverClassName=org.postgresql.Driver +Master.url=jdbc:postgresql://localhost:5432/syncope +Master.schema= +Master.username=syncope +Master.password=syncope +Master.databasePlatform=org.apache.openjpa.jdbc.sql.PostgresDictionary +Master.orm=META-INF/spring-orm.xml +.... + +[WARNING] +This assumes that you have a PostgreSQL instance running on localhost, listening on its default port 5432 with a +database `syncope` fully accessible by user `syncope` with password `syncope`. + +===== MySQL + +In `provisioning.properties`: + +.... +quartz.jobstore=org.quartz.impl.jdbcjobstore.StdJDBCDelegate +quartz.sql=tables_mysql_innodb.sql +.... + +[WARNING] +This assumes that the InnoDB engine is enabled in your MySQL instance - if this is not the case, then change the value +for `quartz.sql` to `tables_mysql.sql`. + +In `domains/Master.properties` (for the `Master` domain): + +.... +Master.driverClassName=com.mysql.jdbc.Driver +Master.url=jdbc:mysql://localhost:3306/syncope?characterEncoding=UTF-8 +Master.schema= +Master.username=syncope +Master.password=syncope +Master.databasePlatform=org.apache.openjpa.jdbc.sql.MySQLDictionary(blobTypeName=LONGBLOB) +Master.orm=META-INF/spring-orm.xml +.... + +[WARNING] +This assumes that you have a MySQL instance running on localhost, listening on its default port 3306 with a database +`syncope` fully accessible by user `syncope` with password `syncope`. + +===== MariaDB + +In `provisioning.properties`: + +.... +quartz.jobstore=org.quartz.impl.jdbcjobstore.StdJDBCDelegate +quartz.sql=tables_mariadb_innodb.sql +.... + +[WARNING] +This assumes that the InnoDB engine is enabled in your MriaDB instance - if this is not the case, then change the value +for `quartz.sql` to `tables_mariadb.sql`. + +In `domains/Master.properties` (for the `Master` domain): + +.... +Master.driverClassName=org.mariadb.jdbc.Driver +Master.url=jdbc:mariadb://localhost:3306/syncope?characterEncoding=UTF-8 +Master.schema= +Master.username=syncope +Master.password=syncope +Master.databasePlatform=org.apache.openjpa.jdbc.sql.MariaDBDictionary +Master.orm=META-INF/spring-orm.xml +.... + +[WARNING] +This assumes that you have a MySQL instance running on localhost, listening on its default port 3306 with a database +`syncope` fully accessible by user `syncope` with password `syncope`. + +===== Oracle Database + +In `provisioning.properties`: + +.... +quartz.jobstore=org.quartz.impl.jdbcjobstore.oracle.OracleDelegate +quartz.sql=tables_oracle.sql +.... + +In `domains/Master.properties` (for the `Master` domain): + +.... +Master.driverClassName=oracle.jdbc.OracleDriver +Master.url=jdbc:oracle:thin:@localhost:1521:orcl +Master.schema=SYNCOPE +Master.username=syncope +Master.password=syncope +Master.databasePlatform=org.apache.openjpa.jdbc.sql.OracleDictionary +Master.orm=META-INF/spring-orm-oracle.xml +.... + +[WARNING] +This assumes that you have an Oracle instance running on localhost, listening on its default port 1521 with a database +`syncope` under tablespace `SYNCOPE`, fully accessible by user `syncope` with password `syncope`. + +===== MS SQL Server + +In `provisioning.properties`: + +.... +quartz.jobstore=org.quartz.impl.jdbcjobstore.MSSQLDelegate +quartz.sql=tables_sqlServer.sql +.... + +In `domains/Master.properties` (for the `Master` domain): + +.... +Master.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver +Master.url=jdbc:sqlserver://localhost:1344;database=syncope;selectMethod=cursor;sendStringParametersAsUnicode=false +Master.schema=dbo +Master.username=syncope +Master.password=syncope +Master.databasePlatform=org.apache.openjpa.jdbc.sql.SQLServerDictionary +Master.orm=META-INF/spring-orm-sqlserver.xml +.... + +[WARNING] +This assumes that you have a MS SQL Server instance running on localhost, listening on its default port 1344 with a +database `syncope` fully accessible by user `syncope` with password `syncope`. http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/domainsmanagement.adoc ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/domainsmanagement.adoc b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/domainsmanagement.adoc new file mode 100644 index 0000000..5c56152 --- /dev/null +++ b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/domainsmanagement.adoc @@ -0,0 +1,35 @@ +// +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. +// +==== Domains Management + +<<domains>> are defined by three files in the <<properties-files-location,configuration directory>>; assuming +that the domain name is `Two`, such files are: + +* `domains/TwoDomain.xml` - general configuration; +* `domains/Two.properties` - for <<dbms>> parameters; +* `domains/TwoContent.xml` - for content <<deal-with-internal-storage-export-import,initialization>>. + +When adding a new domain to an existing deployment it is possible to copy, rename and edit the files available for +the `Master` dommain, always present. + +[CAUTION] +Adding a new domain requires re-deploying the <<core>> application and restarting the Java EE container. + +Once a new domain is added, the admin credentials for such domain can be set via admin console, CLI or +barely invoking the REST layer through http://curl.haxx.se/[curl^]. http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/emailconfiguration.adoc ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/emailconfiguration.adoc b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/emailconfiguration.adoc new file mode 100644 index 0000000..6001e51 --- /dev/null +++ b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/emailconfiguration.adoc @@ -0,0 +1,32 @@ +// +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. +// +==== E-mail Configuration + +The `mail.properties` holds the configuration options to enable the effective delivery of <<notifications,notification>> +e-mails: + +* `smtpHost` - the mail server host, typically an SMTP host; +* `smtpPort` - the mail server port; +* `smtpUser` - (optional) the username for the account at the mail host; +* `smtpPassword` - (optional) the password for the account at the mail host; +* `smtpProtocol` - the mail protocol; +* `smtpEncoding` - the default encoding to use for MIME messages; +* `smtpConnectionTimeout` - the connection timeout value in milliseconds, to the mail host; +* `mailDebug` - when `true`, enable the debugging of email, including the handshake, authentication, delivery and +disconnection. http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/highavailability.adoc ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/highavailability.adoc b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/highavailability.adoc new file mode 100644 index 0000000..0398d99 --- /dev/null +++ b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/highavailability.adoc @@ -0,0 +1,52 @@ +// +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. +// +==== High-Availability + +When deploying multiple Apache Syncope instances insisting on a single database or database cluster, it is of +fundamental importance that the contained OpenJPA instances are correctly configured for +http://openjpa.apache.org/builds/2.4.1/apache-openjpa/docs/ref_guide_event.html[remote event notification^]. + +Such configuration, in fact, allows the OpenJPA data cache to remain synchronized when deployed in multiple JVMs, thus +enforcing data consistency across all Apache Syncope instances. + +The default configuration in `domains.xml` is + +[source,xml] +.... +<entry key="openjpa.RemoteCommitProvider" value="sjvm"/> +.... + +which is suited for single JVM installations; with multiple instances, more options like as TCP or JMS are available; +see the OpenJPA documentation for reference. + +[WARNING] +==== +The OpenJPA documentation refers to direct configuration under `META-INF/persistence.xml`; for example: + +[source,xml] +.... +<property name="openjpa.RemoteCommitProvider" value="tcp(Addresses=10.0.1.10;10.0.1.11)"/> +.... + +while for use in `domains.xml`, this becomes: + +[source,xml] +.... +<entry key="openjpa.RemoteCommitProvider" value="tcp(Addresses=10.0.1.10;10.0.1.11)"/> +.... +==== http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/importexport.adoc ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/importexport.adoc b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/importexport.adoc new file mode 100644 index 0000000..024ec63 --- /dev/null +++ b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/importexport.adoc @@ -0,0 +1,83 @@ +// +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. +// +==== Deal with internal storage export - import + +Almost every configurable aspect of a given deployment is contained into the <<persistence,internal storage>>: +schemas, connectors, resources, mapping, roles, groups, tasks and other parameters. + +During the implementation phase of an Apache Syncope-based project, it might be handful to move such configuration back +and forth from one Apache Syncope instance to another (say developer's laptop and production server). + +An option is clearly acting at low level by empowering DBMS' dump & restore capabilities, but what if developer is +running MySQL (or even in-memory H2) while sysadmin features Oracle? + +[CAUTION] +.Wipe existing content +===== +When not running in-memory H2, the internal storage's content must be wiped before starting Apache Syncope, otherwise +the provided content will be just ignored. + +Check `core-persistence.log` for message + +.... +Empty database found, loading default content +.... + +If the internal storage is not empty, instead, you will get + +.... +Data found in the database, leaving untouched +.... +===== + +[WARNING] +===== +All references in the following are set to `MasterContent.xml`; when other <<domains,domains>> are defined, the content +file is renamed accordingly. For example, `TwoContent.xml` if domain name is `Two`. +===== + +[WARNING] +.MySQL and lower case table names +===== +On some platforms (namely, Mac OS X) MySQL is configured by default to be case insensitive: in such cases, you might +want to edit the `/etc/my.cnf` file and add the following line in the `[mysqld]` section: + +.... +lower_case_table_names=1 +.... +===== + +===== Export + +This task can be accomplished either via admin console, CLI or by barely invoking the REST layer through +http://curl.haxx.se/[curl^], for example: + +.... +curl -X GET -u admin:password -o MasterContent.xml \ + http://localhost:9080/syncope/rest/configurations/stream +.... + +===== Import + +Basically, all you need to do is to replace the local `MasterContent.xml` with the one exported as explained above; but +where such file located? + +* `$TOMCAT_HOME/webapps/syncope/WEB-INF/classes/domains/MasterContent.xml` for Standalone +* `/usr/share/tomcat8/webapps/syncope/WEB-INF/classes/domains/MasterContent.xml` for Debian packages +* `core/src/test/resources/domains/MasterContent.xml` for Maven projects in embedded mode +* `core/src/main/resources/domains/MasterContent.xml` for Maven projects http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/javaeecontainer.adoc ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/javaeecontainer.adoc b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/javaeecontainer.adoc new file mode 100644 index 0000000..c9a7ee0 --- /dev/null +++ b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/javaeecontainer.adoc @@ -0,0 +1,113 @@ +// +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. +// +==== JavaEE Container + +===== Apache Tomcat 8 and 8.5 + +On GNU / Linux - Mac OS X, create `$CATALINA_HOME/bin/setenv.sh` with similar content +(keep everything on a single line): + +.... +JAVA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server \ +-Xms1536m -Xmx1536m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=256m \ +-XX:MaxPermSize=256m -XX:+DisableExplicitGC" +.... + +On MS Windows, create `%CATALINA_HOME%\bin\setenv.bat` with similar content (keep everything on a single line): + +.... +set JAVA_OPTS=-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server +-Xms1536m -Xmx1536m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=256m +-XX:MaxPermSize=256m -XX:+DisableExplicitGC +.... + +It is recommended to define a separate datasource for each <<domains,domain>> (the following example is for the `Master` +domain and MySQL): please also check that the connection parameters are the same as configured for <<dbms>>: + +[source,xml] +.... +<Resource name="jdbc/MasterDataSource" auth="Container" type="javax.sql.DataSource" + factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" testWhileIdle="true" + testOnBorrow="true" testOnReturn="true" validationQuery="SELECT 1" validationInterval="30000" + maxActive="100" minIdle="2" maxWait="10000" initialSize="2" removeAbandonedTimeout="20000" + removeAbandoned="true" logAbandoned="true" suspectTimeout="20000" + timeBetweenEvictionRunsMillis="5000" minEvictableIdleTimeMillis="5000" + jdbcInterceptors="org.apache.tomcat.jdbc.pool.interceptor.ConnectionState; + org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer" + username="syncope" password="syncope" driverClassName="com.mysql.jdbc.Driver" + url="jdbc:mysql://localhost:3306/syncope?characterEncoding=UTF-8"/> +.... + +[CAUTION] +Be sure to put the corresponding JDBC driver JAR file under `$CATALINA_HOME/lib` for each datasource defined. + +===== Glassfish 4.1 and Payara Server + +When using a datasource for internal storage, be sure to add + +[source,xml] +.... +<resource-ref> + <res-ref-name>jdbc/MasterDataSource</res-ref-name> + <jndi-name>jdbc/MasterDataSource</jndi-name> +</resource-ref> +.... + +right after `</context-root>` in `core/src/main/webapp/WEB-INF/glassfish-web.xml`, assuming that your Glassfish instance +provides a datasource named `jdbc/MasterDataSource`. + +===== Wildfly 9 and 10 + +Replace + +.... + classpath*:/*Context.xml +.... + +with + +.... + classpath*:/*Context.xml + /WEB-INF/classes/restCXFContext.xml +.... + +in `core/src/main/webapp/WEB-INF/web.xml`. + +Download +ifeval::["{snapshotOrRelease}" == "release"] +https://github.com/apache/syncope/blob/syncope-{docVersion}/fit/core-reference/src/main/resources/jboss/restCXFContext.xml[restCXFContext.xml^] +endif::[] +ifeval::["{snapshotOrRelease}" == "snapshot"] +https://github.com/apache/syncope/blob/master/fit/core-reference/src/main/resources/jboss/restCXFContext.xml[restCXFContext.xml^] +endif::[] +and save it under `core/src/main/resources/`. + +Finally, add + +[source,xml] +.... +<property name="jpaPropertyMap"> + <map> + <entry key="openjpa.MetaDataFactory" + value="jpa(URLs=vfs:/content/${project.build.finalName}.war/WEB-INF/classes, Resources=${Master.orm})"/> + </map> +</property> +.... + +in `core/src/main/resources/domains/MasterDomain.xml` for the `MasterEntityManagerFactory` bean. http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/setadmincredentials.adoc ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/setadmincredentials.adoc b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/setadmincredentials.adoc new file mode 100644 index 0000000..4292a06 --- /dev/null +++ b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/setadmincredentials.adoc @@ -0,0 +1,49 @@ +// +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. +// +==== Set admin credentials + +[WARNING] +The procedure below affects only the `Master` <<domains,domain>>; for other domains check <<domains-management,above>>. + +The default password for the `admin` user is `password`. + +The credentials are defined in the `security.properties` file; text encoding must be set to UTF-8: + +* `adminUser` - administrator username +* `adminPassword` - SHA1 hash evaluation of cleartext password (represented as a sequence of 40 hexadecimal digits) +* `adminPasswordAlgorithm` - algorithm to be used for hash evaluation (default value: SHA1) + +For GNU / Linux and Mac OS X, the SHA1 password can be obtained via the `sha1sum` command-line tool of +http://www.gnu.org/software/coreutils/[GNU Core Utilities^]: + +[source,bash] +.... +echo -n "new_password" | sha1sum +.... +For MS Windows, some options are available: + +* http://support.microsoft.com/kb/841290[MS File Checksum Integrity Verifier^] + +install, save your password to a file (e.g. `password.txt` without EOL) and issue at command line: + +[source,bash] +.... +fciv.exe -sha1 password.txt +.... +* http://gnuwin32.sourceforge.net/[GnuWin32^] port of GNU utilities for MS Windows +* http://www.cygwin.com/[Cygwin^] Unix-like environment and command-line interface for Microsoft Windows (featuring +http://www.gnu.org/software/coreutils/[GNU Core Utilities^]) http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/systemadministration.adoc ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/systemadministration.adoc b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/systemadministration.adoc new file mode 100644 index 0000000..302b1e3 --- /dev/null +++ b/src/main/asciidoc/reference-guide/workingwithapachesyncope/systemadministration/systemadministration.adoc @@ -0,0 +1,73 @@ +// +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. +// +=== System Administration + +[[properties-files-location]] +.Where are the configration files? +**** +Depending on which Apache Syncope distribution you are running on, the configuration files mentioned in the following +might reside in different locations. + +Standalone:: Assuming that `$CATALINA_HOME` is the Apache Tomcat base directory created when the distribution archive +was unzipped, the configuration files are located under + +* `$CATALINA_HOME/webapps/syncope/WEB-INF/classes/` +* `$CATALINA_HOME/webapps/syncope-console/WEB-INF/classes/` +* `$CATALINA_HOME/webapps/syncope-enduser/WEB-INF/classes/` + +Debian packages:: The configuration files will be fist searched in `/etc/apache-syncope`, then under + +* `/usr/share/tomcat8/webapps/syncope/WEB-INF/classes/` +* `/usr/share/tomcat8/webapps/syncope-console/WEB-INF/classes/` +* `/usr/share/tomcat8/webapps/syncope-enduser/WEB-INF/classes/` + +GUI installer:: Assuming that `$CONF_DIRECTORY` is the one selected from installer, the configuration files will be fist +searched in `$CONF_DIRECTORY`, then under the selected Java EE container's application classpath. + +Maven project:: Assuming that `$CONF_DIRECTORY` is the one passed among +<<deployment-directories,deployment directories>> at build time and that `$SOURCE` is the path where the Maven project +was generated, the configuration files will be fist searched in +`$CONF_DIRECTORY`, then under the selected Java EE container's application classpath, according to the content of + +* `$SOURCE/core/target/classes/` +* `$SOURCE/console/target/classes/` +* `$SOURCE/enduser/target/classes/` +**** + +include::dbms.adoc[] + +include::javaeecontainer.adoc[] + +include::highavailability.adoc[] + +include::domainsmanagement.adoc[] + +include::setadmincredentials.adoc[] + +include::configureconnidlocations.adoc[] + +include::importexport.adoc[] + +include::activitimodeler.adoc[] + +include::connectorbundles.adoc[] + +include::emailconfiguration.adoc[] + +include::configurationparameters.adoc[] http://git-wip-us.apache.org/repos/asf/syncope/blob/88602c0b/src/main/asciidoc/reference-guide/workingwithapachesyncope/workingwithapachesyncope.adoc ---------------------------------------------------------------------- diff --git a/src/main/asciidoc/reference-guide/workingwithapachesyncope/workingwithapachesyncope.adoc b/src/main/asciidoc/reference-guide/workingwithapachesyncope/workingwithapachesyncope.adoc index 488ec9e..7b6f69e 100644 --- a/src/main/asciidoc/reference-guide/workingwithapachesyncope/workingwithapachesyncope.adoc +++ b/src/main/asciidoc/reference-guide/workingwithapachesyncope/workingwithapachesyncope.adoc @@ -38,20 +38,4 @@ include::restfulservices.adoc[] include::customization.adoc[] -=== Deploying in production - -==== DBMS - -==== JavaEE Container - -==== High-Availability - -=== Runtime Management - -==== Configuration Parameters - -==== Domains Management - -==== HowTOs - -===== Changing admin password +include::systemadministration/systemadministration.adoc[]
