debug: tenant provisioning hook
This commit is contained in:
@@ -22,6 +22,12 @@ export async function ensureOrgMembership(
|
|||||||
roleId?: number
|
roleId?: number
|
||||||
): Promise<void> {
|
): Promise<void> {
|
||||||
const emailLower = email.toLowerCase();
|
const emailLower = email.toLowerCase();
|
||||||
|
console.log('ensureOrgMembership', {
|
||||||
|
userId,
|
||||||
|
orgId,
|
||||||
|
roleId,
|
||||||
|
email
|
||||||
|
});
|
||||||
|
|
||||||
const [existingByProfile] = await db
|
const [existingByProfile] = await db
|
||||||
.select()
|
.select()
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { User } from 'better-auth';
|
|
||||||
import { BRAND_ROOT_DOMAIN, TENANT_ROOT_DOMAIN, blockedSubdomain } from '@cio/utils/constants';
|
import { BRAND_ROOT_DOMAIN, TENANT_ROOT_DOMAIN, blockedSubdomain } from '@cio/utils/constants';
|
||||||
import { getOrganizationByCustomDomain, getOrganizationBySiteName } from '@db/queries/organization';
|
import { getOrganizationByCustomDomain, getOrganizationBySiteName } from '@db/queries/organization';
|
||||||
|
|
||||||
|
import { User } from 'better-auth';
|
||||||
import { ensureOrgMembership } from './sso-provisioning';
|
import { ensureOrgMembership } from './sso-provisioning';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -70,14 +70,17 @@ async function resolveOrgIdFromHost(host: string): Promise<string | null> {
|
|||||||
*/
|
*/
|
||||||
export const tenantProvisioningHook = async (user: User, request?: Request) => {
|
export const tenantProvisioningHook = async (user: User, request?: Request) => {
|
||||||
if (!user.email || !request) return;
|
if (!user.email || !request) return;
|
||||||
|
console.log('[auth] tenantProvisioningHook: running', { userId: user.id });
|
||||||
|
|
||||||
const headerOrgId = request.headers.get('cio-org-id');
|
const headerOrgId = request.headers.get('cio-org-id');
|
||||||
|
console.log('[auth] tenantProvisioningHook: headerOrgId', headerOrgId);
|
||||||
if (headerOrgId) {
|
if (headerOrgId) {
|
||||||
await ensureOrgMembership(user.id, user.email, headerOrgId);
|
await ensureOrgMembership(user.id, user.email, headerOrgId);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const host = request.headers.get('x-forwarded-host') ?? request.headers.get('host');
|
const host = request.headers.get('x-forwarded-host') ?? request.headers.get('host');
|
||||||
|
console.log('[auth] tenantProvisioningHook: host', host);
|
||||||
if (!host) return;
|
if (!host) return;
|
||||||
|
|
||||||
const orgId = await resolveOrgIdFromHost(host);
|
const orgId = await resolveOrgIdFromHost(host);
|
||||||
|
|||||||
Reference in New Issue
Block a user