Cloud computing has revolutionized the method of delivery of software services, architectural infrastructure of various organizations and business models used by several leading firms. Incorporating several attributes of grid computing, utility computing and autonomic computing makes cloud computing a flexible computing model which provides features compatible with firms in multiple domains. This drastic change by firms to adopt cloud computing models because of the immense advantages offered has given rise to scepticism about the security and confidentiality of the information stored. Moreover, usage of resources obtained from third party cloud services has worsened the layer of protection set in place by traditional computing models. Therefore, this paper presents a review on two main aspects; firstly, an analysis of various security issues which are present in a cloud environment and secondly, various security mechanisms which will enhance the security of confidential data in a cloud environment.