JGit supports the creation of new repositories: See Running the JGit CLI , one of the commands being:
init Create an empty git repository
However, when it comes to "assign users to a repo", this is no longer a git issue, but an authorization system issue.
You need to add an extra layer to your Git setup (whether it is used with JGit or any other Git library) in order to manage the authorization.
I would recommend gitolite.
(and that doesn't include the authentication issue, which isn't covered by JGit or gitolite: see all the issues you might have to cover).