mirror of
https://github.com/zitadel/zitadel.git
synced 2025-10-18 09:12:18 +00:00
feat: multiple domains (#188)
* check uniqueness on create and register user * change user email, reserve release unique email * usergrant unique aggregate * usergrant uniqueness * validate UserGrant * fix tests * domain is set on username in all orgs * domain in admin * org domain sql * zitadel domain org name * org domains * org iam policy * default org iam policy * SETUP * load login names * login by login name * login name * fix: merge master * fix: merge master * Update internal/user/repository/eventsourcing/user.go Co-authored-by: Livio Amstutz <livio.a@gmail.com> * fix: fix unique domains * fix: rename env variable Co-authored-by: adlerhurst <silvan.reusser@gmail.com> Co-authored-by: Livio Amstutz <livio.a@gmail.com>
This commit is contained in:
@@ -2,6 +2,7 @@ package view
|
||||
|
||||
import (
|
||||
org_view "github.com/caos/zitadel/internal/org/repository/view"
|
||||
"github.com/caos/zitadel/internal/org/repository/view/model"
|
||||
"github.com/caos/zitadel/internal/view"
|
||||
)
|
||||
|
||||
@@ -9,15 +10,11 @@ const (
|
||||
orgTable = "management.orgs"
|
||||
)
|
||||
|
||||
func (v *View) OrgByID(orgID string) (*org_view.OrgView, error) {
|
||||
func (v *View) OrgByID(orgID string) (*model.OrgView, error) {
|
||||
return org_view.OrgByID(v.Db, orgTable, orgID)
|
||||
}
|
||||
|
||||
func (v *View) OrgByDomain(domain string) (*org_view.OrgView, error) {
|
||||
return org_view.GetGlobalOrgByDomain(v.Db, orgTable, domain)
|
||||
}
|
||||
|
||||
func (v *View) PutOrg(org *org_view.OrgView) error {
|
||||
func (v *View) PutOrg(org *model.OrgView) error {
|
||||
err := org_view.PutOrg(v.Db, orgTable, org)
|
||||
if err != nil {
|
||||
return err
|
||||
|
@@ -0,0 +1,63 @@
|
||||
package view
|
||||
|
||||
import (
|
||||
org_model "github.com/caos/zitadel/internal/org/model"
|
||||
"github.com/caos/zitadel/internal/org/repository/view"
|
||||
"github.com/caos/zitadel/internal/org/repository/view/model"
|
||||
global_view "github.com/caos/zitadel/internal/view"
|
||||
)
|
||||
|
||||
const (
|
||||
orgDomainTable = "management.org_domains"
|
||||
)
|
||||
|
||||
func (v *View) OrgDomainByOrgIDAndDomain(orgID, domain string) (*model.OrgDomainView, error) {
|
||||
return view.OrgDomainByOrgIDAndDomain(v.Db, orgDomainTable, orgID, domain)
|
||||
}
|
||||
|
||||
func (v *View) OrgDomainsByOrgID(domain string) ([]*model.OrgDomainView, error) {
|
||||
return view.OrgDomainsByOrgID(v.Db, orgDomainTable, domain)
|
||||
}
|
||||
|
||||
func (v *View) VerifiedOrgDomain(domain string) (*model.OrgDomainView, error) {
|
||||
return view.VerifiedOrgDomain(v.Db, orgDomainTable, domain)
|
||||
}
|
||||
|
||||
func (v *View) SearchOrgDomains(request *org_model.OrgDomainSearchRequest) ([]*model.OrgDomainView, int, error) {
|
||||
return view.SearchOrgDomains(v.Db, orgDomainTable, request)
|
||||
}
|
||||
|
||||
func (v *View) PutOrgDomain(org *model.OrgDomainView, sequence uint64) error {
|
||||
err := view.PutOrgDomain(v.Db, orgDomainTable, org)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if sequence != 0 {
|
||||
return v.ProcessedOrgDomainSequence(sequence)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (v *View) DeleteOrgDomain(domain string, eventSequence uint64) error {
|
||||
err := view.DeleteOrgDomain(v.Db, orgDomainTable, domain)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
return v.ProcessedOrgDomainSequence(eventSequence)
|
||||
}
|
||||
|
||||
func (v *View) GetLatestOrgDomainSequence() (uint64, error) {
|
||||
return v.latestSequence(orgDomainTable)
|
||||
}
|
||||
|
||||
func (v *View) ProcessedOrgDomainSequence(eventSequence uint64) error {
|
||||
return v.saveCurrentSequence(orgDomainTable, eventSequence)
|
||||
}
|
||||
|
||||
func (v *View) GetLatestOrgDomainFailedEvent(sequence uint64) (*global_view.FailedEvent, error) {
|
||||
return v.latestFailedEvent(orgDomainTable, sequence)
|
||||
}
|
||||
|
||||
func (v *View) ProcessedOrgDomainFailedEvent(failedEvent *global_view.FailedEvent) error {
|
||||
return v.saveFailedEvent(failedEvent)
|
||||
}
|
@@ -3,6 +3,7 @@ package view
|
||||
import (
|
||||
org_model "github.com/caos/zitadel/internal/org/model"
|
||||
"github.com/caos/zitadel/internal/org/repository/view"
|
||||
"github.com/caos/zitadel/internal/org/repository/view/model"
|
||||
global_view "github.com/caos/zitadel/internal/view"
|
||||
)
|
||||
|
||||
@@ -10,19 +11,19 @@ const (
|
||||
orgMemberTable = "management.org_members"
|
||||
)
|
||||
|
||||
func (v *View) OrgMemberByIDs(orgID, userID string) (*view.OrgMemberView, error) {
|
||||
func (v *View) OrgMemberByIDs(orgID, userID string) (*model.OrgMemberView, error) {
|
||||
return view.OrgMemberByIDs(v.Db, orgMemberTable, orgID, userID)
|
||||
}
|
||||
|
||||
func (v *View) SearchOrgMembers(request *org_model.OrgMemberSearchRequest) ([]*view.OrgMemberView, int, error) {
|
||||
func (v *View) SearchOrgMembers(request *org_model.OrgMemberSearchRequest) ([]*model.OrgMemberView, int, error) {
|
||||
return view.SearchOrgMembers(v.Db, orgMemberTable, request)
|
||||
}
|
||||
|
||||
func (v *View) OrgMembersByUserID(userID string) ([]*view.OrgMemberView, error) {
|
||||
func (v *View) OrgMembersByUserID(userID string) ([]*model.OrgMemberView, error) {
|
||||
return view.OrgMembersByUserID(v.Db, orgMemberTable, userID)
|
||||
}
|
||||
|
||||
func (v *View) PutOrgMember(org *view.OrgMemberView, sequence uint64) error {
|
||||
func (v *View) PutOrgMember(org *model.OrgMemberView, sequence uint64) error {
|
||||
err := view.PutOrgMember(v.Db, orgMemberTable, org)
|
||||
if err != nil {
|
||||
return err
|
||||
|
Reference in New Issue
Block a user