How to customize the default self sign up page in wso2is - wso2

I want to add some customization like a picker field and checkbox in the default sign-up form given by wso2is.
EXAMPLE: I have a list of organizations and when user signup he/she selects related organization from a list and the organization gets stored in the DB.
one more example can be: I can provide list of Countries and users will be able to select respective countries.

Attributes that you can see in the default self sign up page are the claims that have been configured as Supported by Default in the WSO2 claim dialect (http://wso2.org/claims).
So if the required attributes are already not there in the default self sign up page you can configure them as Supported by Default from the management console. Please refer the documentation for more details.
After that, if you want to have a drop-down for some attributes you have to customize the self sign up page. The relevant JSP page (self-registration-with-verification.jsp) can be found in the accountrecoveryendpoint web app which can be located at <IS-HOME>/repository/deployment/server/webapps folder. So you can do the customization there as for your requirement.
Also if you want to build a separate Self Sign-Up page using a preferable technology you can use the Self Sign-Up REST APIs as well.

Related

Is there a way to use custom attributes for Amazon Cognito using the Hosted UI?

I'm trying to use the Hosted UI feature with AWS Cognito's User Pool to create a login / signup form for a web application.
I can select certain "standard attributes" for user registration, and those show up on the Hosted UI. For example these attributes...
Show up like this on the Hosted UI...
But if I were to add some custom attributes...
Nothing changes, and the Signup fields and form look exactly like they do in the middle picture. They are basically hidden attributes to that UI.
Is there any way to make those custom fields populate so that a user can fill them in?
Furthermore... These custom attributes don't even show up in the user's information from my User Pool 'Users and groups' area. As you can see, the only attributes showing up are those 'standard attributes'. The custom ones are nowhere to be found.
AWS says that at this moment, unfortunately, it is not possible to show the custom attributes on the Cognito hosted UI sign-up page. Also, the custom attributes cannot be marked as “required”.
As for the second Question. Custom attributes will not be reflected in the Users/Groups area until they are added to the user, which, again, cannot be done through the Hosted UI.

Sitecore 9.3 Experience Analytics - tracking logged users and users roles

Can anyone provide me with working example how to show analytics (Visits, Page views, Page views per visit, etc) for logged users? As I understand there is no OOB solution, so I've tried to implement flexible dimensions, but didn't find any good examples and failed.
First of all you have to identify your logged in contact by calling the Sitecore.Analytics.Tracker.Current.Session.IdentifyAs() method, see more details here. When the contact logs in you can use their username to identify them upon the successful login.
Note, that the identification and authentication are separate unrelated events. Contacts are identified against the xDB and authenticated against the authentication mechanism used by the website.
When the contact identifies, it is saved to xConnect with a known identifier based on the information passed into theIdentifyAs() method: Identifier, Source and
IdentifierType will be set to ContactIdentifierType.Known (it is set to ContactIdentifierType.Anonymous for anonymous contacts). Then you can use IsKnown property on the Sitecore.XConnect.Contact that returns true if a contact has any known identifiers.
If you want to track some custom events for the logged in users to then use them for reporting needs you can add user interactions by calling the client.AddInteraction() extension method. I have given an example here.
If you want to extend the contact with your own custom data then you can create custom contact facets, read more here.
In order to implement your custom report with flexible filtering by logged in and not users, of course, you will need to define your custom dimensions and metrics, read more here.

I need help in designing a database (and signup and login on base of their role )in which there are three user

I want make sign up and login on the base of their role there admin can add users and approved the request of other two user so that they can login.When user click on the sign up the user see sign up page accorading to their roll and same for login .
Django implements a pretty decent authentication framework inside it, so you already have things such as Users, Groups and Permissions to work on. All of those being managed easily by the admin page.
What you want to do is to assign a set of groups/permissions to a newly created user to determine its role and then build a frontend that manages the different kind of users in terms of templates. If you want an user to have itself validated before start using your page, refer to the is_active attribute of the User object.
Read for more information:
https://docs.djangoproject.com/en/2.2/topics/auth/default/#user-objects

How to edit the self signup page of WSO2-IS?

I want to use the WSO2-IS (5.5.0) as Identity Provider for my various applications and enable single sing-on for all of them.
I have added one of my app as service provider and configured the Oauth/OpenID Connector it.
Because I want to allow my users to signup by themselves, I have enabled 'Self User Registration' under Account Management Policies in Resident Identity Provider.
So When I try to self signup, I receive the sign up page with bunch of form fields which I want to edit.
Here is the screenshot of what I form fields I get:
How do I edit this page?
For example, If I just want FirstName, LastName, Password, ConfirmPassword and Organization what are the changes to be made and where?
From the documentation, I figured out that Claim Configuration of the Service Provider should do the thing.
I have even tried to configure the claims and tried to use custom claim dialect. But with no luck.
How do I achieve it? Any help will be appreciated.
Attributes that shows in the self sign up page are the WSO2 dialect claims which has "Supported by Default" configuration enabled. If you o to claim dialect list page and go to "http://wso2.org/claims" dialect and expand agny claim, you can see this configuration. Mandatory one's (which has the red astrix mark) are the claims that has "Required" config enabled. For example see below config of the department claim.
If you go to one of the user's profile from the management console, you can see the same set of claims there also.
You can change the "Supported by Default" and "Required" config of each claim to cater your requirement in the registration profile.
One other option is you can customize the self sign up page itself. Page is self-registration-with-verification.jsp in accountrecoveryendpoint we application in <IS-HOME>/repository/deployment/server/webapps folder. But still you will have to ask the user to enter the "Required" claims

facebook publish_action default public

I have a php script that post content users choose to post to their facebook timeline but I want to default the post the users post to their timeline public unless they change it... how do I go by doing that I am using the oldest facebook sdk.
This field cannot be used to set a more open privacy setting than the
one granted
Source: https://developers.facebook.com/docs/graph-api/reference/v2.5/user/feed#pubfields
In other words, it is not possible if the user did not choose "public" when he installed your App.