Search:     Advanced search

Configuring External Authentication Components for TestTrack TCM Test Runner

Article ID: 294  |  Last updated: 13 Jun, 2017

Note: TestTrack TCM Test Runner support was discontinued starting with the TestTrack Web 2013.1 release and the functionality is now included in the Helix ALM Web client.

External authentication systems can be integrated with the Seapine License Server to allow users to log in to products using their existing authentication system credentials. Web servers that host TestTrack TCM Test Runner require custom pages to support external authentication for logging in and entering electronic signatures. The following information includes the function calls required for these custom pages.

Note: After creating the external authentication pages, refer to the License Server Admin Guide for information about installing them and enabling external authentication.

TestTrack TCM Test Runner uses POST data to provide authentication credentials. Custom external authentication pages are required for logging in and entering electronic signatures.

Note: External authentication credentials must be base64 encoded to prevent data corruption when they are sent to the license server.

Web page filenames

Use the following filenames for web pages create for external authentication.

Tip: You may want to use the existing login and electronic signature files in the web server HTML files directory as templates. Open the files and save them with the following filenames before adding the required function calls.

  • Login page—Save as stageone_exauth.js and stageone_exauth.ttp
  • Electronic signature page—Save as eSig_exauth.js and eSig_exauth.ttp

Login pages

The custom authentication login .ttp snippet must provide a control with the externalCredentials ID and call the loginClick function in the JavaScript file when users log in.


Include the externalCredentials control in the stageone_exauth.ttp file.

<script type="text/javascript" src="stageone_exauth.js"></script>

<script type="text/javascript" src="base64.js"></script>

<form id="stageOne_form" class='loginForm'> 

   <input type="hidden" name="externalCredentials" value="">

Next, call the login function in the stageone_exauth.js file.

function prepareAndLogin() {

   var username = $('#txtUsername').val(),

      encoded = base64.encode(username);




Electronic signature pages

The custom electronic signature .ttp snippet must:

  • Be able to be inserted into a 300px by 300px ThickBox
  • Reference the eSig.js file using <script type="text/javascript" src="eSig.js></script>
  • Call eSign_OnOK when complete
  • Contain controls with the following IDs:
    • esig_rsn—Reason field
    • esig_useExAuth—Boolean value that specifies if external authentication can be used. Set to True to use external authentication.
    • esig_credentials—String value that contains base64-encoded credentials


Include the required controls in the eSign_exauth.ttp file.

<script type="text/javascript" src="eSig.js"></script>

<script type="text/javascript" src="base64.js"></script>

<script type="text/javascript" src="tareachk.js"></script>

<script type="text/javascript" src="eSig_exauth.js"></script>


   <div class='dlgbar' id='esig_header'>

      <div id='esig_dlgtitle' class='dlgbarText'>Signature Required</div>


   <div class='dlgcontent' id='esig_body'>

      <form id='esig_Form'>

         <input type="hidden" name="esig_useExAuth" value="0">

         <input type="hidden" name="esig_credentials" value="">

         <table width="100%">


               <tr id="esig_usrname_row">

               <td class='dlgLblTD'>

                  <label class="dlg_label requiredLbl" id="esig_usrname_lbl" for="esig_usrname">Username:</label>


               <td class='dlgLblContentTD'>

                  <input type="text" id="exauth_usrname" maxlength="32" onkeydown="esig_KeydownHandler(event)">




               <td class='dlgLblTD'>

                  <label class="dlg_label" id="esig_rsn_lbl" for="esig_rsn">Reason:</label>


               <td class='dlgLblContentTD'>

                  <textarea id="esig_rsn" onkeyup="limit(event,this,255);"></textarea>



               <tr id="esig_testimony_row" style="display:none">

               <td> </td>

               <td class='dlgLblContentTD'>

                  <span id="esig_testimony_data" ></span>







   <div id='esig_footer' class="dlgFooter">

      <div style="float:right;">

         <a href="javascript:void(0)" title="OK" class="button enabled" id="evt_OK" onclick="prepareAndSign();"><span class="btnText">OK</span></a>

         <a href="javascript:void(0)" title="Cancel" class="button enabled" id="evt_Cancel" onclick="closeDialog();"><span class="btnText">Cancel</span></a>




Next, call the eSig_OnOK function in the eSig_exauth.js file.

function prepareAndSign() {

   var username = $('#exauth_usrname').val(),

      encoded = base64.encode(username);





Article ID: 294  |   Last updated: 13 Jun, 2017
external authentication

Also listed in
folder Helix ALM (formerly TestTrack)

Prev   Next
Reassociating Global Users with a Different Active Directory...     Reload Error When Logging In to Helix ALM and License Server Web...