A solution could be to implement your
Custom Site Map Provider
by extending
StaticSiteMapProvider
class, and based on the user roles the site map will contains the "site map nodes" for some pages or not.
You can find details and code provided by me for other QA Question
Master Pages in Asp.Net Web forms[
^]