Brian Kierstead has created a membership engine for Refinery CMS. He describes it as "very simple but serves as a good start." It allows assigning roles to pages and users. The user must have the same role assigned as the page in order to see it.
Next, Brian wants to add a members' list and a proper 403 page.