# VeevaID for Study Training

<a href="/en/gr/23050/">VeevaID</a> is an identity provider for certain Vault applications which allows end-users to access Vaults on multiple sponsor domains with a single user ID and password.

When configured in Study Training, clinical research sites can manually or automatically invite Learners to <a class="external-link " href="https://id.veeva.com" target="_blank" rel="noopener">self-register<i class="fa fa-external-link" aria-hidden="true"></i></a> for a VeevaID, allowing them to access multiple sponsor Vaults to complete training tasks.



<div class="note-border alert-info">
  <div class="alert alert-info" role="alert">
    <div><i class="far fa-info-circle"></i></div>
    <div class="alert-text">
      <p><strong>Note</strong>: This article discusses the use of <a href="/en/gr/548356/">VeevaID</a> for managing Learners in the Veeva Study Training application only. VeevaID is not supported for Veeva Training.</p>
    </div>
  </div>
</div>



## How Study Training Uses VeevaIDs

By default, the <a href="/en/gr/54469208/">Study Training-Clinical Operations Connection</a> manages Learners as follows:

  * When a Study Manager creates a Clinical Operations _Person_ record, the Study Training-Clinical Operations Connection automatically creates a corresponding _Person_ record in Study Training.
  * When the Clinical Operations _Person_ record is added to a _Study_, the connection associates the Study Training _Person_ record to the required _Learner Role_ (`study_learner_role__v`) records.
  * The Study Training Vault Admin creates the Learner's _User_ record and manually associates it with the new _Person_ record, or, when enabled, this step is performed automatically via the <a href="/en/gr/54469208/#auto-creating-domain-users">_Auto-Manage Persons_ setting</a>.

With [additional configuration][3], Vault references the incoming Clinical Operations _Study Person_ record to determine whether the Learner is eligible for VeevaID. When this record's _Person Type_ is set to "Site" or "Investigator", Learners who are not already registered for VeevaID receive an invitation to self-register when the _VeevaID Invitation Management_ job runs.

The job also maintains relevant records, including the Learner's _Person_ record, with their _VeevaID Registration Status_, indicating the invitation and registration statuses based on the related [_VeevaID Registration_ record][1].

The below diagram shows the end-to-end flow of _User_, _Person_, and _Study Learner Role_ data across Study Training and Clinical Operations Vaults via the connection. If the connection is inactive, Vault Admins can still manually invite Learners using the _Invite to VeevaID_ user action on the _Person_ record.

<a href="https://platform.veevavault.help/assets/images/veevaid-for-study-training-flow.png" data-lightbox="VeevaID for Study Training" data-title="" data-alt="VeevaID for Study Training flow">
  <img class="docimage" src="https://platform.veevavault.help/assets/images/veevaid-for-study-training-flow.png" alt="VeevaID for Study Training flow" style="width: 50%;"  />
</a>

### How Vault Assigns Credentials & Permissions

When Vault looks to associate a Learner's _User_ information with their Study Training _Person_ record, it first determines credentials based on their _User_ record in Clinical Operations. If there is no such record, Vault creates a new Study Training _User_ record when the Learner completes their VeevaID registration.

In either case, Vault populates the below Study Training _User_ record fields as follows:

* **License Type**: External User
* **Security Policy**: VeevaID
* **Security Profile**: Training User (containing the Learner User Actions permission set)

If your Vault's VeevaID Security Policy is configured for <a href="/en/gr/13975/">single sign-on</a> (SSO), Vault also populates the **Federated ID** from the referenced _User_ record.

To grant further permissions, create <a href="/en/gr/48712025/#creating-role-dependency-records">Role Dependencies</a> in Study Training.

#### How Vault Updates Person Records

Once Vault determines a Learner's _User_ credentials (either from Clinical Operations or from their VeevaID registration), it populates the below Study Training _Person_ record fields as follows:
* **User**: The Learner's Study Training _User_ record
* **Training Eligibility**: Eligible
* **Person is not Vault a user**: False (checkbox is unchecked)

If your Vault's VeevaID Security Policy is configured for <a href="/en/gr/13975/">single sign-on</a> (SSO), Vault also populates the **Federated ID** from the referenced _User_ record.

### About the VeevaID Registration Status {#about-the-veevaid-registration-status}

In addition to inviting users to register, the _VeevaID Invitation Management_ job maintains the _Person_ record's _VeevaID Registration Status_ field as the invitation moves through various stages of the process: _Invitation Queued_, _Invitation Sent_, and _Registered_.

These and other statuses are determined based on related _VeevaID Registration_ object records Vault creates or updates during the job run.

The table below describes Vault behavior for scenarios where an invitation is en route to or awaiting Learner registration, based on the _VeevaID Registration_ record's _Registration Status_ and other fields.

