No Apache 2.2, você pode fazer isso com a ajuda da diretiva Satisfy
.
Por exemplo:
AuthType Basic
AuthName "internal"
AuthUserFile /path/to/my/.htpasswd
Require valid-user
Order allow,deny
Allow from env=cron
Satisfy Any
(o padrão é Satisfy All
)
A diretiva <IfDefine>
(no Apache 2.2) só é capaz de verificar se os parâmetros foram definidos na linha de comando quando o Apache é iniciado. Não é possível verificar variáveis de ambiente.