Desde luego que la Iglesia intenta que se perpetúe la hermosa costumbre de poner a los niños nombres de nuestra tradición cristiana. De hecho, así lo dice el canon 855 del Código de Derecho Canónico:
Procuren los padres, los padrinos y el párroco que no se imponga un nombre ajeno al sentir cristiano.
Pero como puede ver por la misma redacción del canon, no es una obligación, por tanto sí: se pueden utilizar nombres como los que menciona en la pregunta, y muchos más.
Desde luego, lo que no es posible es negar el bautismo por el nombre, o imponerle otro nombre en el acta sin que los padres lo sepan, como se ha hecho a veces, que la persona va de grande a pedir su cédula de bautismo y se entera de que tiene otro nombre, y nadie lo sabía.
En la tradición cristiana larga (no la tradición de un par de siglos, sino la verdadera, la que abarca la historia de la Iglesia), nunca se ha negado la cristianización de nombres paganos: si un nombre no es de santo, el que lo lleva queda invitado a ser santo, y hacer de ese nombre un nombre cristiano.
Tenemos santos Apolonio y Apolonia, Marciano y Marcial, Sátiro, Saturnino, ¿por qué no podríamos tener en un futuro un san Vishnu o una santa Selene?
Se puede bautizar con un nombre de procedencia marroquí?
Yo creo que la pregunta está perfectamente respondida en el escrito, pero por las dudas lo explicito: por supuesto que sí.