2009-10-06 45 views
10

Ứng dụng web của tôi sẽ gửi email cho người dùng. Email chứa liên kết để thực hiện thêm hành động của người dùng. Các tiêu chuẩn bảo mật của chúng tôi yêu cầu liên kết trong email không thể nhấp được. Tuy nhiên, ứng dụng email nhận ra https: // trong email và tự động liên kết URL.Dừng Tự động siêu liên kết trong Outlook, Gmail, v.v.

Bất kỳ ý tưởng nào về cách ngăn ứng dụng email khách tự động liên kết. Tôi đang nghĩ nếu tôi bỏ qua https: //, nó có thể ngừng tự động liên kết. Nhưng, nếu tôi phải giữ https: // thì có cách nào để tránh tự động liên kết.

Liên kết trong email được tạo động trong mã C#.

+3

Đó là một tiêu chuẩn bảo mật rất ngốc nghếch. Nguy cơ nhấp vào liên kết trong email giống hệt như sao chép một liên kết từ email đến trình duyệt. Đây là vấn đề bảo mật thông qua sự bất tiện, không phải là vấn đề bảo mật. – abelenky

+2

@abelenky No. Bạn có thể vô tình nhấp vào liên kết. Bạn không thể vô tình sao chép và dán liên kết từ email vào trình duyệt và nhấn enter. – djechlin

Trả lời

1

Thay thế văn bản thực bằng hình ảnh GIF nhỏ trông giống như văn bản.

Trình phân tích cú pháp email sẽ không nhận ra văn bản trong một hình ảnh.

+1

+1, mặc dù hầu hết các ứng dụng email ngày nay không cho phép hiển thị hình ảnh trong email trừ khi người dùng đặc biệt cho phép họ. –

1

Ứng dụng của tôi có yêu cầu bảo mật tương tự. Giải pháp chúng tôi sử dụng là thêm dấu gạch dưới vào đầu URL (_http: //).

1

Necroing câu hỏi, tôi biết, nhưng nó có liên quan ... Tôi muốn trình bày một kịch bản hợp lý nơi liên kết tự động của Gmail (ít nhất - chưa thử nghiệm các ứng dụng khách khác) không có ý nghĩa.

Khách hàng có biểu mẫu đăng ký trên trang web của họ, nơi khách truy cập điền vào một số thông tin cá nhân và gửi nó. Hệ thống sau đó sẽ gửi một email thông báo cho khách hàng, trình bày thông tin mà khách truy cập đã cung cấp.

Tôi muốn nâng cao email được gửi cho khách hàng bằng cách thêm văn bản <> ở dưới cùng, với các trường mà khách truy cập điền vào ở định dạng CSV để khách hàng có thể sao chép tất cả và dán vào một bảng tính.

Gmail, tuy nhiên, không nhận ra rằng URL và địa chỉ email nằm trong thẻ < textarea> và "helpfully" thêm < a href = "..."> ... </a> mã liên kết xung quanh URL/email - bên trong văn bản <>. Điều này dẫn đến mã liên kết HTML thô hiển thị trong văn bản <>.

17

Tôi biết chủ đề này là cũ, nhưng tôi chỉ có vấn đề này bản thân mình, và không phải là vui mừng bởi sửa chữa hình ảnh gif. Nếu bạn đang làm việc với các email HTML, một giải pháp tốt hơn một chút là chia nhỏ văn bản liên kết với một thẻ không hiển thị để phân tích cú pháp trình phân tích cú pháp. Tôi là một fan hâm mộ của một đơn giản không tồn tại <z>:

 
    https<z>://securesite.</z>com 

Nó còn hoạt động trong các bài viết Stack Overflow: https://securesite.com.

Hy vọng điều này sẽ giúp ai đó.

4

Chỉ cần tạo một đồng bằng <span> thẻ xung quanh dấu hai chấm (<span>:</span>) hoặc một cái gì đó như thế :)

1