| Current Status | Conditions | New Status |
|---|---|---|
| Invitation Queued | Vault is preparing to send an invitation. | _Invitation Sent_ (when successful), or _Processing Failure_ if the job encountered an error |
| Invitation Sent | Today's date exceeds the _Invitation Date_ plus 14 days. | Expired |
| Expired | The Learner has one (1) VeevaID Registration record | Invitation Queued |
| Expired | The Learner has two (2) VeevaID Registration records | Invite Attempts Exhausted |
| Invite Attempts Exhausted | Vault has made two (2) invitation attempts | N/A, record remains at _Invite Attempts Exhausted_ |
| Processing Failure | There was an error updating the Person record. | N/A, record remains at _Processing Failure_ |

Once all invite attempts are exhausted, a Training Admin can make certain [manual updates][2] to the Learner's _Person_ record and re-initiate the invitation process.

## Configuring VeevaID for Study Training {#configuring-veevaid-for-study-training}

To configure the Study Training-Clinical Operations Connection and your Study Training Vault to use VeevaID, complete the steps below.

1. Add the _VeevaID_ and _VeevaID Registration Status_ fields to the _Person_ object page layout.
2. If your Vault's VeevaID Security Policy is configured for single sign-on (SSO), configure the _Person_ object as follows:
  * Activate the _Person_ object's _Federated ID_ field and ensure it is assigned to all relevant _Person_ object types.
  * Add the _Federated ID_ field to all relevant _Person_ object page layouts.
  * Navigate to **Admin > Connections > Integration Rules** and select the **`st_co_person_ir__v`** rule (Study Training ClinOps: Person). Within the **Field Rules** section, locate the `federated_id__v` field and select **Activate** from its Actions menu.
3. Within the _Person_ object, create two new actions: _Invite VeevaID_ and _Invite VeevaID (bulk)_. When creating the actions, we recommend selecting the _Available in All Lifecycle States_ option, then setting the defaults for each state per the below. You can also configure or update these selections in the _Person_ object lifecycle's <a href="/en/gr/47850/#Atomic_Security_Actions">Atomic Security settings</a> for each state.
  * _Inactive_ state: Hide
  * _Eligible_, _Ineligible_, _Active_ states: Execute
4. Within the _Training Role-Person_ object type, update the _VeevaID Registration Status_ field configuration to display in default lists and hovercards. Then, add the field to the object's _Training Role-Person_ object type (`learner_role_person__v`), as well as its page layout.
5. Navigate to **Admin > Settings > VeevaID Settings** and update the Veeva ID Information fields with Learner-friendly information about your Vault. These are the details Learners see in the VeevaID portal.
6. Navigate to **Admin > Operations > Job Definitions** to activate the _VeevaID Invitation Management_ job and, optionally, update the job's hourly interval.


## Updating the Learner's User Details {#updating-learners-user-details}



<div class="note-border alert-info">
  <div class="alert alert-info" role="alert">
    <div><i class="far fa-info-circle"></i></div>
    <div class="alert-text">
      <p><strong>Note</strong>: Learners using VeevaID must use a username which does not match the Vault domain. For example, VernBio’s domain is @vernbio.com, therefore, username domains for VeevaID users in the VernBio Study Training Vault cannot be “@vernbio.com”.</p>
    </div>
  </div>
</div>



When a VeevaID Learner user's account details (such as Last Name) change, the user must first initiate the update process in the <a href="/en/gr/548356/#my-account-page">VeevaID portal</a>. Once updated in the portal, the new details are populated upon log-in to the Clinical Operations Vault, then Vault passes the updated _User_ record information to the Study Training Vault.

Similarly, when a VeevaID user's email address changes, the user must re-register for VeevaID.

To incorporate new or updated _User_ record details in the Study Training Vault, a Vault or Training Admin must update the user's _Person_ record. The steps below ensure updates do not interrupt training automation and the VeevaID invitation process.

1. Edit the _Person_ record and check the **Person is not a Vault user** checkbox, then click **Save**.
2. Edit the _Person_ record again. Select the **User**, uncheck **Person is not a Vault user**, then click **Save**.

To immediately invite the Learner to re-register for VeevaID, select **Invite VeevaID** from the **Actions** menu. You can also perform this action <a href="/en/gr/33725/#how-to-perform-bulk-custom-record-actions">in bulk</a>. Otherwise, Vault initiates the invitation process during the next _VeevaID Invitation Management_ job run.

## Registering for VeevaID for Study Training

See <a href="/en/gr/548356/">About VeevaID</a> for instructions on self-registration and account management.

[1]: #about-the-veevaid-registration-status
[2]: #updating-learners-user-details
[3]: #configuring-veevaid-for-study-training
