Porque desde fuera funciona. Le pides a un agente que solo los administradores vean el panel de administración, y esconde el enlace cuando el usuario no es administrador. Tú lo pruebas con una cuenta normal, no ves el enlace, y das por hecho que está protegido. Y lo está a la vista, que no es lo mismo que estar protegido.
La confusión de fondo es razonable: en el navegador, esconder y bloquear parecen lo mismo. Pero el navegador es territorio del visitante. Todo lo que decida tu código allí lo puede cambiar quien esté al otro lado, y no hace falta ser un experto: cualquiera con curiosidad y una tarde puede llamar directamente a la dirección que había detrás del botón.
El caso más frecuente es la pantalla de administración accesible escribiendo su dirección a mano. El más caro es el que además guarda o modifica datos: si esa operación llega a tu base de datos sin que nadie compruebe permisos del lado del servidor, la comprobación del navegador no ha servido de nada.