证人享有哪些权利和义务