Maybe if you add a bound rule, basically saying that systemd_importd_t doesn't have more priviledges than init_t then we could get away without dropping NoNewPrivileges from importd unit file.
Typebounds are *not* solution here. We cannot use it right now. Problem is design on our policy. See following example:
In systemd.te file is defined type systemd_importd_t.
As you can see there is also macro called "init_daemon_domain". There are some allow rules needed to run type as daemon. *BUT* these rules are not allowed for init_t domain.
This is reason why init_t cannot be bounding domain for systemd_importd_t domain.
I've learnt that selinux-policy still doesn't contain any rules for importd. Thus by fixing this bug (iow, by removing NoNewPrivileges=yes) we would harm security of the system. We need to postpone it until selinux-policy has coverage for importd.
After evaluating this issue, there are no plans to address it further or fix it in an upcoming release. Therefore, it is being closed. If plans change such that this issue will be fixed in an upcoming release, then the bug can be reopened.