Using Electronic Signatures PDF
Using Electronic Signatures PDF
Version 5.0
August 2008
All rights reserved. No part of this publication may be reproduced in any form or by any electronic or mechanical
means, including photocopying and recording, without permission in writing from GE Fanuc Intelligent Platforms, Inc.
Notice
©2008 GE Fanuc Intelligent Platforms, Inc. All rights reserved. *Trademark of GE Fanuc Intelligent Platforms, Inc.
Microsoft® is a registered trademark of Microsoft Corporation, in the United States and/or other countries.
All other brands or names are property of their respective holders.
We want to hear from you. If you have comments, questions, or suggestions about our documentation, send them to the
following email address:
[email protected]
Table of Contents
About This Guide ..............................................................................................................................1
Reference Documents ..................................................................................................................1
Introduction .......................................................................................................................................3
What are Electronic Signatures? ..................................................................................................3
What Determines a Signed Action?..............................................................................................4
Tracking Electronic Signatures .....................................................................................................4
Features Included with Electronic Signatures ..............................................................................5
Understanding 21 CFR Part 11 ....................................................................................................5
Using GE Fanuc's 21 CFR Part 11 Services ............................................................................5
Getting Started..................................................................................................................................7
Overview: Implementing Electronic Signatures ............................................................................7
License and Key Checking ...........................................................................................................8
Configuring Security .....................................................................................................................8
Using Windows User Accounts ....................................................................................................8
Password Expiration Considerations ........................................................................................8
Account Lockout .......................................................................................................................9
Additional Considerations .........................................................................................................9
Tracking Unsuccessful Attempts to Access iFIX ......................................................................9
Using the Security Synchronizer ..............................................................................................9
Restricting Access from Remote Nodes .................................................................................10
Understanding How Security Affects Signing .............................................................................10
Using the iFIX Windows Screen Saver ......................................................................................12
Using Multiple Versions of iFIX in a Network .............................................................................12
Configuring Electronic Signatures ..................................................................................................13
Configuring Tags to Use Electronic Signatures ..........................................................................13
Configuring a Tag to Require an Electronic Signature ...........................................................13
Signature Type .......................................................................................................................13
Allow Continuous Use ............................................................................................................14
Exempt Alarm Acknowledgement...........................................................................................15
Understanding Unsigned Writes .............................................................................................15
Implications of Database Writes With Electronic Signature ...................................................16
Configuring Database Manager Spreadsheet Columns .............................................................16
Using Operator Limits With AO Tags .....................................................................................17
Disabling Acknowledge All on the Alarm Summary Object ....................................................18
iii
Using Comment Tables ..............................................................................................................18
Using Electronic Signatures at Run Time .......................................................................................21
Examining the Electronic Signature Dialog Box .........................................................................21
How the Electronic Signature Dialog Box Works .......................................................................25
How Do Data Links and Text Objects Behave at Run Time? ................................................25
How Do Data Entry Objects Behave at Run Time?................................................................25
Electronic Signature Examples...................................................................................................25
Example 1: Perform Only Signature .......................................................................................26
Example 2: Perform and Verify Signature ..............................................................................27
Example 3: Value Changes During Signing ...........................................................................28
Example 4: Selecting and Entering Comments When Signing ..............................................28
Example 5: Account is Disabled .............................................................................................29
Using the Alarm Summary Object at Run Time .........................................................................30
Acknowledging a Single Alarm ...................................................................................................31
Acknowledging a Page of Alarms ...............................................................................................31
Creating an Electronic Signature Audit Trail ..................................................................................33
Configuring the Alarm ODBC Service ........................................................................................33
Defining the Relational Database Columns ................................................................................34
Sending Signed Messages to a Relational Database ................................................................34
Example 1: Electronic Signature Not Required ......................................................................35
Example 2: Perform Only Signature Required .......................................................................35
Example 3: Perform and Verify Signature Required ..............................................................36
Sending Signed Messages to Other Alarm Destinations ...........................................................36
Example 1: Electronic Signature Not Required ......................................................................36
Example 2: Perform Only Signature Required .......................................................................37
Example 3: Perform and Verify Signature Required ..............................................................37
Using the Alarm Startup Queue Service ....................................................................................37
Using Electronic Signature in Scripts .............................................................................................39
Using the Electronic Signature Object ........................................................................................39
Using Global Subroutines in Scripts for Electronic Signature ....................................................39
Global Subroutines and Methods that Support Electronic Signature .........................................40
Global Subroutines Supported by Electronic Signature .........................................................40
Alarm Summary Object Methods That Support Electronic Signature ....................................40
Examples: Using the Electronic Signature Object to Acknowledge Alarms ...............................41
Acknowledging a List of Alarms..............................................................................................41
Acknowledging a Single Alarm ...............................................................................................42
Example: Using the Electronic Signature Object to Perform a Recipe Download .....................42
iv
Testing and Troubleshooting Electronic Signatures .......................................................................45
Disabling Signature for Testing Purposes ..................................................................................45
Message Sent to Alarm System .............................................................................................45
Using a Local Computer with the Guest Account Enabled ........................................................46
Changing Tag Values in the Database Manager Spreadsheet ..................................................46
Determining if the Node is Enabled for Signing..........................................................................46
Determining if a Signature is Required .......................................................................................47
Changing the Name of a Node ...................................................................................................48
v
About This Guide
Using Electronic Signatures is intended for application developers, process control engineers, and iFIX
users who want to incorporate electronic signatures and secure electronic records (security audit trails)
into their operations. This manual provides application developers with suggestions for integrating the
electronic signature feature in iFIX and instructs engineers and operators on how to sign for actions.
This manual also assists users, operators, and supervisors responsible for creating a secure, auditable
environment, especially those working with the 21 CFR Part 11 United States FDA government
regulation.
This manual assumes familiarity with iFIX software.
Reference Documents
For related information about subjects discussed in this manual, refer to the following manuals:
• Setting up the Environment
• Implementing Security
• Implementing Alarms and Messages
• Writing Scripts
1
Introduction
The Electronic Signature option enables you to create a more secure environment by requiring that
operators electronically "sign" for all database process changes resulting from data entry and alarm
acknowledgement. Electronic signatures uniquely identify the operator making the change, and can
optionally require the electronic signature of another person to verify the change. Operators no longer
need to use paper and pen to record and sign for their actions, and the possibility of losing or damaging
such records is essentially eliminated.
More detailed permanent records of operator actions are now written to and stored in a relational
database. You can query and report on these records, and then use this data to provide a comprehensive
audit trail detailing the history of your process. The electronic signature audit trail provides greater
versatility than paper trails. You can query and analyze data quickly and conveniently. Additionally,
record tracking through electronic signatures increases security for process changes and alarm
acknowledgements.
You can easily upgrade existing applications to take advantage of this functionality. None of your
pictures need to be modified. A simple change to the tags in the Database Manager allows you to
implement the Electronic Signature option. For more information, refer to Configuring Electronic
Signatures.
Electronic signature capability also helps address the needs of iFIX users who must conform to the 21
CFR Part 11 United States FDA government regulation. Using the feature by itself does not ensure
compliance; however, applications built using the Electronic Signature option can help provide the
necessary electronic verification needed to satisfy the requirements of this regulation. See
Understanding 21 CFR Part 11 for more information.
Perform and Verify Signature – the operator (the "performer") that initiated the action must
electronically sign for that action and another individual (the "verifier") must electronically
sign to validate the action. The action is not initiated until both signatures are entered.
NOTE: The person who performs an action cannot be the same person who verifies that action.
A signature consists of two components that uniquely identify the signer: a user name and a password.
3
Using Electronic Signatures
When the operator performs an action or verifies an action, a dialog box appears in which the operator
must enter these two identifiers:
User Name – name of the user performing the action or verifying the action.
Password – password for the user performing the action or verifying the action.
NOTE: If an operator's iFIX user account was established using Windows security, his iFIX user
name and password are the same as his Windows user name and password.
When an operator performs or verifies an action, he can optionally enter a comment related to that
action. The operator can select or change a pre-defined comment, or enter an original one.
For more information on using comments with electronic signatures, refer to Using Comment Tables.
4
Using Electronic Signatures
• Include the user names and full names of all operators and supervisors involved in signing and
verifying actions.
• Include all comments entered by the operators and supervisors involved in signing and
verifying actions.
• Are recorded in a relational database via the Alarm ODBC Service.
Refer to the Creating an Electronic Signature Audit Trail chapter for complete information about
configuring audit trail messages for electronic signature and examples of signed messages sent to a
relational database.
5
Using Electronic Signatures
Part 11 compliance. Using these services, you can reduce the time, effort, and expense of developing,
implementing, and maintaining a compliant solution to meet the regulation. These services include:
• Training
• Assessment
• Detailed Detection
• Maintenance
For more information, contact your GE Fanuc representative.
6
Getting Started
This chapter presents an overview of the tasks required to implement the Electronic Signature option.
It contains a brief description of how the option is licensed from GE Fanuc. Most importantly, this
chapter contains information and suggested strategies on implementing the security necessary to use
the Electronic Signature option. It includes the following sections:
• Overview: Implementing Electronic Signatures
• License and Key Checking
• Configuring Security
• Using Windows User Accounts
• Understanding How Security Affects Signing
• Using the iFIX Windows Screen Saver
• Using Multiple Versions of iFIX in a Network
1. Ensure that both the computer to be used to enter electronic signatures and the computer to be
used as the SCADA node are equipped with hardware keys that have the Electronic Signature
option enabled.
2. Establish the appropriate security configuration, which includes:
a. Enabling security and creating users and groups. This may be done using the iFIX
Security Configurator, or by using the iFIX Security Synchronizer. Refer to
Configuring Security and Using the Security Synchronizer for more information.
b. Assigning the appropriate security areas to those users and groups.
c. Assigning the appropriate application features to those users and groups. The
application features available for electronic signature are:
• Electronic Signature - Perform By – Grants the user the ability to perform
and sign for actions.
7
Using Electronic Signatures
Configuring Security
To use the Electronic Signature option, you must first enable iFIX security. Once security is enabled,
you must assign the appropriate application features to the users who will use this option. You can
perform both of these tasks in the iFIX Security Configuration program. If your application uses
security areas on tags, you will also need to make sure that these same users also have rights to those
security areas.
If you want to build an application with the goal of achieving compliance with the 21 CFR Part 11
regulation, GE Fanuc strongly encourages you to use Windows user accounts when using the
Electronic Signature option within iFIX. Windows user accounts allow for password expiration and
account lockout, which ensures a more secure signing environment. When your Windows password
expires, you can change it without leaving iFIX, either when you log in or when you enter an
electronic signature.
Refer to the Using iFIX With Windows Security chapter in the Implementing Security manual for
more information on using Windows user accounts.
8
Using Electronic Signatures
Windows security configuration. If you do not want operators to change passwords, you can enable the
User Cannot Change Password option in the Windows security configuration.
Account Lockout
The application developer can set an account lockout threshold, which prevents a user from accessing
the account after he enters the incorrect user name or password beyond the number of acceptable times.
When a user logs in or enters an electronic signature at run time, he receives an error if the account has
been disabled. The application developer can configure the message to display with the error, such as a
telephone number or the name of a contact person; otherwise, a general message displays.
Refer to the Configuring the Account Disabled Message in iFIX and Limiting the Number of Invalid
Login Attempts sections in the Implementing Security manual for information on setting the account
lockout threshold and configuring the account disabled message.
Additional Considerations
This section contains some suggested strategies for configuring a 21 CFR Part 11 environment.
Application developers may want to disable an operator's ability to change the system time by
removing the "Change the system time" user right from the appropriate user accounts in Windows
security. By doing so, you can prevent inaccurate timestamps from entering the audit trail.
Application developers who want to monitor Windows security events, such as logon and logoff,
should enable auditing in the Windows Local Security Policy. You can display these events in the
Windows Event Viewer's security log.
9
Using Electronic Signatures
Refer to the Using Security Synchronizer section of the Implementing Security manual for complete
information about configuring and using this tool.
10
Using Electronic Signatures
The following table shows the tags that represent the set point for each line. Each tag is configured
with a signature type of Perform and Verify and has been assigned the appropriate security area.
SETPT1 Line 1
SETPT2 Line 2
The following table shows which users can perform and verify for actions on each line.
The following table shows a set of operator actions and the result at run time.
George enters a new value for Action succeeds; the George and Laura have access to
SETPT1 and signs for it. Laura value is written to the the Line 1 Security Area; George
verifies this action. database. has access to the Perform By
application feature; Laura has
access to the Verify By application
feature.
Thomas enters a new value for Action succeeds; the Thomas and Peter have access to
SETPT2 and signs for it. Peter value is written to the the Line 2 Security Area; Thomas
verifies this action. database. has access to the Perform By
application feature; Peter has
access to the Verify By application
feature.
George enters a new value for Action fails. George does not have access to the
SETPT2 and attempts to sign for Line 2 Security Area.
it.
Peter enters a new value for Action fails. Thomas does not have access to
SETPT2 and signs for it. the Verify By Application feature.
Thomas attempts to verify it.
11
Using Electronic Signatures
Peter enters a new value for Action fails. The same person cannot perform
SETPT2 and signs for it. Peter and verify an action.
also attempts to verify it.
George enters a new value for Action succeeds. The George cannot exceed the operator
SETPT1 and signs for it. He new value 90 is limit of 80. Although he signed for
enters a value of 90. The tag's written to the tag, but 90, the tag accepts only up to 80.
EGU high limit is set to 100, and the tag clamps the
its operator high limit is set to value at 80.
80.
The error number will display as a literal, such as 1798. This message is likely caused by a signature-
related error, but the older version node does not support electronic signature functions. Consequently,
the message does not display properly.
If you use multiple versions of iFIX, you run the risk of acknowledging alarms configured for
electronic signature without capturing a signature for them.
If your intention is to create an application for use in a 21 CFR Part 11 environment, you must use a
4.0 (or greater) SCADA and 4.0 (or gereater) iClient node.
IMPORTANT: If you configure a tag to require electronic signature on a 4.0 SCADA node and then
acknowledge an alarm for that tag on a 2.6 or earlier iClient node, the Electronic Signature dialog
box will not appear, and the operator will be able to acknowledge the alarm without entering a
signature. It is strongly recommended that you use only 4.0 SCADA and iClient nodes when using
electronic signature.
12
Configuring Electronic Signatures
This chapter introduces the tasks the application developer must complete to enable electronic
signatures in iFIX. The topics covered in this chapter include:
• Configuring tags to use the Electronic Signature option.
• Disabling AcknowledgeAll on the Alarm Summary object.
• Creating comment tables.
Signature Type
The following fields are available for the Signature Type option:
None – Do not require signature for this tag. This option is the default setting.
Perform Only – Require only the signature of the operator performing the action.
13
Using Electronic Signatures
Perform and Verify – Require the signature of the operator performing the action and the
signature of another user to verify the action.
For example, tag AO_3 is configured to require a Perform Only signature, as indicated in the following
figure.
14
Using Electronic Signatures
only to the person performing an action and does not affect the person verifying an action.
A continuous use period ends when the iFIX Screen Saver activates due to a period of keyboard or
mouse inactivity, or when another user enters his user name in the Perform By section of the Electronic
Signature dialog box. The application developer configures the duration of the inactive period and
must also enable the Reset Electronic Signature Continuous User option for the Screen Saver.
When the continuous use period ends, the Performed By user name is cleared in the Electronic
Signature dialog box. When a valid signature is entered, another continuous use period begins.
NOTE: The name of the continuous user changes and the continuous use period restarts each time a
different user enters a valid signature.
You can configure a tag to accept or reject an unsigned write. In a secure signing environment, it is
typical to reject unsigned writes; by default, the Reject Unsigned Writes option is selected.
The following fields are available in the Unsigned Writes section:
Accept – the tag accepts the write from an unsigned source.
Log – sends a message to the alarm system, indicating that the tag accepted an unsigned write.
This field is available only when the Accept option is selected.
Reject – the tag rejects a write from an unsigned source in the same manner a write is rejected for
a security violation. A message is sent to the alarm system to flag the violation. By default,
this option is selected.
15
Using Electronic Signatures
If a user changes a field of a tag that requires electronic signature directly in the Database Manager
spreadsheet, that change is considered an unsigned write. Writes from the Database Manager tag
configuration dialogs and SAC are always accepted, regardless of how you configure unsigned writes.
Refer to the Changing Tag Values in the Database Manager Spreadsheet section in the Testing and
Troubleshooting Electronic Signature chapter for details.
Values written from signature-disabled nodes to tags that require signature may be rejected. If an
application has mixed nodes (some with the Electronic Signature option enabled, some with the option
disabled), the application developer can restrict access to certain remote nodes to disallow writes from
the disabled nodes, if necessary. For more information about disabled nodes, refer to Restricting
Access from Remote Nodes. For more information about mixed nodes, refer to Using Multiple
Versions of iFIX in a Network.
If the tag is configured to reject unsigned writes, the write is rejected and this type of message is
written to the alarm system:
UNSIGNED WRITE REJECTED: <tag name> cannot be written without electronic
signature by <logged-in user name>
If the tag is configured to accept unsigned writes and to log the event, the write is accepted, and this
type of message is written to the alarm system:
UNSIGNED WRITE ACCEPTED: <tag name> was written without electronic
signature by <logged-in user name>
If the tag is configured to accept unsigned writes, but not to log the event, the write is accepted, and
this type of message is written to the alarm system:
<tag name> set to <new value> by <node>::<logged-in user name>
16
Using Electronic Signatures
PERFONLY – The tag requires only the signature of the operator performing the action.
PERVERI – The tag requires the signature of the operator performing the action and the
signature of the person verifying the action.
eSig Cont Use – Indicates if allow continuous use is enabled for this tag.
eSig Exempt Ack – Indicates if signing is required for alarm acknowledgement and manual alarm
deletion on this tag.
eSig Unsigned Writes – Indicates if unsigned writes are accepted or rejected by this tag. When
you add this column, the following values can display:
LOG – If this tag is configured to accept unsigned writes, a message is sent to the relational
database whenever an unsigned write is accepted.
REJECT – This tag is configured to reject unsigned writes. A message is sent to the
relational database whenever an unsigned write is rejected.
For more information on changing database columns, refer to the Locating and Displaying Data
chapter of the Building a SCADA System manual.
To define limits directly in the picture using the Data Entry Expert:
1. Click the Data Entry Expert button to open the Data Entry Expert dialog box.
2. In the Data Source field, define your data source.
3. Clear the Fetch Limits from the Data Source check box. If you enable this field, the limits are
derived from the engineering unit limits defined for the data source, and the limits you define
here are overridden.
4. In the Low Limit and High Limit text boxes, enter preferred low and high limits.
NOTE: These limits are checked before the limits on the tag are checked.
17
Using Electronic Signatures
Operators cannot sign for alarm acknowledgements when using AcknowledgeAll through the Alarm
Summary object or through a script.
1. In the iFIX WorkSpace, in Ribbon view, on the Home tab, in the WorkSpace group, click
Settings, then select User Preferences.
- Or -
In Classic View, on the WorkSpace menu, click User Preferences.
2. Select the General tab.
3. Optionally, rename the table(s) by entering text in the Perform Comments Table Name field
and the Verify Comments Table Name fields, respectively.
4. Click the corresponding button, either the Create Perform Comments Sample Table button or
the Create Verify Comments Sample Table button, as appropriate. A message box appears,
confirming that the comment table was successfully created. If you do not rename the tables
in step 3, these default names are assigned to the tables:
• PerformESigComments
• VerifyESigComments
The comment tables you create are listed in the System Tree of the WorkSpace, in the
Globals/User folder, as indicated in this graphic:
18
Using Electronic Signatures
5. Click OK in the WorkSpace message box to save the changes in the user.fxg file.
Once you create a comment table, you can fill it with comments you want to use in your application.
1. Right-click the comment table, such as PerformESigComments, in the System Tree, and
select Custom. The Custom Lookup Table dialog box appears.
2. In the Value column, enter a numeric value. This value can be up to seven digits long.
Sequence the numbers in this column in relative, ascending order. This value is used as an
index for this comment and is not otherwise associated with the comment.
3. In the String field, enter the comment. The comment can be up to 168 characters long. Keep
in mind that this comment can be combined with a free-text comment in the Electronic
Signature dialog box, so you may want to conserve the length of this comment.
1. Open the Properties window using a standard method, such as right-clicking a comment table
in the System Tree and selecting the Property Window... option.
2. Access the System Tree.
3. Select the comment table you want to rename in the System Tree.
4. Return to the Properties window, select the Name property, and enter the new table name.
5. Close the Property window.
19
Using Electronic Signatures at Run Time
This chapter describes how Electronic Signatures are used in the run-time environment, and describes
the tasks required of an operator when electronic signature is required. It includes the following
sections:
• Examining the Electronic Signature Dialog Box
• How the Electronic Signature Dialog Box Works
• Electronic Signature Examples
• Using the Alarm Summary Object at Run Time
• Acknowledging a Single Alarm
• Acknowledging a Page of Alarms
21
Using Electronic Signatures
If the tag associated with the action requires Perform and Verify signatures, the Electronic Signature
dialog box displays the Performed By and Verified By sections, as shown in the following figure.
When a user signs in the Perform By section, the Verify By section is always dimmed; when a user
signs in the Verify By section, the Perform By section is always dimmed.
22
Using Electronic Signatures
The following information explains each section of the Electronic Signature dialog box:
Description Area – describes the action to be signed for. This area is located at the top of the
dialog box. If the action is a data entry, the description area includes:
If the action is a single alarm acknowledgement, the description area includes the node and
name of the tag being acknowledged, and the tag's descriptor.
If the action is multiple alarm acknowledgement, the description area includes the nodes and
23
Using Electronic Signatures
names of all the tags being acknowledged, and each tag's descriptor.
Performed By – section of the Electronic Signature dialog box that displays when the tag is
configured for electronic signature. If the tag is configured for Perform By signature, only
this section of the Electronic Signature dialog box displays. If the tag is configured for
Perform By and Verify By, both the Performed By and the Verified By sections of the
Electronic Signature dialog box display.
If the tag is configured for Perform By signature only, once the operator enters his user name
and password, and then clicks OK, the signature is validated, the value is written to the
database, and the Electronic Signature dialog box closes.
If the tag is configured for Perform and Verify signature, once the operator enters his user
name and password, and then clicks OK, the Performed By section of the Electronic Signature
dialog box dims and the Verified By section activates.
User Name - name of the user performing the action or verifying the action. The name you supply
here is your iFIX user name.
If the tag associated with the action allows continuous use, the user name of the continuous
user automatically displays in this field in the Performed By section. The name of the
continuous user is recorded from the last valid signature. You can enter a different name in
this field. Refer to the Allow Continuous Use section for more information.
Password - password for the user performing the action or verifying the action. The password you
supply here is the password assigned to your Windows or iFIX user account.
Verified By – section of the Electronic Signature dialog box that displays when the tag is
configured with a signature type of Perform and Verify. After the Performed By signature
is validated, the Verified By section activates and the Performed By section dims. Once the
person who verifies the signature enters his user name and password in the Verified By
section and then clicks OK, the signature is validated, the value is written to the database,
and the Electronic Signature dialog box closes.
Comment – field available in both the Performed By and Verified By sections in which the
operator or the person verifying the action can optionally enter comments. You can select
or change a pre-defined comment from the drop-down list, or enter an original one in the
text box.
When the operator selects a pre-defined comment, it displays in the Comment field. In
addition to entering text in the Comment field, you can also change the text of the predefined
comment as it displays in the Comment field. Your changes do not alter the text of the
predefined comment stored in the comment table. You can enter up to 168 characters in the
Comment field.
If a comment table cannot be read for any reason, or if the application developer did not
configure a comment table, the Predefined Comments drop-down list is dimmed.
24
Using Electronic Signatures
Slider Entry – When the operator moves the slider bar and clicks OK or enters a value in the edit
box and clicks OK, the Electronic Signature dialog box appears.
NOTE: When using the slider bar with electronic signature, you cannot also use the Write
Continuously option. When the application developer chooses the Slider Entry option, he
should clear the Write Continuously check box in the Data Entry Expert dialog box. If the
Write Continuously option is left enabled, electronic signature is ignored at run time.
PushButton Entry – When the operator clicks a toggle button in the PushButton Entry dialog
box, the Electronic Signature dialog box appears.
Ramp Entry – Each time the operator clicks one of the four ramp buttons, the Electronic
Signature dialog box appears.
25
Using Electronic Signatures
• Operator George Clark performs an action that he must sign for, and his supervisor, Thomas
White, verifies that action. Refer to Example 2: Perform and Verify Signature.
• Operator George Clark performs an action that requires a signature, but the value changes
before he completes the signature. Refer to Example 3: Value Changes During Signing.
• Operator George Clark performs an action and his supervisor, Thomas White, verifies that
action. Each signer selects a predefined comment and enters an additional comment. Refer to
Example 4: Selecting and Entering Comments When Signing.
• Operator George Clark performs an action that requires a signature, but when he tries to sign
for his action, he enters his password incorrectly too many times, and his account becomes
disabled. Refer to Example 5: Account is Disabled.
26
Using Electronic Signatures
George signs for this action by entering his user name and password, and then clicks OK. Because the
tag George signed for does not require a user to verify the action, his signature is validated, the value is
written to the tag, the Electronic Signature dialog box closes, and the updated value displays in the data
link. A message is written to the audit trail that details George's action.
27
Using Electronic Signatures
When George signs for the action by entering his user name and password, and then clicks OK, the
current value of the tag is double-checked. If the original value (10) differs from the real-time value of
that tag, George's value is not written, and an informational message displays. This message indicates
that the original value of the tag changed while George was signing for the action:
Error Number: -2147210972 (80042924)
The current value has changed. Unable to perform this signed write.
28
Using Electronic Signatures
signatures. Predefined comments are available to both signers, as indicated by the Predefined
Comments fields. George selects a predefined comment and enters additional text in the Comment
field. George signs and clicks OK.
When Thomas White verifies this action, he also selects a predefined comment and adds more text in
the Comment text field, as illustrated in the following figure.
George clicks the OK button and tries again. The bad password message displays for each subsequent
incorrect attempt until he reaches the account lockout threshold, which, in this example, is set at three.
29
Using Electronic Signatures
The application developer can change the text of the account disabled message. Refer to the Account
Lockout section of the Getting Started chapter for more information.
Some tags require no signature; some require The Performed By section of the
Perform Only signature. Electronic Signature dialog box appears.
Some tags require no signature; some tags require The Performed By and Verified By
Perform Only signature; some tags require Perform sections of the Electronic Signature dialog
and Verify signature. box appears.
30
Using Electronic Signatures
31
Using Electronic Signatures
The Electronic Signature dialog box for alarm acknowledgement is identical in layout and function as
the dialog box for data entry. However, it contains a list of all alarms to be acknowledged in a
scrollable area, as indicated in the following figure. The information displayed here includes the node
name, tag name, and description of each tag whose alarms are being acknowledged.
When the operator acknowledges a page of alarms, a separate message is sent to the audit trail for each
alarm acknowledged. Refer to the Electronic Signature Signing Requirements table for a list of
electronic signature signing requirements.
32
Creating an Electronic Signature Audit
Trail
The audit trail is a key component in a 21 CFR Part 11 compliant system, but it can also be useful in
many different applications. The electronic signature audit trail contains a computer-generated, time-
stamped record of each electronic signature. Each record clearly identifies all pertinent information
about the person who entered the signature, such as the person's name, the time he entered the
signature, and why he entered the signature.
iFIX stores the electronic signature audit trail in a relational database. A relational database provides
you with an open, secure storage solution you can query using established methods to produce reports
and perform analysis and review. The relational database must be ODBC-compliant, such as
Microsoft's SQL Server or Oracle.
NOTE: Microsoft Access is not supported in the electronic signature environment because it is not
secure enough to ensure tamper-resistance.
Each time an operator signs for an action, a message is sent to the relational database containing all the
elements of the signature, including:
• User name and full name of the person that performed the action.
• User name and full name of the person that verified the action.
• Description of the action.
• Time the action occurred.
• Name of the iFIX node where the user signed.
• User name and full name of the person logged in to the iFIX security system when the user
signed.
• Optional comments entered by the performer and verifier.
Additionally, fields such as the name of the iFIX tag and the name of the SCADA node are included.
You can also configure up to four user-defined fields that can be read from the tag and incorporated
into the message.
33
Using Electronic Signatures
Other iFIX alarm destinations, such as the Alarm History and Alarm File, also receive electronic
signature messages. Due to space constraints, these destinations do not display every part of the
signature, but they do show who performed the action, who verified the action, a description of the
action and the time the action took place. These destinations do not represent the electronic signature
audit trail, but can be used to quickly check on recent actions.
TIP: For the most reliable performance, run the Alarm ODBC Service on the SCADA nodes in your
application, and not on the iClients.
Refer to the Implementing Alarms and Messages manual for more information on the Alarm ODBC
Service and other alarm issues.
Operator Login User Name – user name of the person currently logged in to iFIX.
Operator Login Full Name – full name of the person currently logged in to iFIX.
Performed By User Name – user name of the person performing the action.
Performed By Full Name – full name of the person performing the action.
Verified By User Name – user name of the person verifying the action.
Verified By Full Name – full name of the person verifying the action.
Message ID – Globally Unique Identifier (GUID) that uniquely identifies each message.
For information on the other columns in the Alarm ODBC service, refer to the Implementing Alarms
and Messages manual.
For examples of signed operation actions, refer to Electronic Signature Examples.
34
Using Electronic Signatures
• Fully-qualified name of the data source being changed (for data entry actions only).
• Name of the tag whose alarm is acknowledged or deleted (for alarm acknowledgement and
deletion actions only).
• Original value (for data entry actions only).
• New value (for data entry actions only).
• Operator's name.
• Optionally, the operator's comments.
• Name of the verifier and any related comments, if the tag requires verification.
When electronic signature is not required for the tag, the message sent to the relational database is the
standard iFIX operator message containing the timestamp for the action, the user name of the logged-in
user, and the new value.
Signed operator messages are sent to alarm areas configured for operator messages. Therefore,
operator messages do not necessarily get sent to the same alarm area that the corresponding tag
belongs to. Refer to the Configuring Alarms section of the Setting Up the Environment manual for
more information.
In this message, SJONES represents the user name of the currently logged-in iFIX user.
In this message, JHARPER represents the user name, and James Harper, Sr. Operator is the full name
of the operator that changed the analog setpoint value. Both the original value, 50.00, and the new
35
Using Electronic Signatures
In this message, JHARPER is the user name, and James Harper, Sr. Operator is the full name of the
operator that changed the analog setpoint value. LWALL is the user name, and Lisa Wall, Shift
Supervisor, is the full name of the supervisor that verified this action. Both the original value, 50.00,
and the new value, 60.00, are clearly indicated.
36
Using Electronic Signatures
37
Using Electronic Signature in Scripts
This chapter provides examples of using electronic signature in scripts with the Electronic Signature
object and with global subroutines and methods that support electronic signature. It includes the
following sections:
• Using the Electronic Signature Object
• Using Global Subroutines in Scripts for Electronic Signature
• Global Subroutines and Methods that Support Electronic Signature
• Examples: Using the Electronic Signature Object to Acknowledge Alarms
• Example: Using the Electronic Signature Object to Perform a Recipe Download
For more information on using the Electronic Signature object, refer to examples provided later in this
chapter and to the iFIX Automation Interfaces Help file.
39
Using Electronic Signatures
IMPORTANT: If you do not use a global subroutine that supports electronic signature in your script,
you must use the Electronic Signature object within the script to invoke the Electronic Signature dialog
box.
40
Using Electronic Signatures
AckAlarmPageEx Yes.
AckAllAlarms No.
41
Using Electronic Signatures
If bSigRequired Then
ESig.GetSignatureAndWriteValue 4, Value
Else
'Acknowledge the alarms without signature
End If
Else
'Acknowledge the alarms without signature or warn node is not enabled for
electronic signatures
End If
Value = 0
Else
'Acknowledge the alarm without signature or warn node is not enabled for
electronic signatures
End If
42
Using Electronic Signatures
' Check if the logged-in user has the privilege to download recipes
CanDownload = System.FixCheckApplicationAccess(52)
If CanDownload = 1 Then
Set ESignatureObject = CreateObject("ElectronicSignature.ESignature")
If bValidSig Then
43
Using Electronic Signatures
Exit Sub
RecipeDownloadError:
MsgBox (Err.Description)
End Sub
44
Testing and Troubleshooting Electronic
Signatures
This chapter contains information and suggestions about how to test and troubleshoot the Electronic
Signature option. The following topics are described:
• Disabling Signature for Testing Purposes
• Using a Local Computer with the Guest Account Enabled
• Changing Tag Values in the Database Manager Spreadsheet
• Determining if the Node is Enabled for Signing
• Determining if a Signature is Required
• Changing the Name of a Node
45
Using Electronic Signatures
NOTE: Modifications to a tag made from the tag's configuration dialog box are always allowed.
46
Using Electronic Signatures
If the node is not enabled for signing, the action is executed without prompting for electronic signature.
47
Using Electronic Signatures
48
Index
2 configuring database tags for electronic
signature ...................................................... 13
21 CFR Part 11
configuring security for electronic signature ..... 8
audit trail....................................................... 33
continuous use, definition ................................ 14
understanding ................................................. 5
continuous use with electronic signature ......... 14
A
creating an audit trail for electronic
accepting and rejecting unsigned writes ...........15
signature ...................................................... 33
account lockout with electronic signature ..........9
creating comment tables for electronic
Acknowledge All alarms .................................. 18 signature ...................................................... 18
acknowledging alarms with electronic D
signature, all alarms ...................................... 18
Data Entry Expert, defining operator limits..... 17
adding comments to an electronic signature .......3
database tags, configuring for electronic
Alarm ODBC signature ...................................................... 13
changes for electronic signature ................... 33 defining relational database columns for
electronic signature ...................................... 34
used with electronic signature ...................... 33
disabled accounts with electronic signature....... 9
Alarm Startup Queue Service, preventing
duplicate messages in the audit trail .............37 E
Alarm Summary object, acknowledging electronic signature
alarms with electronic signature ................... 30
account lockout .............................................. 9
audit trail
acknowledging a page of alarms .................. 31
configuring for electronic signature.............. 33
acknowledging a single alarm ..................... 31
preventing duplicate messages ..................... 37
acknowledging multiple alarms ................... 30
B
adding comments ........................................... 3
behavior of unsigned writes.............................. 16
audit trail........................................................ 3
C
audit trail records ........................................... 4
changing fields in database manager with
behavior of data entry objects at run time .... 25
electronic signature....................................... 46
behavior of data links and text objects at
comment table
run time .................................................... 25
configuring ................................................... 18
calling methods in the IESignature
creating ......................................................... 18 interface ................................................... 39
deleting ......................................................... 18 changes to the Alarm ODBC Service .......... 33
renaming ....................................................... 18 changing fields in database manager ........... 46
using ............................................................. 18 changing name of the iClient node .............. 48
configuring database columns for electronic comment tables ............................................ 18
signature ....................................................... 16
configuring a comment table ....................... 18
49
Using Electronic Signatures
50
Using Electronic Signatures
51