I am writing a Facebook application that needs to post on a friend's wall on behalf of a user, but out of the scope of a canvas application. I have the following:

App ID

App secret

publish_stream permissions for the poster

This should theoretically be enough to do what I want to. What I am currently doing:

Use app ID and app secret to get an OAuth token representing my application (see "Authenticating as an Application" here).

Attempting to publish on my friend's wall using a POST on /friends_wall/feed (see here) and the OAuth token retrieved in step 1.

However, this ends up posting on the friend's wall as the friend rather than the user (the app also has publish_stream permissions for the friend). This isn't too unexpected, as nowhere in this process have I specified who the poster should be.

My question is: Is it possible to obtain an OAuth token for an application representing a user? If not, is there any way to post on user's friend's wall outside the scope of a canvas application?

Be aware that you will be no longer able to post to another user’s wall anymore via API from Feb 6. 2013, see developers.facebook.com/roadmap The only way this will be possible after that point will be using the feed dialog, to have the user actively trigger it.
–
CBroeNov 1 '12 at 18:46