I would definitely go with the first approach, storing the ObjectIds directly. This saves space, as ObjectId is 12 bytes whereas the second approach string is 24 bytes.
Also, if the ObjectIds are used to fetch the objects later, storing as ObjectId saves some hassle.