# Document Properties: Security

The Security properties page allows you to set various options for securing the content of a document.

- Permissions
- Pass Phrase: Passwords and Document Registration Codes
- Document Expiration

## Permissions

iSiloX adds indicators to the converted document so that conforming applications that utilize the document can determine what types of actions to allow on the document. Note that not all actions can be prevented on all platforms.

Action | Description
--- | ---
Copy/Beam | Uncheck the Copy/Beam checkbox to disallow copying or beaming of the document. Check the checkbox to allow the operation.
Copy to clipboard | Uncheck the Copy to clipboard checkbox to disallow copying of content from the document to the system clipboard. Check the checkbox to allow the operation so that content can be copied and pasted elsewhere.
Modification | Uncheck the Modification checkbox to disallow any modification to the document. This includes modifications of the document's global and document bookmarks. Check the checkbox to allow the operation so that the document can be modified, for example, to add document bookmarks.
Conversion | Uncheck the Conversion checkbox to disallow conversion of the document to other formats. This includes saving the document content to a text file. Check the checkbox to allow the document to be converted to other formats.
Printing | Uncheck the Printing checkbox to disallow printing of the document. Check the checkbox to allow printing of the document.

## Pass Phrase: Passwords and Document Registration Codes

You can prevent access to the content of the document using either a password, a registration code, or both.

### Password

Check the Require a password checkbox and enter a password in the adjacent edit field to protect the document with a password. In iSilo™, the user is asked to enter the password each time the document is opened. If the user enters an incorrect password, iSilo™ refuses to open the document. Only if the users enters the password correctly does the document open successfully.

### Registration Code

Check the Require a registration code checkbox and enter an identifier for the document into the Document ID field to protect the document with a registration code. To create a registration code for the document, click the Generate Registration Code button.

#### The Document ID

The document ID is used to generate registration codes that work only with that document. Two documents with different document IDs require different registration codes, so in order to prevent registration codes from other documents working for your document, you will want to use a unique document ID. Furthermore, you will want to keep the document ID private unless you want others to be able to generate registration codes for your document. A document ID can consist of digits, the underscore character, and uppercase or lowercase letters. Spaces and other characters are not allowed.

In iSilo™, when the user opens a document protected with a registration code, iSilo™ asks the user for the registration code. If the user enters a valid registration code, iSilo™ remembers the registration code so that the next time the user opens the document, the user does not need to re-enter the registration code. However, if the user installs an updated version of the document that has a different document ID, the user will be asked for the registration code for the document since the previous registration code was not keyed to the document ID of the updated document.

#### Generating Document Registration Codes

When you click the Generate Registration Code button from the Security properties page, you get the Generate Document Registration Code dialog. Using this dialog, you can generate different types of registration codes for the document.

