[MONGODB] 유성 방법 대 / 거부 규칙은 허용
MONGODB유성 방법 대 / 거부 규칙은 허용
유성에서 때 나는 거부 규칙을 통해 방법을 선호 하는가?
그것은 허용 / 그들의 목표는 더 명시 적으로있는 한, 규칙을 선호한다 거부 나에게 것, 그리고 그들을 찾기 위해 어디 하나 알고있다.
그러나, 발견 유성 책에서 중복 삽입을 방지이라고해야하는 방법을 통해 정의 (그리고로 남아있을 수있는 ( "중복"그 URL 특성이 이미 같은 모음의 다른 문서에 정의 된 문서를 추가로 정의되는) 독자에게 운동, 장 8.3).
난 내가 훨씬 명확하게 찾을 수있는 방법으로이 검사를 구현할 수라고 생각 :
Posts.deny({
update: function(userId, post, fieldNames, modifier) {
return Posts.findOne({ url: modifier.$set.url, _id: { $ne: post._id } });
}
});
(당신은 예를 알고있는 경우 N.B.는, 그래, 내가 자발적으로 더 구체적으로 질문에서 수표를 "수정 된 속성의 서브 세트"는 탈락.)
본인은 업데이트 운영자가 몽고에서 $ 세트보다가 있다는 것을 이해하지만, 그들은 입력보고 나는 보안 구멍을 열어두고 기분이 안.
그래서 내 거부 규칙에 어떤 결함이 있습니까? 독립적으로, 나는 방법을 선호 하는가? 나는 그것이 무엇을 얻을 것인가? 나는 무엇을 잃을 것인가?
해결법
-
==============================
1.일반적으로 나는 주관적인 답변을 피하려고하지만, 이것은 정말 중요한 논쟁이다. 우선은 발견 유성 블로그에서 클라이언트 측 조작 대 유성 방법을 읽어 보시기 바랍니다 것입니다. 참고 Edthena에서 우리는 독점적으로 분명하게해야한다 이유로 방법을 사용하는 것이.
일반적으로 나는 주관적인 답변을 피하려고하지만, 이것은 정말 중요한 논쟁이다. 우선은 발견 유성 블로그에서 클라이언트 측 조작 대 유성 방법을 읽어 보시기 바랍니다 것입니다. 참고 Edthena에서 우리는 독점적으로 분명하게해야한다 이유로 방법을 사용하는 것이.
제 생각에는, / 더 심미적으로 만족한다 거부 허용, 그러나 그것의 근본적인 약점은 (특히 업데이트에) 권한을 적용입니다. 나는 경우 경우에 클라이언트 측 작업을 추천 할 것입니다 :
MVP를 구축 할 때 제 생각에는, 클라이언트 측 작업을 사용하는 것이 합리적인 선택이지만, 나는 다른 모든 상황에 대한 방법으로 전환 할 것입니다.
갱신 2/22/15
Sashko Stubailo는 허용 / 대체 삽입 / 업데이트 / 삭제 방법과 거부 할 수있는 제안을 만들었습니다.
갱신 6/1/16
유성 가이드는 허용 / 항상 피해야한다 거부 위치를합니다.
from https://stackoverflow.com/questions/27330321/meteor-method-vs-deny-allow-rules by cc-by-sa and MIT license
'MONGODB' 카테고리의 다른 글
[MONGODB] 대규모 분산 시스템에서 UUID 대 ObjectId가의 충돌 확률 (0) | 2019.12.14 |
---|---|
[MONGODB] 중첩 된 문서 MongoDB의에서 합계 (0) | 2019.12.14 |
[MONGODB] 배열 요소에 의해 MongoDB를 정렬 문서 (0) | 2019.12.14 |
[MONGODB] MongoDB를 집계 프레임 워크 | 여러 값을 통해 그룹? (0) | 2019.12.14 |
[MONGODB] MongoDB의에서 업데이트 문서의 수를 제한하는 방법 (0) | 2019.12.14 |