質問編集履歴

2

タイトルを見直し、解決方法の追記

2021/02/12 06:04

投稿

woodcube
woodcube

スコア32

test CHANGED
@@ -1 +1 @@
1
- ASP.NETでUser.Identityに値が無く認証状態が維持できない
1
+ ASP.NETで認証機能を後からの追加で作成した場合、ログインしてもログイン済み状態らな
test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Visual Studio 2019でASP.Net Coreの3.1でWebアプリケーションを作っています。
4
4
 
5
- 認証の機能を入れたのですが、ログインに成功はしているのですが、その後ログインしている状態になっていないようです。
5
+ 認証の機能を後から入れたのですが、ログインに成功はしているのですが、その後ログインしている状態になっていないようです。
6
6
 
7
7
 
8
8
 
@@ -22,7 +22,7 @@
22
22
 
23
23
  6.しかし、表示されるページは、ログインされた状態にはなっていないようです。
24
24
 
25
- (SignInManager.IsSignedIn(User)でUser.Identityに値が無く、Falseに判断されてしまう)
25
+ (SignInManager.IsSignedIn(User)でFalseに判断されてしまう)
26
26
 
27
27
 
28
28
 
@@ -46,7 +46,7 @@
46
46
 
47
47
  <ul class="navbar-nav">
48
48
 
49
- @if (SignInManager.IsSignedIn(User)) //←ここのUserに値が入らないので、Trueにならない
49
+ @if (SignInManager.IsSignedIn(User)) //←ここで、Trueにならない
50
50
 
51
51
  {
52
52
 
@@ -64,7 +64,7 @@
64
64
 
65
65
  ```
66
66
 
67
- 本来ならば、ログイン後は「User」に値が入るようなのですが、入っていないのが原因のようです。
67
+ 本来ならば、ログイン後は「User.Identityの中ユーザ名など値が入るようなのですが、入っていないのが原因のようです。
68
68
 
69
69
  ※プロジェクトを「認証あり」で作成して、ステップ実行で動作を見たら、ログイン処理後にデータが入るというのは確認できました。
70
70
 
@@ -101,3 +101,17 @@
101
101
 
102
102
 
103
103
  以上、よろしくお願いします。
104
+
105
+
106
+
107
+ ### うまくいかなかった原因(改善方法)
108
+
109
+ 回答者の協力により、下記の事で解決しました。
110
+
111
+  → Startup.csの中にapp.UseAuthentication();
112
+
113
+ が足りていないという事がわかりました。
114
+
115
+
116
+
117
+ 最初から認証を行う設定でプロジェクトを作成した場合は、自動で入るのですが、後で追加した場合は手入力する必要があるようです。

1

得られていない情報を正確に書き直しました(User→User.Identity)

2021/02/12 06:04

投稿

woodcube
woodcube

スコア32

test CHANGED
@@ -1 +1 @@
1
- ASP.NET SignInManager.IsSignedIn(User)のUserに値が入っていない
1
+ ASP.NETでUser.Identityに値が無く認証状態が維持できない
test CHANGED
@@ -21,6 +21,8 @@
21
21
   (例えばパスワードを間違えるとエラーになる)
22
22
 
23
23
  6.しかし、表示されるページは、ログインされた状態にはなっていないようです。
24
+
25
+ (SignInManager.IsSignedIn(User)でUser.Identityに値が無く、Falseに判断されてしまう)
24
26
 
25
27
 
26
28