New "Authentication Challenge" Feature in Perspective

what about if I am using a perspective workstation in a 800x600 touch screen?. i wont be able to resize in the runtime

Have you tried?

I tested this in Perspective Workstation on my laptop with Workstation window resized to about 800x600, and I was able to move and resize the iframe just fine.

Granted my test was not on a touch screen with native screen size of 800x600.

Edit: I'll go ahead and put in a ticket to see what we can do to improve the experience on smaller screen sizes. We can probably make the frame more reactive to screen size and automatically fit based on the available screen real estate...

1 Like

Hi. I used above 'authenticationchallenge'for button action. What is the issue? It is not working

system.perspective.authenticationChallenge(idp = "operator",timeout = 3, payload = {"isAction":"true"}, framing = "new")	
	
	if result.isSuccess():	
		self.getSibling("Label").props.text= "TTT"
	else:
		self.getSibling("Label").props.text= "FFF"

The result of the authentication challenge is being sent to a top level perspective event handler. You need to configure/script what the session should do there, instead of in the script where you are calling the auth challenge.

Documentation

Authentication Challenge Event Handler

In your case its either set a session custom property to a value or send a perspective message to a specific view/ component to set a value.

My requirement is to request authentication for a button action like requesting a password before the clear set of Alarms. Am I able to do it with this?

Yes, you should be able to. There would be 2 approaches to your case.

The first approach would be to pass whatever identifying data you need to be able to clear the alarms as part of the payload you pass to the auth challenge. Then, in the onAuthChallengeCompleted handler, you would use that data from the payload to clear the associated alarms. (after confirming that the user is allowed to clear the alarms of course)

The other method would be to place the identifying data for the alarms into either a session custom property and fetch it from the onAuthChallengeCompleted handler, or place the data into a page custom property and then create a message handler on that page that is called from the onAuthChallengeCompleted handler, which grabs the data from the custom property and then clear the alarms using that data.

Are there any better resources available to understand onAuthChallengeCompleted handler and 'system.perspective.authenticationChallenge' ?

Is it possible update the session, with the new user. Instead of using sessionless ?

what do you mean by sessionless?