Registration Code Type | Description
--- | ---
Serialized | A serialized registration code is keyed only to the document ID. For a given document ID, you can generate up to 16 million unique registration codes for the document. To specify that you want to generate a serialized registration code, under Validation Type select Serial number and enter a number from one to 16 million in the adjacent edit field, depending on which of the 16 million registration codes you want to generate.
User ID | A user ID registration code is keyed to both the document ID and the user ID of the reading device. This restricts access to the document to only devices with the given user ID. In iSilo™ 3.2 and later, you can determine the user ID of the device using the System Information dialog, usually available in the Tools or Help menu, depending on the platform. The user ID will most likely be dependent on the user or owner name of the device. This means that two different devices with the same user or owner name may have the same user ID. However, most people will have different user IDs since most people base the user or owner names of their devices on their own names. To specify that you want to generate a user ID registration code, under Validation Type select User ID and enter a user ID in the adjacent edit field.
Device ID | A device ID registration code is keyed to both the document ID and the device ID of the reading device. This restricts access to the document to only devices with the given device ID. In iSilo™ 5.18 and later, you can determine the device ID of the device using the System Information dialog, usually available in the Tools or Help menu, depending on the platform. Note that a device ID is not available on all platforms and not all devices of a given platform have a device ID. For a given platform the device ID will generally be dependent on a unique identifier from the device, such as the serial number or IMEI value of the device. This means that you can generally depend on two different devices having a different device ID. To specify that you want to generate a device ID registration code, under Validation Type select Device ID and enter a device ID in the adjacent edit field.
Expiration only | An expiration only registration code is keyed to only the document ID but will not work on or after a given expiration date. In iSilo™, if the user attempts to open a document with a registration code that has an expiration date and the current date is on or after the expiration date, iSilo™ does not allow opening of the document and reports to the user that the document has expired. To specify that you want to generate an expiration only registration code, under Validation Type select Expiration only, then check the Expiration date checkbox and select the expiration month, day, and year.
Serialized with expiration | A serialized with expiration registration code is a serialized registration code with an expiration date. To specify that you want to generate a serialized with expiration registration code, under Validation Type select Serialized, then check the Expiration date checkbox and select the expiration month, day, and year.
User ID with expiration | A user ID with expiration registration code is a user ID registration code with an expiration date. To specify that you want to generate a user ID with expiration registration code, under Validation Type select User ID, then check the Expiration date checkbox and select the expiration month, day, and year.
Device ID with expiration | A device ID with expiration registration code is a device ID registration code with an expiration date. To specify that you want to generate a device ID with expiration registration code, under Validation Type select Device ID, then check the Expiration date checkbox and select the expiration month, day, and year.

After specifying the type of registration code you want to generate as described in the above table, click Generate or Generate Extended Code depending on the type of registration code you want to generate. This produces the registration code in the edit field, which you can then copy for use.

The Generate button generates a 16-character registration code, while the Generate Extended Code button generates an 18-character extended registration code. Support for 18-character extended registration codes is supported starting with iSilo™ version 5.18. Support for extended registration codes was added to reduce confusion between document registration codes and the 16-character registration code used to register the iSilo™ application.

### Notes on Passwords and Registration Codes

- If a document requires a password, each and every time the document is opened in iSilo™, the user is asked to enter the password.
- If a document requires a registration code, iSilo™ asks the user for the registration code only once, assuming that the user enters a valid registration code.
- A document can be protected with both a password and a registration code. One possible use of this is to restrict access to a document so that it can only be read on a given device and only if the user knows the password. To do this, generate a registration code keyed to the user ID of the device and require a password for the document. Since you can not key a password to a user ID, you require the registration code to do this. But since iSilo™ remembers a valid registration code, the password is needed to prevent casual opening of the document by just anyone.
- In iSilo™ 4.3 and later, you can add a custom set of characters before the generated registration code when entering it. Versions prior to version 4.3 require exactly the 16 generated characters, no more and no less, with the hyphens being optional. The new allowance gives document publishers the ability to prefix their registration codes with a custom set of characters that may help in managing distributed registration codes. iSilo™ 4.3 and later will only validate the last 16 alphanumeric characters and ignore anything that comes before.
- iSilo™ 5.18 added a device ID field to the System Information dialog on all platforms except for the Palm OS® platform. On platforms for which a device ID field is present in the System Information dialog, it may still be the case that the device does not provide a device ID. This can possibly happen on older devices that do not provide a unique identifier. The consequence is that it is not possible to generate a registration code keyed to a device ID for such devices.

### Password and Registration Code Messages

You can specify custom messages that are presented to the user when the user is asked to enter a password or registration code for the document. See Document Properties: Messages for more information.

## Document Expiration

A document can be set to expire on a given date. Possible uses of setting an expiration date include beta or trial versions of documents. In iSilo™, if the user attempts to open a document that has an expiration date and the current date is on or after the expiration date, iSilo™ does not allow opening of the document and reports to the user that the document has expired.

To set an expiration date for the document, check the Expiration date checkbox and select the expiration month, day, and year.

Note that if a document has an expiration date and also requires a registration code that has an expiration date, the earlier expiration date takes precedence.