我是云计算的新手,所以这可能是一个显而易见的问题。我有一个桌面Java应用程序,它将使用JDBC连接到AWS RDS MySQL数据库。使用数据库的端点,用户名和密码是连接数据库的首选商业方式吗?
为加密通信,我打算使用SSL。
答案 0 :(得分:1)
您可以使用常规凭据向外部打开数据库实例。但是,一种更安全的方式可能是在AWS中创建一个端点(可能在Java中运行),该端点将公开一个或多个API,从而打击运行在RDS中的MySQL数据库。也就是说,您将不直接将RDS实例公开给外部世界,而仅将其内部公开给也在AWS中运行的该API。然后,您的桌面Java应用程序将在需要访问数据库时与该中介应用程序进行对话。
此建议的优点在于,它减少了通过DOS之类的攻击来攻击RDS实例的风险。当然,您在数据库之上创建的API也可能遭到攻击。但是,在容器中运行的Java Web应用程序(以及其他语言的其他类似应用程序)被设计为暴露于外部,更不用说数据库实例了。