Skip to content

Commit

Permalink
Minor auth-related updates (#51)
Browse files Browse the repository at this point in the history
* rpc/auth: update the Provider interface slightly + fix some naming

* rpc: handle waas api interaction in RPC instead of provider

* proto: replace emailEnabled with AuthConfig

* proto: update waas api client

* rpc/auth: fix tracedProvider
  • Loading branch information
patrislav authored Jun 14, 2024
1 parent c8b9f7e commit 489ca52
Show file tree
Hide file tree
Showing 15 changed files with 343 additions and 215 deletions.
43 changes: 28 additions & 15 deletions proto/authenticator.gen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

23 changes: 19 additions & 4 deletions proto/authenticator.ridl
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,20 @@ struct OpenIdProvider
- audience: []string
+ json = aud

struct AuthEmailConfig
- enabled: bool

struct AuthGuestConfig
- enabled: bool

struct AuthConfig
- email?: AuthEmailConfig
+ go.field.type = AuthEmailConfig
+ go.tag.json = email,omitempty
- guest?: AuthGuestConfig
+ go.field.type = AuthGuestConfig
+ go.tag.json = guest,omitempty

struct Tenant
- projectId: uint64
+ go.field.name = ProjectID
Expand Down Expand Up @@ -78,8 +92,9 @@ struct TenantData
+ json = upgradeCode
- waasAccessToken: string
+ json = waasAccessToken
- emailEnabled: bool
+ json = emailEnabled
- authConfig: AuthConfig
+ json = authConfig
+ go.field.type = AuthConfig
- oidcProviders: []OpenIdProvider
+ go.field.name = OIDCProviders
+ json = oidcProviders
Expand Down Expand Up @@ -176,5 +191,5 @@ service WaasAuthenticatorAdmin
- Clock() => (serverTime: timestamp)

- GetTenant(projectId: uint64) => (tenant: Tenant)
- CreateTenant(projectId: uint64, waasAccessToken: string, emailEnabled: bool, oidcProviders: []OpenIdProvider, allowedOrigins: []string, password?: string) => (tenant: Tenant, upgradeCode: string)
- UpdateTenant(projectId: uint64, upgradeCode: string, emailEnabled: bool, oidcProviders: []OpenIdProvider, allowedOrigins: []string) => (tenant: Tenant)
- CreateTenant(projectId: uint64, waasAccessToken: string, authConfig: AuthConfig, oidcProviders: []OpenIdProvider, allowedOrigins: []string, password?: string) => (tenant: Tenant, upgradeCode: string)
- UpdateTenant(projectId: uint64, upgradeCode: string, authConfig: AuthConfig, oidcProviders: []OpenIdProvider, allowedOrigins: []string) => (tenant: Tenant)
39 changes: 26 additions & 13 deletions proto/clients/authenticator.gen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

23 changes: 18 additions & 5 deletions proto/clients/authenticator.gen.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* eslint-disable */
// sequence-waas-authenticator v0.1.0 ac3c2c244a304a00a769c89f84ff9c17c8f116bc
// sequence-waas-authenticator v0.1.0 e104837405deeba9b67f85f8db3de21be7189f42
// --
// Code generated by [email protected] with typescript generator. DO NOT EDIT.
//
Expand All @@ -12,7 +12,7 @@ export const WebRPCVersion = "v1"
export const WebRPCSchemaVersion = "v0.1.0"

// Schema hash generated from your RIDL schema
export const WebRPCSchemaHash = "ac3c2c244a304a00a769c89f84ff9c17c8f116bc"
export const WebRPCSchemaHash = "e104837405deeba9b67f85f8db3de21be7189f42"

//
// Types
Expand Down Expand Up @@ -117,6 +117,19 @@ export interface OpenIdProvider {
aud: Array<string>
}

export interface AuthEmailConfig {
enabled: boolean
}

export interface AuthGuestConfig {
enabled: boolean
}

export interface AuthConfig {
email?: AuthEmailConfig
guest?: AuthGuestConfig
}

export interface Tenant {
projectId: number
version: number
Expand All @@ -133,7 +146,7 @@ export interface TenantData {
sequenceContext: MiniSequenceContext
upgradeCode: string
waasAccessToken: string
emailEnabled: boolean
authConfig: AuthConfig
oidcProviders: Array<OpenIdProvider>
kmsKeys: Array<string>
allowedOrigins: Array<string>
Expand Down Expand Up @@ -249,7 +262,7 @@ export interface GetTenantReturn {
export interface CreateTenantArgs {
projectId: number
waasAccessToken: string
emailEnabled: boolean
authConfig: AuthConfig
oidcProviders: Array<OpenIdProvider>
allowedOrigins: Array<string>
password?: string
Expand All @@ -262,7 +275,7 @@ export interface CreateTenantReturn {
export interface UpdateTenantArgs {
projectId: number
upgradeCode: string
emailEnabled: boolean
authConfig: AuthConfig
oidcProviders: Array<OpenIdProvider>
allowedOrigins: Array<string>
}
Expand Down
Loading

0 comments on commit 489ca52

Please sign in to comment.