Social/Accounts Framework: Support for Arbitrary OAuth Services

Originator:daniel
Number:rdar://11739368 Date Originated:25-Jun-2012 08:36 PM
Status:Open Resolved:
Product:iPhone SDK Product Version:6.0
Classification:Feature (New) Reproducible:Not Applicable
 
Summary:
SLRequest and ACAccount provide almost everything that’s necessary for a unified OAuth infrastructure on iOS. Unfortunately, only Twitter, Facebook, and Weibo are supported in the current implementation, and support for additional services requires an OS update.

Therefore, it would be great, if third party clients could participate in this infrastructure by providing the following information about the service(s) they hook into:
- unique identifier for use in +[SLRequest requestForServiceType:requestMethod:URL:parameters:]
- name of the service
- an icon for the service
- version of the service description
- OAuth protocol version to use
- OAuth client id or consumer token and secret
- URIs for the endpoints of the authentication handshake
- URI of the Terms and Conditions/Privacy Statement of the service
- (optionally) list of supported sharing types e.g. text, URL, image, video (only necessary when the service wants to participate in the sharing panel)
- (optionally) a label and account-prefix for use in the Contacts app (prefix might be undefined)
- (optionally) NIB for customizable portion of the top bar of the sharing sheet
- (optionally) App Store URI for the canonical client on the App Store

This information could be contained in a signed bundle whose identifier was to be mentioned in an app’s Info.plist, and which could be created/managed in the provisioning portal not unlike App IDs and Pass Type IDs are.

That way, the provider of a web service could distribute this signed bundle to third parties for inclusion in their apps, avoiding the risk of having multiple entries for a single service, while preserving control over what services are allowed for Apple.


Steps to Reproduce:
Not Applicable

Expected Results:
Bells, Whistles, and Cowbell

Actual Results:
Not Applicable

Regression:
Not Applicable

Notes:

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!