- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我开发了一个应用程序,其中组织的所有流程都将在线处理。有一些流程是手动运行的,需要时间,现在要在线批准或拒绝。
假设有一份文件将由 HR ---> ADMIN ---> CEO 批准。
现在,当有人发起请求申请时,会向人力资源经理发送两个链接,分别是批准或不批准,HR 可以通过单击这些链接来执行他们的操作。
如果人力资源经理将此链接发送给其他人,那么,该人也可以批准或不批准该流程,尽管他不是合适的人选。
我可以通过在这两个链接上实现身份验证过程来阻止它,而不是每个权限都必须登录应用程序。这是我不想要的。
有什么方法可以让我选择点击该链接的人的电子邮件 ID,以便我可以比较后端的电子邮件地址吗?
最佳答案
据我所知,您有 3 种可能的方法来做到这一点:
<小时/>我认为这是最好的方法,因为您可以确定应该批准该流程的人就是实际批准该流程的人。
这种方法的缺点是用户必须登录,但您可以通过一种他们很少需要登录的方式来实现这一点,例如他们可以每月一次或更长时间保持登录状态。
<小时/>这基本上就是您提到的方法以及您提到的缺点,即某人可以转发电子邮件,然后其他人可以批准它。
在您的情况下,实现此目的的唯一方法是自上而下强制执行,因为如果将此类电子邮件发送给其他人,管理层可能会受到处罚。但这很少是一个好的策略,而且很难执行。
<小时/>我认为这种方法可能最接近您正在寻找的方法,但作为免责声明,我之前没有测试过类似的方法。
您可以设置链接,单击它们将打开一个新的邮件屏幕,其中填充了某些内容,例如您可以填充主题和要发送邮件的地址。
示例链接:<a href="mailto:approvedisapprove@system.com?Subject=Approve%20%5BIDNumberHere%5D&body=UniqueID%3D123456" target="_top">Approve</a>
然后,在您创建的系统中,您必须监视该邮箱,然后解析收到的任何电子邮件,使用发件人地址验证是否是正确的人发送了电子邮件。
这种方法的一个重要注意事项是电子邮件中的发件人地址很容易被欺骗,因此如果您想采用这种方法,我建议至少在电子邮件中添加某种随机 token ,这将在后端进行验证。
即使有唯一的 token ,也存在另一种攻击向量,尽管这需要一些工作。假设系统向 Alice 发送了一封邮件,因为她需要批准或不批准某件事,她将邮件转发给 Bob。 Bob 无法点击链接并按原样发送电子邮件,因为系统会看到它来自他的电子邮件地址,但 Bob 可以做的是点击链接查看主题应该是什么,然后欺骗 Alice 的使用欺骗网站发送电子邮件。然后系统会按顺序看到所有内容,因为它看起来像是来自 Alice 的电子邮件。
欺骗站点示例:https://emkei.cz/
关于javascript - 有什么办法可以获取在outlook上点击链接的人的电子邮件地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54124095/
我正在尝试从如下所示的变量中提取一些内容: v1 ","person 2 ") (该变量有数百个观察值) 我想最终创建第二个变量来提取他们的电子邮件以提供以下输出: v2 ","person 2 ")
当您添加 facebook 连接以允许 facebook 用户登录您的站点时,您可以取消用户名和电子邮件地址吗? 最佳答案 是的,您需要先提示他们“电子邮件”数据权限。 Facebook 也在很快改变
我们正在寻求建立一个专门用于商业/商业用途的新网站。我们只需要允许“企业”电子邮件地址注册。因此,使用 Gmail、Hotmail、Yahoo 等的用户无法使用这些电子邮件地址申请。 除了创建 gma
我想通过Identity内的Claim访问我的电子邮件地址 我尝试访问为: var email = User.Identity.GetClaimsByType("emailaddress").ToSt
我正在使用 Hammock 库和 C# 从以下帖子中的链接获取用户的基本配置文件和电子邮件地址 here . 我也关注了这些帖子 here和 here 然而,对于我来说,我无法获得 linkedin
我正在使用 Hammock 库和 C# 从以下帖子中的链接获取用户的基本配置文件和电子邮件地址 here . 我也关注了这些帖子 here和 here 然而,对于我来说,我无法获得 linkedin
我正在尝试制作一个应用程序,通过获取 json 编码数组来从 SQL 数据库获取数据。 它获取地址数据和其他类型的数据,然后将其传递给 Mapkit map View 元素和一些标签/ TextVie
当使用钥匙串(keychain)和证书助手从现有 CA 申请证书时,所有说明都说我应该单击“保存到磁盘”选项,并且不需要“CA 电子邮件地址”。 我看到的面板没有提供“保存到磁盘”选项,当我尝试在没有
我的问题不在于我无法将电子邮件保存到数据库中。任何人都可以做到。这是我的问题: 当用户在我的网站上创建帐户时,他们会获得 ID、用户、密码和电子邮件地址数据。对于密码,我对其进行哈希处理,这样如果有人
我想向非 ASCII 电子邮件地址发送电子邮件,但我不确定使用 JDK8 的推荐程序是什么。 我应该如何处理以下电子邮件地址? Dörte@example.com test@Sörensen.de D
我想阻止用户: 从第一个文本框复制粘贴到第二个 右键单击并使用上下文菜单将第一个文本框复制并粘贴到第二个文本框。 这是行不通的。 Confirm email page
我正在使用两个不同的 Git 存储库(即 github 和 stash),我想为每个存储库使用不同的电子邮件地址。我知道我可以使用 git config 但我不想每次创建新工作区时都必须记住这样做。所
类似于this question ,但不确定在这种情况下如何实现。 受信任的用户(不需要关心验证输入)正在将电子邮件地址键入/粘贴到文本字段中。在模糊事件中,我想查看文本并清理他输入的任何内容(通常是
我正在使用以下代码使用 VBA 发送电子邮件。但是,没有发送电子邮件......我认为这是由于 '.To = ' 代码行中有多个电子邮件地址。有没有办法调整代码以允许多个电子邮件地址? 我试过看 Ro
我正在尝试制作一个脚本,该脚本将在整个网页中搜索以@xyz.com 结尾的电子邮件地址。例如: $(document).ready(function() { $("body:contains(
我们正在使用Office 365,并且遇到了创建重复帐户的问题。这会导致在用户地址上添加数字(john.doe@c0mpany.onmicrosoft.com也将是john.doe5826@c0mpa
我的类型是用户:电子邮件和用户名。 电子邮件字段设置为字符串类型,并使用自定义分析器“exact_lower”: index.analysis.analyzer.exact_lower: type
这个问题已经有答案了: Delete a specific user from Firebase (6 个回答) 已关闭 3 年前。 我正在建立一个网站,其中某个“管理员”用户可以删除任何其他用户的帐
我已经完成 Facebook 登录,但我不知道如何获取电子邮件地址并以其他形式显示它 所以,这就是代码 private void nextActivity(Profile profile){
我有一个付费应用程序,安装后用户可以使用购买该应用程序的电子邮件地址进行注册。 我想知道这个电子邮件地址是否从Google Play购买了我的应用(验证),否则拒绝其注册。有什么办法(API)? 最佳
我是一名优秀的程序员,十分优秀!