Page History
...
Yellowfin's Administration Service allows for integrating Yellowfin with essentially all third-party authentication processes. Primarily an authentication bridge will be used when implementing Yellowfin as a standalone application or when implementing Yellowfin as a tightly integrated application, where this is required.
To integrate with a third-party authentication process, a custom bridge needs to be created. This bridge will take a username and password from one system and match the details to a user in the Yellowfin system. Usually the third-party authentication source will provide a username, and sometimes with a password and other additional user attributes.
The purpose of the Bridge bridge is to match this username with an existing user in Yellowfin and perform a Single Sign-On (SSO) into Yellowfin as that user. Very rarely will there will be a password available from the third-party source. The LOGINUSERNOPASSWORD web service will allow for the Bridge bridge to log in a user using only their Usernameusername. Alternatively, LOGINUSER can be used to log in the user with a password.
The bridge is not necessarily used to determine whether or not the user is allowed to log in. The fact that the Bridge bridge receives the username, means that the user has already been validated. However, sometimes the Bridge it will be responsible for “asking” the third-party if the user is valid.
Sometimes there will be a need to auto-create the users if they do not yet exist in Yellowfin. This might require using additional information to create the user, like email address, first and last namenames, etc. which should be sourced from the third-party authentication source. The Bridge bridge can use the GETUSER or VALIDATEUSER web service function functions to determine if a user exists in Yellowfin or not and the ADDUSER web service call to create a user. If bulk user creation option is required, the ADDUSERS web service function can be called.
Part of the Bridge bridge process may also be to modify the user's Yellowfin role or group membership as part of the login process. If Yellowfin is integrated with a product where access to different content may change, it may be required to update this group membership during the login process. This would require sourcing information from the third-party source about what groups a user should be added to/removed from. The UPDATEUSER web service call will allow a user’s role to be modified and the INCLUDEUSERINGROUP / or EXCLUDEUSERFROMGROUP web service calls can be used to add /or remove from groups that determine what Yellowfin content they can access.
The Bridge bridge can be implemented in many ways. It could be integrated, such as being integrated as:
- as a part of Yellowfin itself (as a JSP, Servlet or Filter within the Yellowfin web application);
- a standalone application (GUI, console or web application) that communicates with the third-party source and Yellowfin;
- Or a part of the third-party application itself.
...
When implementing within the Yellowfin container, the various implementation methods will allow for different functionality to be included. JSPs and Servlets allow for implementing code when the user is directed to a particular URL, whereas Filters allow for checking authentication on any URL requested from the Yellowfin system.
Here is an image that describes the basic process of what a Yellowfin Authentication Bridge authentication bridge needs to do:
Note: If your authentication provider supports SAML, the Yellowfin SAML bridge can be used to SSO users.
...
Expand | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||
This service connects to Yellowfin and retrieves a login token for a given user. The user is specified using a user ID (such as an email address or any other another type of ID depending on the Login ID method). When this token is passed with the Yellowfin Login URL, it will disable the login screen for the authenticated users and their session will start immediately. For example, if admin@yellowfin.com.au is a web service admin user, then the following request for this call could be made.
Redirecting to Yellowfin with the Login TokenUsing the token received from the web service call (the contents of AdministrationResponse.LoginSessionId), you can forward the user to the URL:
This URL will bypass the authentication screen in Yellowfin and take the user directly into Yellowfin.
Using the token with the JavaScript APIThe SSO token can also be used with embedded JavaScript API widgets. The token is added to the scriptlet URL like this:
Complete ExampleYou can use the following LOGINUSER example. To try it out, follow these steps;
|
...