2015-05-10 13 views
5

Mam token JWT, który chciałbym przechowywać w pliku cookie. Plik cookie musi mieć ustawiony co najmniej HttpOnly flag, ale chciałbym również ustawić flagę Secure na true.Jak ustawić flagę httpOnly w pliku ngCookies?

Od kątowych docs wiem, że mogę przechowywać moje tokenu w ciasteczkach tak:

// using 'ngCookies' 

createToken(jwt_token) { 
    $cookies.put('jwt', jwt_token); 
}, 
retrieveToken() { 
    return $cookies.get('jwt'); 
} 

Ale to nie jest jasne, w jaki sposób mogę określić HttpOnly i bezpieczne flagi. The docs say ma pole opcji dla put() i get(), ale then it mentions$cookiesProvider. Nie jestem pewien, jak to pasuje, gdzie powinno być zadeklarowane, czy też musi być ustawione za każdym razem, gdy robię put() lub get()?

Więc byłoby coś takiego:

createToken(jwt_token) { 
    $cookiesProvider['domain'] = 'www.mydomain.com'; 
    $cookiesProvider['secure'] = true; 
    $cookies.put('jwt', jwt_token); 
}, 
retrieveToken() { 
    $cookiesProvider['domain'] = 'www.mydomain.com'; 
    $cookiesProvider['secure'] = true; 
    return $cookies.get('jwt'); 
} 

Albo jest to całkowicie błędne? Nie widziałem żadnej flagi HttpOnly, ale widzę domain, którą ustawiam na www.mydomain.com. Czy to jest równoważne HttpOnly = true?

+0

Możliwy duplikat [Ustaw cookie do HttpOnly pośrednictwem JavaScript] (http://stackoverflow.com/questions/14691654/set-a-cookie-to-httponly-via-javascript) –

Odpowiedz

3

Nie można tego zrobić za pomocą NgCookies, nie można utworzyć pliku cookie z JavaScript, ale alternatywą jest utworzenie kwerendy ajax do serwera, który doda odpowiedź HTTP Set-Cookie.

pokrewne: Set a cookie to HttpOnly via Javascript

Powiązane problemy