【问题标题】:Android: Application level permissionAndroid:应用程序级权限
【发布时间】:2013-03-12 06:24:55
【问题描述】:

我已经创建了一个应用程序“TestApp”,其中包含一个内容提供程序。内容提供者共享对所有其他应用程序的数据库访问。 android中是否有一种机制只允许少数其他具有特定类型权限的应用程序访问“TestApp”的内容提供者?

我不希望没有特定权限的应用程序访问“TestApp”的内容提供者。

作为一个新手,我不知道提出的问题应该具有的标准。

请帮忙。

【问题讨论】:

  • 想想如果其他应用不属于那些可以实际使用这些数据的应用,它们会如何处理您的应用数据。
  • 我的问题是我不希望我的内容提供商公开。我希望只有少数应用程序(具有特殊权限)可以使用它,而其他应用程序受到限制。
  • 一般你应该添加你使用过的。 Here, read this.
  • @ProfPickle :我会记住的。谢谢。

标签: android android-contentprovider android-permissions


【解决方案1】:

您可以考虑在您的应用程序中提供自定义权限。

Custom permission question in stackoverflow

Developer.android.com

请注意,这可能会给您的应用程序带来安全问题。

【讨论】:

    【解决方案2】:

    执行此操作的常用方法是在您的permission 上设置android:protectionLevel="signature"。这将限制访问仅使用与声明权限的应用程序相同的证书签名的应用程序。这些应用程序可能会声明一个<uses-permission> 标签以获得访问权限。

    另见一般security tips 文章。

    也就是说,小心你用这个保护的东西。它将阻止用户安装的随机应用程序访问您的数据,但如果用户真的希望绕过这些保护,则不会。如果用户想要让应用程序能够规避这一点,那么用户可以这样做。这仅在通常的安全措施生效时防止其他应用程序获得访问权限。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-20
      • 2012-07-11
      • 1970-01-01
      • 1970-01-01
      • 2018-01-02
      • 1970-01-01
      • 1970-01-01
      • 2016-05-28
      相关资源
      最近更新 更多