2016-06-22 6 views
1

firebase 참조를 생성하고 firebase 인증을 통해 인증 된 상태에서 해당 참조의 스냅 샷을 만들면 로그 아웃됩니다.Firebase 참고 자료 - 로컬 인증

요구 사항 :

  1. 페이지를 다시로드 할 수 없거나 힘이
  2. 사용자에게 accessable 한이었다 데이터 만 삭제해야
  3. 가 명확하지 중포 기지 세션 또는 모든 데이터를 다시로드해야합니다 수 로그 아웃 한 후 다시로드 일반 사용자가 아님
  4. 다른 사용자가 로그 아웃 한 후 에스컬레이션되지 않은 사용자 또는 게스트 사용자와 동일한 그룹에 있거나 소유 된 데이터를 다시로드해야합니다.

일반적으로 리눅스에서 볼 수있는 것처럼 사용자 그룹 및 기타 권한 속성을 제공 할 내 참조를 래핑하는 개체를 만드는 것이 좋습니다. 이렇게하면 그룹 및 사용자 세부 정보를 제공하는 현재 사용자 개체를 기반으로하여 로컬 데이터를 비활성화하거나 지울 수 있습니다.

표준 방법이 있습니까? 필요한 것보다 더 많은 작업을하고 있습니까?

나중에 firebase에서 제공하는 메타 데이터로 대체 할 클라이언트 측의 권한이있는 그룹에 대한 지식을 하드 코딩합니다. 나는 결국 사용자 아이디로 특정 사용자가 사용할 수있는 모든 참조를 추적 할뿐만 아니라 공개적으로 사용할 수있는 참조를 추적 할뿐만 아니라 가장 높은 권한이 우선 순위를 갖는 특정 그룹에서 사용할 수있는 참조를 다시 추적 할 계획입니다.

1 단계는 클라이언트 측 참조를 관리하고 인증 변경 검사를 작성한 다음 현재 인증에서 제공된 사용자 세부 정보를 활용하여 인증 변경이 필요한 경우 변경 사항을 적용하는 방법입니다. 해당 스냅 샷에 대해 서버에 대한 다른 호출을 시작하는 것이 더 쉽습니다. 스냅 샷이 더 이상 권한을 부여받지 못하면 변경됩니까?

답변

1

자신의 앱을 제어하고 환경 설정 기반 스냅 샷 (또는 데이터 저장 여부)은 앱 컨트롤 아래에 있습니다. 로컬 저장소가 앱 (개인 설정이나 기타와 같이 Android OS에 의해 기본적으로 보호되는지 여부)에 대해서만 보호된다고 가정하면 현재 인증 된 사용자의 사용자 ID로 로컬 캐시를 저장할 수 있습니다. 따라서 앱은 인증 된 사용자가 캐시의 사용자 ID와 일치하는지 확인하고 일치하지 않으면 액세스가 거부됩니다. 사실, 로컬 캐시는 로그인 한 사용자가 최소한으로 키를 입력해야하므로 무료로 그런 종류의 검사를받을 수 있습니다 (기본적으로 스냅 샷 데이터는 찾을 수 없습니다).