Angular Azure移动服务客户端API密钥用法

时间:2015-08-22 02:30:25

标签: angularjs azure azure-mobile-services

我正在考虑将Angular Azure Mobile Service Client用于项目,我看到了这个示例代码:

 angular.module('your-module-name').constant('AzureMobileServiceClient', {
    API_URL : 'https://<your-api-url>.azure-mobile.net/',
    API_KEY : '<your-api-key>',
  });

在像这样的AngularJS应用程序(或任何基于JavaScript的客户端)中使用API​​ Key是否安全?我不确定如果他们有这个钥匙,有什么人可能做的?

2 个答案:

答案 0 :(得分:2)

在Azure移动服务文档中找到this

  

使用默认权限,拥有应用密钥的任何人都可以调用自定义   API。但是,应用程序密钥不被视为安全   凭证,因为它可能无法安全地分发或存储。   考虑限制仅对经过身份验证的用户的访问权限   安全

答案 1 :(得分:1)

安全&#39;取决于你想要做什么。每个人都可以阅读Javascript及其中的任何键。这是关键,并不意味着用作访问重要信息的密码。相反,它是为了防止恶意滥用您的应用程序。

例如,如果某人尝试使用每个可能的密码/用户名组合每秒登录1,000次,则他们会在每次请求时提交此密钥。因此,您可以使用此密钥限制或阻止任何人。然后,您将为您的应用发出新密钥。如果您有一个发布这些密钥的系统,您甚至可以识别正在执行该密钥的人。 它可以阻止DDOS,Bruteforce和其他一些滥用行为