Hi Sominda,

This is a nice feature addition to the product. Thanks for getting it done.

Have couple of questions,

   - Could you also mention details on the availability of this capability
   in the master. (Which from milestone onwards it has this functionality and
   related doc links)
   - Do we have a guide that showcase the capability using the Identity
   Server with an end to end use case? If not shall we have one?
   - And can you point me to the git issue that have the details of the
   overall roadmap of this space?


Thanks,

On Wed, Nov 27, 2019 at 7:41 AM Sominda Gamage <[email protected]> wrote:

> Hi all,
>
>
> WUM update for User Self-Registration via Email and SMS is released for
> WSO2 IS 5.7.0 and WSO2 IS 5.7.0 KM. The update number is 5734. The
> configuration details are provided in doc [1] and [2].
>
>
> Document [1] contains a detailed description of the functionality of the
> API with sample API requests and responses. Also, Doc [1] contains more
> information on notification channel selecting criteria. Document [2]
> contains the configurations that are needed to configure self-registration
> to support multiple channels.
>
>
> Improvements by the feature.
>
>    - The feature is provided only via the user self-registration APIs
>    - A new service has been introduced to determine the preferred channel
>    of the user.
>    - A new identity claim is introduced to track the preferred
>    notification channel of the user.
>    - The responses of User-Self registration API has been introduced.
>       - By default this configuration is disabled.
>    - The functionality of the Account Confirmation API has been improved.
>       - For more information refer to the extended account confirmation
>       api
>       
> <https://docs.wso2.com/display/IS570/Extending+User+Self+Registration+and+Account+Confirmation#ExtendingUserSelfRegistrationandAccountConfirmation-AccountconfirmationAPI>
>       .
>
>
>
> [1] -
> https://docs.wso2.com/display/IS570/Extending+User+Self+Registration+and+Account+Confirmation
>
> [2] -
> https://docs.wso2.com/display/IS570/Configuring+a+User+Preferred+Notification+Channel
>
>
> Thanks & Regards,
>
> Sominda.
>
> On Wed, Nov 27, 2019 at 7:40 AM Sominda Gamage <[email protected]> wrote:
>
>> Hi all,
>>
>> I have implemented APIs to support self registration via mobile (SMS) or
>> EMAIL as account confirmation channels. According to the implementation,
>> I have defined two notification channels and each channel has several
>> claims bound to it.
>>
>>    - Channel Name (EMAIL or SMS)
>>    - Channel Value Claim - Claim to store the value of the claims (Eg:
>>    http://wso2.org/claims/mobile)
>>    - Channel Verified Claim -  A claim to store the verified status of
>>    the channel (Eg: http://wso2.org/claims/phoneVerified)
>>
>> Following are the claims associated with each channel
>>
>>    - *Email*
>>       - Channel Name: EMAIL
>>       - Value Claim: http://wso2.org/claims/emailaddress
>>       - Verified Claim: http://wso2.org/claims/emailVerified
>>    - *Mobile*
>>       - Channel Name: SMS
>>       - Value Claim: http://wso2.org/claims/mobile
>>       - Verified Claim: http://wso2.org/claims/phoneVerified
>>
>> The following properties were added to identity.xml.
>>
>>
>> 1. Configurations in *identity.xml* within the *<server>* tags to
>> resolve the notification channels.
>>
>>
>> *<Notification>    *
>>
>> *<DefaultNotificationChannel>EMAIL</DefaultNotificationChannel>    *
>> *<ResolveNotificationChannels>        *
>>
>> *<Enable>true</Enable> *
>>
>>
>> *</ResolveNotificationChannels>   *
>>
>> *</Notification>*
>>
>>
>> 2. Configurations in *identity.xml* within the *<SelfRegistration>* tags.
>>
>>
>>
>>
>> *<RegisterWithVerifiedChannels>true</RegisterWithVerifiedChannels><API>*
>>
>>
>> *<EnableDetailedResponseBody>True</EnableDetailedResponseBody>*
>>
>>
>> *</API>*
>>
>>
>> For more details on the configurations refer to Configuring a User
>> Preferred Notification Channel
>> <https://docs.wso2.com/display/IS570/Configuring+a+User+Preferred+Notification+Channel>
>> .
>>
>>
>> Thanks and regards,
>> Sominda.
>>
>> On Tue, Aug 13, 2019 at 9:55 AM Sominda Gamage <[email protected]> wrote:
>>
>>> Hi all,
>>>
>>> Please find the solution proposal of implementing a preferred channel
>>> for user self registration flow.
>>>
>>> User self registration
>>> *User Narrative*
>>>
>>>    1.
>>>
>>>    When a user self registrates, the user
>>>    1.
>>>
>>>       Has to provide either a mobile number or an email address or both.
>>>       2.
>>>
>>>       Can provide a preferred communication channel as Email or SMS.
>>>       2.
>>>
>>>    Then the user will get recovery notifications based on the provided
>>>    communication channels.
>>>
>>>
>>>    -
>>>
>>>    If the channel is email: navigate to the email and click the
>>>    verification link to verify the user account.
>>>    -
>>>
>>>    If the channel is SMS: provide the received OTP during the self
>>>    registration phase and confirm the user account.
>>>
>>> *Solution*
>>>
>>>    -
>>>
>>>    In a self registration request following claims are required for the
>>>    server to initiate an account verification request.
>>>    -
>>>
>>>       Either mobile number or email address claims or both claims (At
>>>       least one claim should be in the request).
>>>       -
>>>
>>>          Mobile claim: http://wso2.org/claims/mobile
>>>          -
>>>
>>>          Email claim: http://wso2.org/claims/emailaddress
>>>          -
>>>
>>>    If any of the above channels are verified external to the Identity
>>>    Server, Phone Verified and Email Verified claims needs to be in the
>>>    request with value being set to TRUE.
>>>    -
>>>
>>>       Eg: If the mobile is already verified, then Phone verified
>>>       request needs to be in the self registration request with value being 
>>> set
>>>       to TRUE.
>>>       -
>>>
>>>       Phone Verified: http://wso2.org/claims/identity/mobileVerified
>>>       -
>>>
>>>       Email Verified: http://wso2.org/claims/identity/emailVerified
>>>
>>>
>>>    -
>>>
>>>    A claim with users preference can be included in the request.
>>>    -
>>>
>>>       This claim is optional but it is recommended to send the claim
>>>       with the request).
>>>       -
>>>
>>>       The claim should be as follows.
>>>       -
>>>
>>>          Preferred Channel:
>>>          http://wso2.org/claims/identity/preferredChannel
>>>          -
>>>
>>>    User Self Registration should be configured for the respective
>>>    tenant (Refer to the User Self Registration Configurations in the 
>>> appendix).
>>>    -
>>>
>>>    Once the server receives a self registration request, server will
>>>    send notifications to the user by resolving the communication channel
>>>    internally. Notification channel resolution will be as follows.
>>>
>>> Communication Channel Selection Criteria
>>>
>>>    1.
>>>
>>>    If the user has only provided email address or mobile number as the
>>>    communication channel and,
>>>    1.
>>>
>>>       Not specified the preferred channel: communication will happen
>>>       via the given channel in the request.
>>>
>>> (Eg: If only the mobile is provided, mobile will be considered as the
>>> preferred channel.
>>>
>>>    1.
>>>
>>>    Specified the preferred channel:
>>>    1.
>>>
>>>       Preferred channel matches the given claim: communication via
>>>       preferred channel
>>>
>>> (Eg: Preferred channel: SMS and given a mobile number)
>>>
>>>    1.
>>>
>>>    Preferred channel does not match the claim: 400 ERROR
>>>
>>> (Eg: Preferred channel: SMS but not given a mobile number)
>>>
>>> Note: This means that there is a claim bound with a specific
>>> communication channel
>>>
>>> Channel: EMAIL -> Claim: http://wso2.org/claims/emailaddress
>>>
>>> Channel: SMS -> Claim: http://wso2.org/claims/mobile
>>>
>>>    1.
>>>
>>>    If the user has provided both email and mobile as communication
>>>    channels.
>>>    1.
>>>
>>>       Specified the preferred channel: communication via preferred
>>>       channel
>>>       2.
>>>
>>>       Not specified the preferred channel: communication via the server
>>>       default channel.
>>>
>>>
>>>    -
>>>
>>>    Once the communication channel is resolved, an event will be
>>>    triggered. The event name would be in the following format.
>>>    -
>>>
>>>       Event name: TRIGGER_<Resolved_Channel>_NOTIFICATION
>>>       -
>>>
>>>       Communication channels supported with this scope:
>>>       -
>>>
>>>          SMS
>>>          -
>>>
>>>          EMAIL
>>>          -
>>>
>>>    Once the event is triggered notification handlers will send
>>>    notifications to the user.
>>>
>>> *Deliverables*
>>>
>>> We have planned to deliver the solution according to the following
>>> phases.
>>>
>>>    1.
>>>
>>>    Phase 1
>>>
>>>    Support mobile and email channels for Self registration APIs.
>>>
>>>
>>>    1.
>>>
>>>    Phase 2
>>>
>>> Support mobile and email channels for self registration via SCIM/ME
>>> endpoint.
>>>
>>>    1.
>>>
>>>    Phase 3
>>>
>>> Provide UI support for account confirmation via mobile and email
>>> channels.
>>> Current Status
>>>
>>> Currently, I'm in phase 1, implementing APIs to support self
>>> registration via mobile (SMS) channel. The API will be able to send a
>>> response with the notified communication channel and the responses are yet
>>> to be finalized.
>>>
>>>
>>> Regards,
>>>
>>> Sominda.
>>>
>>>
>>> On Tue, Aug 6, 2019 at 12:52 PM Sominda Gamage <[email protected]> wrote:
>>>
>>>> Hi all,
>>>>
>>>> We are planning to add the above feature for WSO2 identity server for
>>>> following requirements.
>>>>
>>>>    - *Support account verification for users in user self-registration
>>>>    via Email or mobile (SMS) channel.*
>>>>    - *Support Mobile or Email channel for recovery flows.*
>>>>
>>>> Please find the user stories documentation related to the above
>>>> requirement below.
>>>>
>>>> *Support** account verification for users in user self-registration
>>>> via **Email or mobile (SMS) channel.*
>>>> Current product only support account verification via an email.
>>>> Therefore, we wish to introduce a new claim called
>>>> "preferredCommunicationChannel" and we ask for a preferred channel
>>>> depending on that value.
>>>>
>>>>
>>>> *Self Registration Scenarios*
>>>>
>>>>
>>>>    - User provide both email and mobile as attributes and set the
>>>>    preferred communication channel.
>>>>    - In this case, verification will takes place according to the
>>>>       given channel.
>>>>    - User provide both email and mobile as attributes, but not set the
>>>>    preferred channel.
>>>>       - In this case server configured channel (Email) is set as the
>>>>       preferred channel.
>>>>    - User provide only email or mobile as attributes, set the
>>>>    preferred channel.
>>>>    - User provide only email or mobile as attributes, not set the
>>>>    preferred channel.
>>>>       - Preferred channel will be configured as the given attribute
>>>>       value.
>>>>
>>>> *Deliverables*
>>>>
>>>>
>>>>    - API and UI support.
>>>>    - As the initial step, we wish provide API support.
>>>>
>>>>
>>>> *Support Mobile or Email channel for recovery flows.*
>>>> Current product only support account verification via an email. As the
>>>> initial step we wish to introduce this feature for Username and Password
>>>> recovery flows.
>>>>
>>>> *Deliverables*
>>>>
>>>>
>>>>    - API and UI support.
>>>>    - As the initial step, we wish provide API support.
>>>>
>>>>
>>>> Regards,
>>>> Sominda.
>>>>
>>>>
>>>> --
>>>> *Sominda Gamage* | Software Engineer| WSO2 Inc. <http://wso2.com/>
>>>> (M)+94 719873902 | (E) [email protected]
>>>> <https://wso2.com/signature>
>>>>
>>>
>>>
>>> --
>>> *Sominda Gamage* | Software Engineer| WSO2 Inc. <http://wso2.com/>
>>> (M)+94 719873902 | (E) [email protected]
>>> <https://wso2.com/signature>
>>>
>>
>>
>> --
>> *Sominda Gamage* | Software Engineer| WSO2 Inc. <http://wso2.com/>
>> (M)+94 719873902 | (E) [email protected]
>> <https://wso2.com/signature>
>>
>
>
> --
> *Sominda Gamage* | Software Engineer| WSO2 Inc. <http://wso2.com/>
> (M)+94 719873902 | (E) [email protected]
> <https://wso2.com/signature>
>


-- 
Regards,


*Darshana Gunawardana*Technical Lead
WSO2 Inc.; http://wso2.com

*E-mail: [email protected] <[email protected]>*
*Mobile: +94718566859*Lean . Enterprise . Middleware
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to