質問編集履歴

4

追記を記述

2019/05/24 02:36

投稿

tsurugi
tsurugi

スコア89

test CHANGED
File without changes
test CHANGED
@@ -81,3 +81,31 @@
81
81
 
82
82
 
83
83
  ご教授のほど、よろしくお願いします。
84
+
85
+
86
+
87
+ ---
88
+
89
+
90
+
91
+ 追記:
92
+
93
+
94
+
95
+ Function isAdmin()を以下のように編集しても、同様にシミュレータでは動作し、実働しません。
96
+
97
+
98
+
99
+ ```
100
+
101
+ function isAdmin(){
102
+
103
+ return exists(path('/databases/$(database)/documents/admin_users/hogehogeUserID' ))//' + request.auth.uid))
104
+
105
+ //この場合、シミュレータ上ではFirebase uIDが未入力でも書き込み権限を得られる
106
+
107
+ }
108
+
109
+
110
+
111
+ ```

3

誤字の修正

2019/05/24 02:36

投稿

tsurugi
tsurugi

スコア89

test CHANGED
@@ -1 +1 @@
1
- Firestoreのルール設定でシュレータでは動作するのに実働しない
1
+ Firestoreのルール設定でシュレータでは動作するのに実働しない
test CHANGED
File without changes

2

シュミレート→シミュレータに変更

2019/05/24 02:13

投稿

tsurugi
tsurugi

スコア89

test CHANGED
@@ -1 +1 @@
1
- Firestoreのルール設定でシュミレーでは動作するのに実働しない
1
+ Firestoreのルール設定でシュミレーでは動作するのに実働しない
test CHANGED
@@ -64,7 +64,7 @@
64
64
 
65
65
 
66
66
 
67
- 現在、`/admin_users/`には`hogehogeUserID`のみが存在しています。シュレーで認証済み項目の[Firebase uID]欄に`hogehogeUserID`と入力し、実行すると問題なくwrite権限が得られます。
67
+ 現在、`/admin_users/`には`hogehogeUserID`のみが存在しています。シュレーで認証済み項目の[Firebase uID]欄に`hogehogeUserID`と入力し、実行すると問題なくwrite権限が得られます。
68
68
 
69
69
 
70
70
 

1

記述の曖昧な点を修正

2019/05/24 02:13

投稿

tsurugi
tsurugi

スコア89

test CHANGED
File without changes
test CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  1. `/posts/{id}`に表示するデータを格納している
6
6
 
7
- 2. `/admin_users/{uID}`にはドキュメント名がユーザーのuIDが登録されている
7
+ 2. `/admin_users/{uID}`には特定のユーザーのuIDが登録されている
8
8
 
9
9
 
10
10
 
@@ -14,7 +14,9 @@
14
14
 
15
15
  1. `/posts/{id}`にあるドキュメントはログインさえしていればreadできる
16
16
 
17
- 2. `/posts/{id}`は`/admin_users/{uid}`が存在していればwriteできる
17
+ 2. `/posts/{id}`は`/admin_users/{uid}`に自身のuIDと同じドキュメントが存在していればwriteできる
18
+
19
+ (例:`/admin_users/`に`hogehogeUserID`というドキュメントのみが存在する場合、`hogehogeUserID`というuIDを持つユーザーは`/posts/{id}`を編集できる。`exampleUserID`のuIDを持つユーザーは編集できない。)
18
20
 
19
21
 
20
22
 
@@ -62,7 +64,7 @@
62
64
 
63
65
 
64
66
 
65
- 現在、`/admin_users/`には`hogehogeUserID`のみが存在しています。シュミレートで`hogehogeUserID`と入力すると問題なくwrite権限が得られます。
67
+ 現在、`/admin_users/`には`hogehogeUserID`のみが存在しています。シュミレートで認証済み項目の[Firebase uID]欄に`hogehogeUserID`と入力し、実行すると問題なくwrite権限が得られます。
66
68
 
67
69
 
68
70
 
@@ -70,11 +72,11 @@
70
72
 
71
73
  `FirebaseError: Missing or insufficient permissions.`
72
74
 
73
- (実環境でもuIDは`hogehogeUserID`であっていると考えてください)
75
+ (実環境でもuIDは`hogehogeUserID`であると考えてください)
74
76
 
75
77
 
76
78
 
77
- `isAdmin()`を外すと問題なく動作するので、`isAdmin()`が悪さをしているのはわかったのですが、これのどこが問題かはわかりません。
79
+ `isAdmin()`を外すと問題なく動作するので、`function isAdmin()`が悪さをしているのはわかったのですが、これのどこが問題かはわかりません。
78
80
 
79
81
 
80
82