[midPoint] Problem with post-registration configuration

Sven Feyerabend Sven.Feyerabend at stuvus.uni-stuttgart.de
Mon Oct 3 11:20:32 CEST 2022


Hello everyone,

I'm trying to implement an invite based user registration system and 
want to use midpoints self post-registration feature.

I'm using midpoint 4.4.2 and the flexible authentication mechanism. I 
tried to follow the example in the documentation at 
https://docs.evolveum.com/midpoint/reference/misc/self-registration/configuration-before-4-6/#self-post-registration-or-invite-for-existing-users-in-midpoint

So far I have the following config in my SecurityPolicy:

<flow>
         <selfRegistration>
             <name>selfRegistration</name>
<initialLifecycleState>active</initialLifecycleState>
<requiredLifecycleState>proposed</requiredLifecycleState>
             <displayName>Aktivierung</displayName>
<additionalAuthenticationName>selfRegistrationAuth</additionalAuthenticationName>
             <defaultRole oid="00000000-0000-0000-0000-000000000008" 
type="c:RoleType"/>
             <formRef oid="a8a357d6-af5e-46b0-8a32-f6de97803a76" 
type="c:FormType"><!-- Registration form --></formRef>
         </selfRegistration>
</flow>

and for the authentication sequence:

<sequence>
         <name>selfRegistrationAuth</name>
         <description>Just a nonce mail to validate e-mail 
address.</description>
         <channel>
<channelId>http://midpoint.evolveum.com/xml/ns/public/common/channels-3#selfRegistration</channelId>
             <urlSuffix>registration</urlSuffix>
         </channel>
         <module>
             <name>RegistrationNonce</name>
             <order>10</order>
             <necessity>sufficient</necessity>
         </module>
</sequence>


Additionally I have configured a notification handler that sends the 
necessary information via email.

If I create a new user the correct information is send via mail, namely 
a link in the form https://my-midpoint-domain/midpoint/registration?user=oid

If I try to open the link in a browser, I get redirected to the login 
page and the midpoint logs show the following error:

ERROR (com.evolveum.midpoint.web.security.filter.MidpointAuthFilter): 
Couldn't find sequence for URI '/midpoint/registration' in 
authentication of Security Policy with oid 
00000000-0000-0000-0000-000000000120
java.lang.IllegalArgumentException: Couldn't find sequence for URI 
'/midpoint/registration' in authentication of Security Policy with oid 
00000000-0000-0000-0000-000000000120

But if I open midpoint in the browser, then click on the Sign Up button 
and then paste the link into the url bar, I get the user specific 
registration form and can complete the activation process.

My guess is, that simply opening the link in the browser does not 
qualify as the selfRegistration channel and therefore the process does 
not work.
What would be the correct way to fix this?

Thanks in advance!

Regards

Sven



More information about the midPoint mailing list