Add Render access review driver support

Register Render as an API-key connector provider and add an access
review driver that fetches workspace members from the Render API
(GET /v1/owners/{ownerId}/members).

Render exposes no partner OAuth program, so the connector authenticates
with a read-scoped API key (Authorization: Bearer) plus the customer's
Workspace ID. The flat members endpoint reports an explicit account
status and MFA flag, surfaced as the Active and MFAStatus fields; the
stable "usr-" id becomes ExternalID. There is no picker -- the
workspace is captured up front via ExtraSettings -- so
SetOrganizationSettings is omitted.

Signed-off-by: Aurélien Sibiril <81782+aureliensibiril@users.noreply.github.com>
This commit is contained in:
Aurélien Sibiril
2026-06-09 23:32:58 +02:00
parent 7a43acd3c2
commit 7640376d32
17 changed files with 752 additions and 1 deletions

View File

@@ -0,0 +1,16 @@
import type { ComponentProps } from "react";
export function Render(props: ComponentProps<"svg">) {
return (
<svg
viewBox="0 0 24 24"
xmlns="http://www.w3.org/2000/svg"
{...props}
>
<path
d="M18.263.007c-3.121-.147-5.744 2.109-6.192 5.082-.018.138-.045.272-.067.405-.696 3.703-3.936 6.507-7.827 6.507-1.388 0-2.691-.356-3.825-.979a.2024.2024 0 0 0-.302.178V24H12v-8.999c0-1.656 1.338-3 2.987-3h2.988c3.382 0 6.103-2.817 5.97-6.244-.12-3.084-2.61-5.603-5.682-5.75"
fill="#000000"
/>
</svg>
);
}

View File

@@ -45,6 +45,7 @@ import { OpenAI } from "./OpenAI";
import { PagerDuty } from "./PagerDuty";
import { PostHog } from "./PostHog";
import { Qovery } from "./Qovery";
import { Render } from "./Render";
import { Resend } from "./Resend";
import { SendGrid } from "./SendGrid";
import { Sentry } from "./Sentry";
@@ -91,6 +92,7 @@ const thirdParties: Record<string, FC<ComponentProps<"svg">>> = {
PAGERDUTY: PagerDuty,
POSTHOG: PostHog,
QOVERY: Qovery,
RENDER: Render,
RESEND: Resend,
SENDGRID: SendGrid,
SENTRY: Sentry,

View File

@@ -29,6 +29,7 @@ export { OpenAI } from "./OpenAI";
export { PagerDuty } from "./PagerDuty";
export { PostHog } from "./PostHog";
export { Qovery } from "./Qovery";
export { Render } from "./Render";
export { Resend } from "./Resend";
export { SendGrid } from "./SendGrid";
export { Sentry } from "./Sentry";