![](/img/trans.png)
[英]how to check what exacly request i send to restful webservice via restful client (javax.ws.rs.client)
[英]Secure way to send a mail via a (Restful) Webservice
我有一個帶有Java后端的AngularJS Web應用程序。
現在我想從Angular Application發送郵件。 我認為最好的方法是將帖子發送或獲取請求到Web服務,並通過內部smtp服務器將郵件發送給收件人。
但是我認為這個概念存在很大的安全性問題。 當我創建一個Web服務呼叫時,例如:/ /api/mail?mailto=john@doe.com
有人可以獲取該Web服務的鏈接,更改接收者,並使用此鏈接開始向其他人發送垃圾郵件。
有人知道這種體系結構通過Web服務發送郵件的安全方法嗎? 我必須將收件人傳遞給郵件服務,因為用戶在AngularJS UI中進行了設置。
我對任何建議都很滿意。
這是您應采取的安全措施,以保護您的Rest API。 REST安全備忘單這是您應該為其余API采取的安全措施的列表。
如果您使用spring-security,那么大部分內容都將涵蓋其中。
使用Mailgun 。 您可以免費發送10,000封電子郵件,也可以通過Java后端調用API,如下所示:
public static ClientResponse SendSimpleMessage() {
Client client = Client.create();
client.addFilter(new HTTPBasicAuthFilter(
"api","key-3ax6xnjp29jd6fds4gc373sgvjxteol0"));
WebResource webResource = client.resource(
"https://api.mailgun.net/v3/samples.mailgun.org/messages");
MultivaluedMapImpl formData = new MultivaluedMapImpl();
formData.add("from", "Excited User <excited@samples.mailgun.org>");
formData.add("to", "john@doe.com");
formData.add("subject", "Hello");
formData.add("text", "Testing some Mailgun awesomeness!");
return webResource.type(MediaType.APPLICATION_FORM_URLENCODED).
post(ClientResponse.class, formData);
}
這將比您的實現更安全。 我還要將Angular客戶端的電子郵件地址作為POST發送到您的Java后端。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.