improved permission management