A guest or anonymous user (one who hasn't logged in), can attempt to contribute to the File Exchange using the big orange button on page.

Unfortunately, they won't succeed since they don't have permission and they don't find this out until they try to publish it.

We could avoid this by removing the big orange button if they aren't logged in.
The big orange button is in /template/jmp/widget/file-exchange-upload.ftl. There's a prototype that shows how to detect whether a user is logged in /template/jmp/welcome.ftl.
The orange buttons for Login and Join on the main page of the JMP User Community are only shown if a user isn't logged in.
Here's the relevant section of /template/jmp/welcome.ftl:
<#if user.anonymous>
<div class="col-xs-3 col-xs-offset-1 no-padding">
<a href="/login.jspa" class="btn btn-lg btn-default pull-right margin-bottom-medium btn-block">Log In With Your<br/>SAS Profile</a>
<a href="https://www.sas.com/profile/user/create.htm?returnURL=https://community.jmp.com" class="btn btn-lg btn-default pull-right btn-block">Create a SAS Profile and<br/>Join the Community</a>
</div>
</#if>
After fixing the File Exchange space, we should examine the subspaces for a similar fix.