You can assign a key to each group, yes. But not unique seat count or time limits. That can only happen when the initial self-enrollment method is applied to the course. It is possible to add multiple self-enrollment methods to the same course, and thus protect it from multiple organizations wanting to take your course.
There's just one problem.