Exemple : JSON pour la première installation du serveur et une configuration complète

Cet exemple montre la plupart des paramètres d'entrée JSON pour la configuration du premier serveur.

Il effectue la configuration du serveur, la configuration du coffre d'ID, l'enregistrement des utilisateurs, la configuration Directory Assistance pour LDAP, les certificats TLS provenant d'une micro CA et la configuration de l'application, y compris la modification du document du nouveau serveur dans le répertoire Domino pour permettre la journalisation des transactions. Il crée également une nouvelle base de données de discussion, modifie la ACL de la base de données, ajoute plusieurs documents, active un agent et signe tous les éléments de conception avec l'ID de serveur.

{
	"autoConfigPreferences": {
		"deleteInputFileAfterProcessing": false,
		"startServerAfterConfiguration": true,
		"consoleLogOutput": {
			"show": "all",
			"pauseOnErrorSeconds": 30
		}
	},

	"serverSetup": {
		"server": {
			"type": "first",
			"name": "adminserver",
			"domainName": "ACME",
			"title": "ACME Administration Server",
			"password": null,
			"minPasswordLength": 8,
			"useExistingServerID": false,
			"additionalServerTasks": "http"
		},
		"network": {
			"hostName": "adminserver.acme.com",
			"enablePortEncryption": true,
			"enablePortCompression": true
		},
		"org": {
			"orgName": "sherlock",
			"useExistingCertifierID": false,
			"certifierPassword": "@Prompt:Org Certifier password",
			"orgUnitName": "GBR",
			"useExistingOrgUnitID": false,
			"orgUnitPassword": "passw0rd"
		},
		"admin": {
			"firstName": "Sherlock",
			"middleName": "Scott",
			"lastName": "Holmes",
			"useExistingAdminID": false,
			"password": "@File:/local/notesdata/pw.txt",
			"IDFilePath": "/local/notesdata/admin.id"
		},
		"notesINI": {
			"LOG_REPLICATION": "1",
			"LOG_SESSIONS": "1"
		},
		"security": {
			"ACL": {
				"prohibitAnonymousAccess": true,
				"addLocalDomainAdmins": true
			},
			"TLSSetup": {
				"method": "dominoMicroCA",
				"CADisplayName": "Demo CA",
				"CAOrgName": "Spacely",
				"CAKeyType": "ECDSA",
				"CAExpirationDays": 1096,
				"orgName": "Sprockets",
				"TLSKeyType": "RSA2048",
				"certExpirationDays": 120
			}
		},
		"directoryAssistance": {
			"databasePath": "da.nsf",
			"domainName": "Sprockets",
			"companyName": "Acme",
			"LDAP": {
				"hostName": "adserver.sprockets.acme.com",
				"vendor": "activeDirectory",
				"userDN": "CN=Admin,CN=Users,DC=sprockets,DC=com",
				"password": "Pa88w0rd",
				"baseSearchDN": "CN=Users,DC=sprockets,DC=com",
				"channelEncryption": "none",
				"port": 389,
				"acceptExpiredCertificates": true,
				"verifyRemoteServerCertificate": false,
				"timeout": 120,
				"maximumEntriesReturned": 200
			}
		},
		"autoRegister": {
			"count": 7,
			"IDPath": "/local/notesdata",
			"pattern": "baskerville#"
		},
		"registerUsers": {
			"defaults": {
				"saveIDToPersonDocument": true,
				"mailTemplatePath": "mail11.ntf",
				"enableFullTextIndex": true,
				"certificateExpirationMonths": 13
			},
			"users": [
				{
					"firstName": "Moe",
					"lastName": "Howard",
					"IDFilePath": "moe.id",
					"password": "passw1rd",
					"mailFilePath": "mail/moe.nsf"
				},
				{
					"firstName": "Larry",
					"lastName": "Fine",
					"IDFilePath": "larry.id",
					"password": "passw2rd",
					"saveIDToPersonDocument": false,
					"mailFilePath": "mail/larry.nsf",
					"mailTemplatePath": "mail12.ntf",
					"enableFullTextIndex": false,
					"certificateExpirationMonths": 24
				},
				{
					"firstName": "Curly",
					"lastName": "Howard",
					"IDFilePath": "curly.id",
					"password": "passw3rd",
					"saveIDToPersonDocument": true,
					"mailFilePath": "mail/curly.nsf",
					"mailTemplatePath": "mail11.ntf",
					"enableFullTextIndex": true,
					"certificateExpirationMonths": 120
				}
			]
		}
	},

	"IDVault": {
		"name": "O=VikingVault",
		"description": "Viking Vault",
		"IDFile": "VikingVault.id",
		"IDPassword": "@Env:ID_VAULT_PASSWORD",
		"path": "IBM_ID_VAULT/VikingVault.nsf",
		"passwordReset": {
			"helpText": "Call so and so for help resetting password"
		},
		"securitySettingsPolicy": {
			"name": "Viking Vault Security Settings Policy",
			"description": "Viking Vault Security Settings"
		},
		"masterPolicy": {
			"description": "Viking Vault Master Policy Description"
		}
	},

	"appConfiguration": {
		"databases": [
			{
				"action": "create",
				"filePath": "demodisc.nsf",
				"title": "Demo Discussion Database",
				"templatePath": "discussion12.ntf",
				"signUsingAdminp": true,

				"ACL": {
					"roles": [ "GrandPoobah", "WorkerBee", "Peon" ],
					"ACLEntries": [
						{
							"name": "Nancy Noaccess",
							"level": "noAccess",
							"type": "unspecified",
							"isPublicReader": true,
							"isPublicWriter": true
						},
						{
							"name": "Ronnie Reader",
							"level": "reader",
							"type": "serverGroup",
							"canCreatePersonalAgent": true,
							"canCreatePersonalFolder": true,
							"canCreateLSOrJavaAgent": true,
							"canReplicateOrCopyDocuments": true
						},
						{
							"name": "Annie Author",
							"level": "author",
							"canCreateDocuments": true,
							"canDeleteDocuments": true,
							"type": "mixedGroup"
						},
						{
							"name": "Ed Itor",
							"level": "editor",
							"type": "server",
							"canCreateSharedFolder": true
						},
						{
							"name": "Wolfpack",
							"level": "designer",
							"type": "personGroup"
						},
						{
							"name": "Sherlock Holmes/GBR/sherlock",
							"level": "manager",
							"type": "person",
							"canCreateDocuments": true,
							"canCreateLSOrJavaAgent": true,
							"canCreatePersonalAgent": true,
							"canCreatePersonalFolder": true,
							"canCreateSharedFolder": true,
							"canDeleteDocuments": true,
							"canReplicateOrCopyDocuments": true,
							"isPublicReader": true,
							"isPublicWriter": true,
							"roles": [ "GrandPoobah", "WorkerBee" ]
						}
					]
				},

				"documents": [
					{
						"action": "create",
						"items": {
							"Form": "Main Topic",
							"From": "CN=Sherlock Holmes/O=sherlock",
							"Subject": "This is a main topic"
						}
					},

					{
						"action": "create",
						"items": {
							"Form": "Main Topic",
							"From": "CN=Sherlock Holmes/O=sherlock",
							"Subject": "One of each supported item type, specified in simple format",
							"TestText": "Yellow",
							"TestTextList": [ "Red", "Green", "Blue" ],
							"TestNumber": 42,
							"TestNumberList": [ 20.21, 20.22, 20.23, 20.24 ]
						}
					},

					{
						"action": "create",
						"items": {
							"Form": "Main Topic",
							"From": "CN=Sherlock Holmes/O=sherlock",
							"Subject": "One of each supported item type, specified in canonical format",
							"TestText": {
								"type": "text",
								"value": "Red Sox"
							},
							"TestTextList": {
								"type": "text",
								"value": [ "Carl Yastrzemski/RedSox", "Pedro Martinez/RedSox", "David Ortiz/RedSox", "Sherlock Scott Holmes/sherlock" ],
								"names": true,
								"readers": true,
								"authors": true,
								"protected": true,
								"sign": true,
								"encrypt": true,
								"nonSummary": false
							},
							"TestNumber": {
								"type": "number",
								"value": 20.04
							},
							"TestNumberList": {
								"type": "number",
								"value": [ 2007, 2013, 2018 ],
								"names": false,
								"readers": false,
								"authors": false,
								"protected": false,
								"sign": false,
								"encrypt": false,
								"nonSummary": true
							},
							"TestDatetime": {
								"type": "datetime",
								"value": "20210728T162308,50-04"
							},
							"TestDatetimeList": {
								"type": "datetime",
								"value": [ "20210728T162308,50-04", "20210728T162308,50-0330", "20210728", "T162308,50" ]
							}
						}
					}
				],

				"agents": [
					{
						"name": "Send Newsletters",
						"action": [ "enable", "sign" ]
					}
				]
			},

			{
				"filePath": "names.nsf",
				"action": "update",
				"documents": [
					{
						"action": "update",
						"findDocument": {
							"Type": "Server",
							"ServerName": "CN=adminserver/OU=GBR/O=sherlock"
						},
						"computeWithForm": true,
						"items": {
							"TRANSLOG_AutoFixup": "",
							"TRANSLOG_MaxSize": 1000,
							"TRANSLOG_Path": "logdir",
							"TRANSLOG_Performance": "2",
							"TRANSLOG_Status": "1",
							"TRANSLOG_Style": "0",
							"TRANSLOG_UseAll": "0"
						}
					}
				]
			}
		]
	}
}