External Users will need to be invited to one of two default groups, Site Visitors, or Site members. If a user is not being added from a Microsoft email address, they will need to visit https://signup.live.com, and set their email address up with a live ID.
Once the users have completed this step, and they’ve accessed the site collection, you can grant them access to a sub site by either modifying their permission levels, or through moving them to a specific user group. Otherwise, you can create a unique site collection, invite them to that site collection, and provide access to specified document libraries on the top level; granting this permission within the document library, and providing a link from their site collection.
In order to grant permissions to an External User on a different site collection, you will need to reference the user (someone@example.com, for instance) with the prefix “live.com#” (live.com#someone@example.com). This is the naming convention the tenant environment will use to call this user on another site collection.
Awesome post.