Why does my INSERT fail on SELECT permissions when I have change tracking enabled?
Change tracking operations are running within the user's context, and in order to track what is being changed it has to read the row using a SELECT before it is changed.