Xin lỗi vì đã nạo vét lên một câu hỏi cũ, nhưng tôi chỉ cố gắng trả lời đề nghị của pieman72, và thấy rằng nó didn' hoạt động trong Outlook 2007–2013.Tuy nhiên, gói các yếu tố cá nhân của URL trong ô trong bảng đã đánh lừa các phân tích cú pháp Outlook:

Visit <table><tr><td>www.</td><td>website</td><td>.com</td></tr></table> for more information.

Tôi chạy nhắn mẫu qua các bộ kiểm tra Email On Acid và thấy rằng nó lảng tránh phân tích cú pháp trên tất cả các e-lớn ứng dụng thư khách tự động chuyển đổi URL (Outlook, iOS, Android 2.2, v.v.) Tôi không chạy bất kỳ kiểm tra khả năng phân phối nào.

5

Tôi cũng muốn vô hiệu hóa điều này, vì tôi tin rằng đây là việc sử dụng "hợp lệ" không muốn tự động liên kết (một lý do là nhà thiết kế muốn theo cách đó và hiện họ đang thanh toán hóa đơn).

Trong email gửi mà không có hình ảnh, tiêu đề có tên miền trong đó: EXTRANET.EXAMPLE.COM

Tôi thậm chí còn đưa phong cách nội tuyến để đảm bảo nó vẫn trắng trên nền đen: <span style="font-size: 1.5em;padding: 0.5em 0;text-transform: uppercase; font-weight:bold;color:#FFFFFF;text-decoration:none;">EXTRANET.EXAMPLE.COM</span>

Gmail tạo liên kết này, thêm gạch dưới và cũng chuyển thành màu xanh lam sáng thay vì màu trắng dự định.

Lúc đầu, tôi đã thử thay thế các dấu chấm bằng &#46; làm cho nó trông ổn, nhưng không đánh lừa trình phân tích cú pháp của Gmail.

Vì vậy, tôi đã thêm một không gian spanned mà chỉ làm việc tốt (tức là nó đánh lừa phân tích cú pháp của Gmail):

<span style="font-size: 1.5em;padding: 0.5em 0;text-transform: uppercase; font-weight:bold;color:#FFFFFF;text-decoration:none;">EXTRANET<span style="font-size:0.1em">&nbsp;</span>.<span style="font-size:0.1em">&nbsp;</span>EXAMPLE<span style="font-size:0.1em">&nbsp;</span>.<span style="font-size:0.1em">&nbsp;</span>COM</span>

+0

Cách tiếp cận này (đặt không gian hẹp xung quanh dấu câu) phải được chấp nhận là câu trả lời "đúng". Nó hoạt động cho Gmail và Mail.app. Tôi đặt "đúng" trong dấu ngoặc kép vì hành vi của các ứng dụng khách này đòi hỏi phải có một bản hack. :-) – sheldonh

+0

đồng ý với @sheldonh, hoạt động như một sự quyến rũ. – littlealien

0

@raugfer gợi ý trong another answer: quấn email/URL với một neo.

<a name="myname">[email protected]</a> 

Trích dẫn từ câu trả lời rằng:

Kể từ khi văn bản đã được bọc trong một siêu liên kết, Gmail từ bỏ và để nó một mình. :)

(Lưu ý: cũng từng làm việc cho Apple mail của khách hàng.)

0

Đây là những gì tôi đã làm: ""

  • Thay thế tất cả các trường hợp với <span style=""color:transparent; font-size:0px;"">[{</span>.<span style=""color:transparent; font-size:0px;"">}]</span>
  • Thay thế tất cả các trường hợp "@" với <span style=""color:transparent; font-size:0px;"">[{</span>@<span style=""color:transparent; font-size:0px;"">}]</span>

Những nhân vật dừng lại nó phân tích liên kết và địa chỉ email, nhưng không hiển thị cho người dùng. Ví dụ: khi bạn sao chép và dán email, bạn kết thúc bằng: "test1 {[{.}]} Miền {[{.}]} Com"

.

Các vấn đề liên quan