0
알려진 응용 프로그램 ID 집합에서 오는 요청 만 허용하도록 콘텐츠 공급자에 필터를 추가 할 수 있습니까? 예를 들어 com.domain1.app1 및 com.domain2.app2가 신뢰할 수있는 두 개의 앱인 경우 내 데이터를 읽게하고 싶습니다. 다른 신청서는 외부에 보관해야합니다. 의도 필터와 비슷하지만 다른 응용 프로그램의 들어오는 요청과 관련이 있습니다.Android : ContentProvider에 대한 액세스를 제한하는 방법
나는 동일한 서명 키를 알고 있지만 필요한 것은 아닙니다.
Android 용으로 구운 것은 없습니다. 관련'ContentProvider' 메소드 (예 :'query()') 내에서'Binder.getCallingUid()'을 시도해보고 호출자의 UID를 제공하는지 확인하십시오. 그렇다면,'PackageManager'와 함께 그것을 사용하여 그 UID와 연관된 어플리케이션 ID를 결정할 수 있습니다. 그러나'Binder.getCallingUid()'가'ContentProvider'에서 작동하는지 잊어 버립니다. 그래서 이것이 작동하는지 확실하지 않습니다. – CommonsWare
가능한 [Android Content Providers]의 복제본 - 제공자가 내게서 작성하지 않은 일련의 애플리케이션으로 제한 할 수 있습니까?] (http://stackoverflow.com/questions/9132360/android-content-providers-is-it- 가능한 한 공급자를 제한 할 수 있음). 어쨌든 [Binder.getCallingUid()를 사용하여 [ContentProvider and getCallingUid()] (https://groups.google.com/forum/#!topic/android-security-discuss/gl9pxKjH6yE)에 따라 작동해야합니다. – Marten