Drop Target Control
Column's allowDragging property provides control over the drag source (which columns may be dragged into new positions).
You can get control over the drop target (column's new position) by handling the dragingColumnOver event and setting the event's cancel parameter to true if the current source/target combination is invalid.
For example, the grid below does not allow dragging the 'country' column to the last or the first positions: