By default, the
author user role allows users to add, edit, and delete their own pages and posts, but disallows users to edit or delete others' pages and posts; however, it does not, out of the box, limit users to the creation of a single page or post.
If your intent is merely to allow users to create a public profile page, I would recommend creating a custom template that displays user meta data, that each user can manage from his/her own back-end profile page. If you need additional user meta data, simply add custom user meta data to the user profile page. That way, you can use custom templates to output the public profile pages using the user custom meta data, while being able to leave users in the
subscriber user role, which prevents them from creating pages or posts.