We are developing an app. Where user will  login with azure and use app.

My Question: Should we create users in Outsystem Database, after they login is successful?


Hello Kalyan

Shirt answer: yes. And login in the platform also. 

Please, take a look into the online training on EXTERNAL authentication, as it has some examples (not exactly with Azure, but the method is the same). 

Cheers


Yes, I checked. But, Is there any alternative solution without creating user in Outsystems database?

Hi Kalyan,


I think no, without create user in database no one can login platform.


Thanks

Rahul Sahu

Hi Kalyan,

If you want to use all the full potential of the platform, you have to login.
Many features are tied to the logged user (e.g. the sessions, roles, etc).

It is simple. Once the user logged in the external authentication provider, just check if the user already exists. If not create it first. Than proceed to the login in the platform. You have a System action called Login that do not require the username password, just an User Identifier.

There is no reason to not login in the platform.

Also, if your platform license includes a maximum number of active users (most do), If you exceed this value, no matter if you are logged in or not in the platform, you are violating the license.

Cheers.

Hello Kalyan


On a company that I'm working on now, we do have that integration with Azure, and indeed we do as mentioned above. Every time the user tries to access the log in page, all the groups are returned from Azure with their users. Then the groups will be mapped with the ones on OS (we need to have the same name) and the users will be created if they didn't exist yet.

Thanks for information.

We are using enterprise account. Is there any limit for app users?


Also, how we can login without user credentials and how we can get the user identifier?

Hi Kalyan,

The number of available Users can be get from the Service Center: yourserver/ServiceCenter/Activation_Info.aspx

Usually is unlimited for development, but not for Production environments.

To login without password, you need the username, to fetch from the User entity the User record with its ID. Than just use the System Login action passing the Id.

Cheers.

P.S. Usually the callback made from the external authentication has the username available for you to find the user.

Yes, I followed your steps.

But, I'm unable to add the action "login" to my work flow

It shows as invalid.

Hello Kalyan,

It seems you are trying to drag it to a MOBILE client action.

Login is a server action, it must be execute in a Mobile Server Action.

In any case, I don't know exactly how the external authentication runs with mobile...

Ok, for mobile, you will need a plugin: https://www.outsystems.com/forge/component-overview/2044/idp-mobile

Never used it, thou.

For some reason, it is showing Outsystems default login page. While performing "Login" action.

I want to do a silent login.

Hi Kalyan,

Was you able to solve this issue?

Cheers.

Eduardo Jauch wrote:

Hi Kalyan,

Was you able to solve this issue?

Cheers.

Yes. Able to solve just now. ADALUserId was not creating.

Due to that, it was showing login screen.