swift - How to safely pass user access token (sensitive data) to another iOS app when deep-linking -
i working on ios app handle user login other apps. when login successful user redirected user's selected app (if installed) ios deep linking using url schemes. upon redirect pass user access token opening app. receiving app should somehow entitled read token. not option pass in url because of following (from apple docs https://developer.apple.com/library/content/documentation/iphone/conceptual/iphoneosprogrammingguide/inter-appcommunication/inter-appcommunication.html):
"if more 1 third-party app registers handle same url scheme, there no process determining app given scheme."
which means arbitrary app may open , receive user access token. encrypt token , receiving app decrypt shared key, not sure if considered safe way.
i idea of sharing user access token via keychain sharing (keychain group) described here: http://evgenii.com/blog/sharing-keychain-in-ios/, seems work when apps developed using same team (using same app id prefix), in case there may apps implemented other developers. looks not work.
could suggest ideas how pass user access token app(s) safely? safely meaning apps entitled receive information receive it.
Comments
Post a Comment