Look at the permissions in static pages and be sure R (Read Access) is set for anyone you want to have access. If its set correctly then the issue is in the page you are linking to. The line that controls security is the:
//Example From the Plugin Developer:
here[*2]
// Check user has rights to access this page
if (!SEC_hasRights('{plugin}.edit','{plugin}.view','{plugin}.admin','OR')) {
// Someone is trying to illegally access this page
COM_errorLog("Someone has tried to illegally access the {plugin} page. User id: {$_USER['uid']}, Username: {$_USER['username']}, IP: $REMOTE_ADDR",1);
$display = COM_siteHeader();
$display .= COM_startBlock($LANG_PL00['access_denied']);
$display .= $LANG_PL00['access_denied_msg'];
$display .= COM_endBlock();
$display .= COM_siteFooter(true);
echo $display;
exit;
}
Comment out the whol thing to remove the security check or make sure you users have rights in thier group, or if they don;t add it. For anonymous you woul dneed to heack I believe so for them just remove or comment out the code. Also a include or require_once call could be cuasing the issue due to a security check in them.
WARNING:
ALSO BACKUP THE FILE FIRST INCASE YOU REMOVE SOMETHING YOU SHOULDN'T HAVE