Android DeepLink从安全角度如何工作?
我正要经历“ Android Deeplink ”的不同介绍。 在这里,我有一个有关其安全性的问题。
据我所知,我可以创建一个意图过滤器,可以说 www.myapp.de/goto 。 如果用户单击链接,这将使我的应用程序进入我的应用程序。
我也是 www.myapp.de 的所有者。
即使域是我的域,也可以阻止其他开发人员在其应用程序中使用Deeplink,打开其应用程序?
因此,在这种情况下,我可以为
这对我没有意义。我对deeplinks有什么问题。
I was just about to go through different ressources of "Android Deeplink".
Here i have a question regarding the security of it.
As i understood i can create an intent-filter, lets say for www.myapp.de/goto.
This will put a user into my app, if he clickes a link.
As well i am the owner of www.myapp.de.
How can a different developer be prevented from using a deeplink in his app, opening his app, even if the domain is mine?
So in this case i could register an intent-filter for www.google.de/open/ which will cause android to open my developed app?
This makes no sense to me. What am i getting wrong about deeplinks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
其他开发人员可以为您的URL创建一个深层链接,您无能为力。
如果多个应用程序可以处理与深链路相同的URL,则Android OS将询问用户要使用哪些应用程序打开它。
您可以将Deeplink升级到应用程序链接。您可以将应用程序的公共签名上传到您的URL。这样,Android可以验证深链路URL的所有者。
使用应用链接的应用程序将自动打开用于验证URL的URL。因此,即使安装了处理相同URL的其他应用程序,它们也将是首选选项。
Other developers can create a deep link for your URL and there is nothing you can do about it.
If multiple apps can handle the same URL as a deep link, the android OS will ask users with which apps they want to open it.
You can upgrade a deeplink to an app link. You can upload the public signature of your app to your URL. This way android can verify the owner of a deep link URL.
Apps that use app links will automatically open a URL for a verified URL. Therefore they will be the preferred option even if other apps are installed that handle the same URL.
创建一个数字资产链接JSON 您的软件包名称和SHA256_CERT_FINGERPRINT在文档中如文档中所示。
如果您的发行版和调试构建具有不同的软件包名称,则需要使用相应的软件包名称和SHA_256指纹的JSON中的条目,以确保调试和发行版构建的功能。
如果启用 Google Play应用程序签名Google证书的数字资产JSON进行发布。您可以在App App Integrity中找到Google Play游戏机中的指纹。还有一个自动创建的用于您的应用程序的数字资产链接-JSON文件,您可以直接使用它。
Create a Digital Asset Links json and put your package name and sha256_cert_fingerprints in the file like in the documentation.
If you have different package names for your release and debug builds then you need for both an entry in json with corresponding package name and sha_256 fingerprint to ensure the functionality on both debug and release build.
If you enabled Google Play App Signing then you must put the sha_256 fingerprint of googles certificate into your digital assets json for release builds. You can find the fingerprint in google play console in section app integrity. There is also an automatically created Digital Asset Links-JSON file for your app, which you can directly use.