質問編集履歴

3

修正

2019/09/27 10:40

投稿

AMK
AMK

スコア765

test CHANGED
File without changes
test CHANGED
@@ -25,169 +25,3 @@
25
25
 
26
26
 
27
27
  どうすれば認証させられますか??
28
-
29
-
30
-
31
- 追記
32
-
33
- 46行目の `+ "' and password LIKE '" + Login_pw.Text + "'"` の部分で、`Login_pw.Text` には画面から入力されたパスワードが平文で入っています。これで一応認証はできるのですが、平文パスワードを含んだSQLを投げるのは避けたいので、Login_pw.Text のハッシュ(Laravel5.7で生成するハッシュと同じ値)をどうにかして取得したいです。
34
-
35
-
36
-
37
- ```C#
38
-
39
- using System;
40
-
41
- using System.Collections.Generic;
42
-
43
- using System.Linq;
44
-
45
- using System.Text;
46
-
47
- using System.Threading.Tasks;
48
-
49
- using System.Windows;
50
-
51
- using System.Windows.Controls;
52
-
53
- using System.Windows.Data;
54
-
55
- using System.Windows.Documents;
56
-
57
- using System.Windows.Input;
58
-
59
- using System.Windows.Media;
60
-
61
- using System.Windows.Media.Imaging;
62
-
63
- using System.Windows.Navigation;
64
-
65
- using System.Windows.Shapes;
66
-
67
- using MySql.Data.MySqlClient;
68
-
69
- using System.Data;
70
-
71
-
72
-
73
- namespace Login
74
-
75
- {
76
-
77
- /// <summary>
78
-
79
- /// MainWindow.xaml の相互作用ロジック
80
-
81
- /// </summary>
82
-
83
- public partial class LoginWindow : Window
84
-
85
- {
86
-
87
- public LoginWindow()
88
-
89
- {
90
-
91
- InitializeComponent();
92
-
93
- }
94
-
95
-
96
-
97
- private void Login_Button_Click(object sender, RoutedEventArgs e)
98
-
99
- {
100
-
101
-
102
-
103
- //サーバー接続情報
104
-
105
- string sLogin = "server=118.xx.xx.xx; database = abc; userid=root; password=xx112345; ";
106
-
107
-
108
-
109
- //サーバー接続
110
-
111
- try
112
-
113
- {
114
-
115
- MySqlConnection connection = new MySqlConnection(sLogin);
116
-
117
- connection.Open();
118
-
119
- //MessageBox.Show("接続しました");
120
-
121
- // データを格納するテーブル作成
122
-
123
- DataTable dt = new DataTable();
124
-
125
-
126
-
127
- // SQL文と接続情報を指定し、データアダプタを作成
128
-
129
- using (MySqlDataAdapter da = new MySqlDataAdapter("SELECT * FROM users WHERE email LIKE '"+Lgin_id.Text+ "' and password LIKE '" + Login_pw.Text + "'", connection))
130
-
131
- {
132
-
133
-
134
-
135
- // データ取得
136
-
137
- da.Fill(dt);
138
-
139
-
140
-
141
- // ログイン判定 <データの個数が1ならログイン成功>
142
-
143
- int rowcount = dt.Rows.Count;
144
-
145
-
146
-
147
- if (rowcount == 1)
148
-
149
- {
150
-
151
- MessageBox.Show("ログイン成功", "認証結果");
152
-
153
- }
154
-
155
- else
156
-
157
- {
158
-
159
- MessageBox.Show("ログイン失敗", "認証結果");
160
-
161
- }
162
-
163
- }
164
-
165
-
166
-
167
-
168
-
169
- connection.Close();
170
-
171
- }
172
-
173
- catch (MySqlException me)
174
-
175
- {
176
-
177
- MessageBox.Show("ERROR: " + me.Message);
178
-
179
- }
180
-
181
-
182
-
183
- }
184
-
185
-
186
-
187
- }
188
-
189
- }
190
-
191
-
192
-
193
- ```

2

追記

2019/09/27 10:40

投稿

AMK
AMK

スコア765

test CHANGED
File without changes
test CHANGED
@@ -30,21 +30,7 @@
30
30
 
31
31
  追記
32
32
 
33
- 認証がLaravel5.7でパスワード生成ハッシュ化されている)していまして
34
-
35
- C#のプログラムからパスワードを入力したときに
36
-
37
- ハッシュ化されたパスワードをどうしたら認証させられるのか?が知りたいです。
38
-
39
-
40
-
41
- C#で解決できる問題なのか?Mysqlで解決できる問題なのか?Laravelで解決できる問題なのか?
42
-
43
- 見当がついていません。
44
-
45
-
46
-
47
- 現状のコードは平文だと認証します。
33
+ 46行目の `+ "' and password LIKE '" + Login_pw.Text + "'"` の部分で、`Login_pw.Text` には画面から入力されたパスワードが平文で入っています。これで一応認証はできるのです、平文パスワードを含んだSQLを投げるのは避けたいので、Login_pw.Text のハッシュ(Laravel5.7で生成するハッシュと同じ値をどうにかして取得したです。
48
34
 
49
35
 
50
36
 

1

説明追加

2019/09/26 13:11

投稿

AMK
AMK

スコア765

test CHANGED
File without changes
test CHANGED
@@ -28,6 +28,26 @@
28
28
 
29
29
 
30
30
 
31
+ 追記
32
+
33
+ 認証先がLaravel5.7でパスワード生成(ハッシュ化されている)していまして
34
+
35
+ C#のプログラムからパスワードを入力したときに
36
+
37
+ ハッシュ化されたパスワードをどうしたら認証させられるのか?が知りたいです。
38
+
39
+
40
+
41
+ C#で解決できる問題なのか?Mysqlで解決できる問題なのか?Laravelで解決できる問題なのか?
42
+
43
+ 見当がついていません。
44
+
45
+
46
+
47
+ 現状のコードは平文だと認証します。
48
+
49
+
50
+
31
51
  ```C#
32
52
 
33
53
  using System;