2016-07-08 10 views
0

私は現在、AngularJSでWebアプリケーションを開発しており、ログインシステムには次の質問があります。クッキーにログインするために使用したユーザー名のような情報を保存するのは安全ですか?Angular with cookies

私がログインしたときに、ユーザー名またはIDを保存したい場合は、クッキーに同じであるため、ユーザーが異なるリンク間を移動するたびに、データベースからさらに情報を読み込むことができます。 AngularがCookieのエディションを保護しているか、言い換えれば、このCookieの値が正しいと信じるべきかどうかわかりません。

たとえば、このコードを使用すると、安全ですか?

var request = { 
     url: 'backend/getCharacters.php?user=' + $cookies.get('username'), 
     method: 'GET' 
    }; 

    $http(request).then(function(response) { 
     if(response.status == 200) 
      // Get character list 
     else 
      alert('Something went wrong.'); 
    }); 
+0

私はあなたがユーザーをすることによって、ユーザを識別したり、トークンを生成し、その値と身元を確認することができる何かを暗号化しますいいえ。 IDをクッキーとして保存するだけであれば、ユーザーが望む任意のIDに簡単に変更できます。 – Dylan

+0

ユーザー固有のデータを検索するためにクッキーを使用するIMOは安全ではありません。ユーザーがクッキーを簡単に変更できるようにしてから、アプリが他のユーザーのデータを取得します。私があなたであれば、クライアントがデータを要求するとサーバーがハッシュを復号化し、適切なIDでクエリを実行するように、サーバーのキーでIDにハッシングを追加します。彼らがハッシュを変更すると、サーバ上で無効になり、返されたデータはない –

+0

チェックの答え。それが働いているかどうかを教えてください – Developer

答えて

-1

ngCookiesを関数に宣言する必要があります。以下の例を見て、angularjsのクッキーを使用する方法についてもっと理解することができます。私はこれらのリソースが欲しいと願っています。

このコードを使用してください。私はそれがあなたのために働くことを願っています。

angular.module('myApp', ['ngCookies']); 
function CookieCtrl($scope, $cookieStore) { 
    var tabname = [{'KaluSingh'}]; // tabname contains username 
    $cookieStore.put('username', tabName); 
    }; 
var request = { 
    url: 'backend/getCharacters.php?user=' + $cookies.get('username'), 
    method: 'GET' 
}; 

$http(request).then(function(response) { 
    if(response.status == 200) 
     // Get character list 
    else 
     alert('Something went wrong.'); 
}); 

stackoverflow.com/questions/10961963/how-to-access-cookies-in-angularjs

https://docs.angularjs.org/api/ngCookies/service/$cookies

https://docs.angularjs.org/api/ngCookies