VIVO Documentation
Old Release
This documentation relates to an old version of VIVO, version 1.12.x.
Looking for another version? See all documentation.
There are three elements in the linkage between a User Account and a Profile page:
externalAuthId
runtime.properties
specifies the URI
of the matching propertyURI
whose value matches the externalAuthId
. (The property value is either a String or an untyped literal.)The externalAuthId
is optional.
There are several ways to create a externalAuthId
:
If you are using internal authentication – managed within VIVO — then each account must be created by an admin, and the admin may choose to set the externalAuthId to a useful value.
If you are using external authentication – Shibboleth, or the like – then when a user without an account passes authentication, an account is created auto-magically. The externalAuthId is set to the user's Shibboleth ID.
Regardless of the type of authentication, you could choose to ingest the information for the user accounts, and create the externalAuthId as part of that ingest.
<http://vivo.mydomain.edu/individual/u8041>
a <http://vitro.mannlib.cornell.edu/ns/vitro/authorization#UserAccount> ;
<http://vitro.mannlib.cornell.edu/ns/vitro/authorization#emailAddress>
"jeb228@cornell.edu"^^xsd:string ;
<http://vitro.mannlib.cornell.edu/ns/vitro/authorization#externalAuthId>
"jeb228"^^xsd:string ;
You can confirm this value by looking in the vivo.all.log
file in Tomcat logs. Each time VIVO starts up, the first entry written to the log contains all of the properties from runtime.properties
. It helps to inspect this if you might possibly be reading the wrong runtime.properties file.
At Cornell, ours looks like this:
selfEditing.idMatchingProperty = http://vivo.cornell.edu/ns/hr/0.9/hr.owl#netId
For example, the Individual object that forms the basis for my profile page contains a statement like this:
<http://vivo.cornell.edu/individual/JamesBlake> <http://vivo.cornell.edu/ns/hr/0.9/hr.owl#netId> "jeb228" .