i would suggest you use randn() instead of rand().
The most straightforward way to produce band limited noise is to filter white noise.
you could conceivably use a Gibbs sampler but that would be less efficient and require knowing how to set up the problem.
Could you explain why you are making a distinction?