1. A computer implemented method, comprising: generating, using a processor of a computer, a teamspace template, from a teamspace template embedded database, including one or more teamspace characteristics and one or more user roles; provisioning, using the processor of the computer, a teamspace instance from a snapshot of the generated teamspace template using the one or more teamspace characteristics and the one or more user roles; creating, using the processor of the computer, a teamspace embedded database using a copy of the teamspace template embedded database and an access control list; and in response to receiving a new artifact for the teamspace instance, storing an identifier of the artifact in the teamspace embedded database, wherein the access control list is used to determine access to the artifact.