Cloud computing is an emerging area of computer technology that benefits from the processing power and the computing resources of many connected, geographically distanced computers connected via Internet. Cloud computing eliminates the need of having a complete infrastructure of hardware and software to meet users requirements and applications. It can be thought of or considered as a complete or a partial outsourcing of hardware and software resources. To access cloud applications, a good Internet connection and a standard Internet browser are required. Cloud computing has its own drawback from the security point of view; this paper aims to address most of these threats and their possible solutions.