回答編集履歴
3
検証環境の構築
answer
CHANGED
@@ -27,5 +27,27 @@
|
|
27
27
|
- [PHP: 基本的な使用法 - Manual](https://www.php.net/manual/ja/session.examples.basic.php)
|
28
28
|
- [Chrome DevTools | Tools for Web Developers | Google Developers](https://developers.google.com/web/tools/chrome-devtools/?hl=ja#network)
|
29
29
|
|
30
|
+
### 検証環境の構築
|
30
31
|
|
32
|
+
> 参考に実装を試してみようと思いますが、実装するにあたって何か必要なツールを事前にインストールする必要はありますでしょうか?
|
33
|
+
|
34
|
+
**PHPマニュアル**を参照して下さい。
|
35
|
+
|
36
|
+
- [PHP: 必要なものは? - Manual](https://www.php.net/manual/ja/tutorial.requirements.php)
|
37
|
+
|
38
|
+
> ここでは、貴重なネットワーク帯域を節約するために、 ローカルに開発を行うことにしましょう。この場合、 » Apache のような Web サーバーと、 当然、» PHP をインストールすることになります。また、多くの場合には、 » MySQL のようなデータベースもインストールすることになるでしょう。
|
39
|
+
|
40
|
+
「PHPマニュアル」は序章から順番に読んでいけば、インストールにも触れていますので、一通り読むことをお勧めします。
|
41
|
+
|
42
|
+
- [PHP: PHP マニュアル - Manual](https://www.php.net/manual/ja/)
|
43
|
+
|
44
|
+
Webサーバは最近では「nginx」も人気が高いようですが、私は詳しくないので、「Apache」「nginx」をWeb検索して情報量の多い方をインストールする事をお勧めします。
|
45
|
+
|
46
|
+
- [apache インストール - Google 検索](https://www.google.com/search?q=apache+%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB&ie=UTF-8)
|
47
|
+
- [nginx インストール - Google 検索](https://www.google.com/search?q=nginx+%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB)
|
48
|
+
|
49
|
+
Chrome Developper Tools等の [Network] タブでは情報量が不足している場合は、Fiddlerをインストールしてみて下さい。
|
50
|
+
|
51
|
+
- [Fiddler - Free Web Debugging Proxy - Telerik](https://www.telerik.com/fiddler)
|
52
|
+
|
31
53
|
Re: mie.8 さん
|
2
目的と打開策
answer
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
### セッションと認証情報
|
2
|
+
|
1
3
|
> IDとパスワードを盗み取りたいとは書いてません。(言ってません。)
|
2
4
|
> 認証情報は、どうやって取得するかを聞いてます。
|
3
5
|
|
@@ -7,7 +9,23 @@
|
|
7
9
|
`XMLHttpRequest`, `fetch` 等によって、JavaScriptからリクエストを投げるならヘッダを取れますが、自身がリクエストしていない通信のHTTPヘッダを取る方法は私の知る限りではありません。
|
8
10
|
(取れたら、それこそ盗み放題ですし、安心して外部ドメインの外部jsを参照出来ません。)
|
9
11
|
|
12
|
+
### 目的と打開策
|
13
|
+
|
10
14
|
「HTTPヘッダを得て、何をしたいのか」を明らかにして下さい。
|
11
15
|
現状では、別の方法を模索することも出来ません。
|
12
16
|
|
17
|
+
> ユーザーがログインする時に、「今月のお買い物金額情報」を付与され認証されるとします。
|
18
|
+
> その情報をログイン後、ユーザーのTOPページに表示したく、認証情報の取得を行いたかったです。
|
19
|
+
|
20
|
+
認証を行うのは「サーバ」で、「今月のお買い物金額情報」を持っているのも「サーバ」です。
|
21
|
+
特定の通信リクエストを投げたら、「今月のお買い物金額情報」を返すコードをサーバサイドスクリプトで書いて下さい。
|
22
|
+
Web StorageやCookieにセッションIDを置く設計にすれば、認証は問題ないと思います。
|
23
|
+
|
24
|
+
セッションとブラウザの挙動を把握されていないようなので、セッションを使ったWebページを作って、ブラウザの動きを確かめてみる事をお勧めします。
|
25
|
+
ブラウザ付属のDevelopper Toolsの [Network] タブでHTTPヘッダを確認可能です。
|
26
|
+
|
27
|
+
- [PHP: 基本的な使用法 - Manual](https://www.php.net/manual/ja/session.examples.basic.php)
|
28
|
+
- [Chrome DevTools | Tools for Web Developers | Google Developers](https://developers.google.com/web/tools/chrome-devtools/?hl=ja#network)
|
29
|
+
|
30
|
+
|
13
31
|
Re: mie.8 さん
|
1
typo修正
answer
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
HTTPリクエストヘッダを読みとるという事は、ログイン時の認証情報(生データ)を参照する事なので、盗むことか可能です。
|
5
5
|
本来、セッションは**認証情報をクライアント側に渡さない為の仕組み**であり、「JavaScriptでHTTPヘッダを参照したい」がその用途に反する目的だったので、意図を尋ねました。
|
6
6
|
|
7
|
-
`XMLHttpRequest`, `fetch` 等によっ
|
7
|
+
`XMLHttpRequest`, `fetch` 等によって、JavaScriptからリクエストを投げるならヘッダを取れますが、自身がリクエストしていない通信のHTTPヘッダを取る方法は私の知る限りではありません。
|
8
8
|
(取れたら、それこそ盗み放題ですし、安心して外部ドメインの外部jsを参照出来ません。)
|
9
9
|
|
10
10
|
「HTTPヘッダを得て、何をしたいのか」を明らかにして下さい。
|