Directories
¶
| Path | Synopsis |
|---|---|
|
Package alexa_skill defines the wire types used by the Alexa Smart Home skill Lambda.
|
Package alexa_skill defines the wire types used by the Alexa Smart Home skill Lambda. |
|
handlers/alexa_cfg
command
|
|
|
handlers/alexa_skill
command
|
|
|
awsutils
|
|
|
cognitoidputil
Package cognitoidputil provides Cognito Identity Pool utilities
|
Package cognitoidputil provides Cognito Identity Pool utilities |
|
cognitoutil
Package cognitoutil provides Cognito authentication utilities
|
Package cognitoutil provides Cognito authentication utilities |
|
kmsutil
Package kmsutil adapts an AWS KMS asymmetric key to crypto.Signer, so the private key never exists in this process.
|
Package kmsutil adapts an AWS KMS asymmetric key to crypto.Signer, so the private key never exists in this process. |
|
Package claim holds the logic shared by the claim-initiate and claim-verify Lambdas: the configured variant, MAC normalization, claim-key construction, and the per-caller quota.
|
Package claim holds the logic shared by the claim-initiate and claim-verify Lambdas: the configured variant, MAC normalization, claim-key construction, and the per-caller quota. |
|
ca_bootstrap
Package ca_bootstrap mints and publishes the assisted-claiming CA and holds the operator certificate configuration it mints from.
|
Package ca_bootstrap mints and publishes the assisted-claiming CA and holds the operator certificate configuration it mints from. |
|
handlers/claim_admin
command
Claim admin API: superadmin-only configuration and bootstrap of the claiming CA.
|
Claim admin API: superadmin-only configuration and bootstrap of the claiming CA. |
|
handlers/claim_handler
command
Claim handler lambda: POST /v1/claim/initiate and POST /v1/claim/verify.
|
Claim handler lambda: POST /v1/claim/initiate and POST /v1/claim/verify. |
|
espuser
|
|
|
auth
Package auth - Admin authentication service for admin users
|
Package auth - Admin authentication service for admin users |
|
clients
Package clients is the ESP User OAuth-client service over espuser-oauth-clients: create, list, patch, delete, enforcing the client write-invariants.
|
Package clients is the ESP User OAuth-client service over espuser-oauth-clients: create, list, patch, delete, enforcing the client write-invariants. |
|
db/admin_config_db
Table espuser-admin-config (PK config_name, SK subtype): admin-selected key-value config.
|
Table espuser-admin-config (PK config_name, SK subtype): admin-selected key-value config. |
|
db/auth_flows_db
Table espuser-auth-flows (PK flow_id): the TTL'd browser authorization-code flow record, from /oauth2/authorize through OTP login to the issued code (resolved by the by-code GSI at token exchange).
|
Table espuser-auth-flows (PK flow_id): the TTL'd browser authorization-code flow record, from /oauth2/authorize through OTP login to the issued code (resolved by the by-code GSI at token exchange). |
|
db/identity_providers_db
Table espuser-identity-providers: the upstream providers the federation broker may delegate to.
|
Table espuser-identity-providers: the upstream providers the federation broker may delegate to. |
|
db/oauth_clients_db
Table espuser-oauth-clients (PK client_id, no SK): the registered OAuth/OIDC client registry.
|
Table espuser-oauth-clients (PK client_id, no SK): the registered OAuth/OIDC client registry. |
|
db/refresh_tokens_db
Table espuser-refresh-tokens (PK user_id, SK client_id#family_id): one row per login family holding the current rotation counter.
|
Table espuser-refresh-tokens (PK user_id, SK client_id#family_id): one row per login family holding the current rotation counter. |
|
handlers/authorize
command
GET /oauth2/authorize (validate -> LOGIN flow record -> 302 to the login page with a flow_id cookie) and the served login UI.
|
GET /oauth2/authorize (validate -> LOGIN flow record -> 302 to the login page with a flow_id cookie) and the served login UI. |
|
handlers/clients
command
|
|
|
handlers/espuser_admin_creds
command
|
|
|
handlers/publish_discovery
command
Command publish_discovery builds the static OIDC/OAuth discovery documents and uploads them to S3, once, at deploy.
|
Command publish_discovery builds the static OIDC/OAuth discovery documents and uploads them to S3, once, at deploy. |
|
handlers/revoke
command
|
|
|
handlers/token
command
|
|
|
handlers/user_auth
command
Command user_auth serves the native /v1/user/auth/* password APIs.
|
Command user_auth serves the native /v1/user/auth/* password APIs. |
|
handlers/user_common
command
|
|
|
handlers/userinfo
command
|
|
|
idp
Package idp runs the upstream leg of a brokered login, with ESP User as a confidential client of an upstream IdP. It is deliberately independent of the client's downstream leg — see the "why brokered, not pass-through" argument in espuser/docs/en/specs/federation.md.
|
Package idp runs the upstream leg of a brokered login, with ESP User as a confidential client of an upstream IdP. It is deliberately independent of the client's downstream leg — see the "why brokered, not pass-through" argument in espuser/docs/en/specs/federation.md. |
|
legacyauth
Package legacyauth serves the native /v1/user/auth/* password APIs.
|
Package legacyauth serves the native /v1/user/auth/* password APIs. |
|
refreshtoken
Package refreshtoken is the ESP User refresh-token service: it owns the token lifecycle — mint a family on login, rotate-on-use with reuse=theft detection, and revoke — over the espuser-refresh-tokens store.
|
Package refreshtoken is the ESP User refresh-token service: it owns the token lifecycle — mint a family on login, rotate-on-use with reuse=theft detection, and revoke — over the espuser-refresh-tokens store. |
|
scope
Package scope is the single source of truth for ESP User's OAuth/OIDC scope values and space-delimited membership tests (RFC 6749 §3.3).
|
Package scope is the single source of truth for ESP User's OAuth/OIDC scope values and space-delimited membership tests (RFC 6749 §3.3). |
|
sender
Package sender resolves which SES identity the IdP sends mail from.
|
Package sender resolves which SES identity the IdP sends mail from. |
|
mcp
|
|
|
handlers/mcp_server
command
|
|
|
rmneo
|
|
|
db/processed_ts_db
Package db provides database operations for the RainMaker platform.
|
Package db provides database operations for the RainMaker platform. |
|
handlers/admin/iot_event_mode
command
|
|
|
handlers/admin/rmng_admin_creds
command
|
|
|
handlers/file/admin_files
command
|
|
|
handlers/group/group
command
|
|
|
handlers/group/group_service
command
|
|
|
handlers/gva/gva_action
command
|
|
|
handlers/gva/gva_cfg
command
|
|
|
handlers/hello_world/hello_world
command
|
|
|
handlers/integration/integration
command
|
|
|
handlers/node/node_assoc
command
|
|
|
handlers/node/node_conn
command
|
|
|
handlers/node/node_reset
command
|
|
|
handlers/node/node_service
command
|
|
|
handlers/node/node_tags
command
|
|
|
handlers/node/node_to_cloud
command
|
|
|
handlers/user/assume_role
command
|
|
|
handlers/user/user_client
command
|
|
|
handlers/user/user_creds
command
Command user_creds backs POST /v1/user/credentials: it verifies the presented bearer access token in-handler (no gateway authorizer) and exchanges it for Cognito Identity Pool credentials.
|
Command user_creds backs POST /v1/user/credentials: it verifies the presented bearer access token in-handler (no gateway authorizer) and exchanges it for Cognito Identity Pool credentials. |
|
node/nodelifecycle
Package nodelifecycle hosts generic node-lifecycle hooks (node-left-group, node-offline).
|
Package nodelifecycle hosts generic node-lifecycle hooks (node-left-group, node-offline). |
|
nodeadmin/bulk_job
Package bulk_job centralises the steps the registration and update Lambdas share when kicking off a bulk job: generate a request ID, write the node_reg_reqs row in `requested` state, and dispatch the shared Fargate task with the per-job env var set.
|
Package bulk_job centralises the steps the registration and update Lambdas share when kicking off a bulk job: generate a request ID, write the node_reg_reqs row in `requested` state, and dispatch the shared Fargate task with the per-job env var set. |
|
nodeadmin/jobs_api
Package jobs_api centralises the read-side handlers shared by the registration and update Lambdas: status lookup and the paginated failed-nodes audit list.
|
Package jobs_api centralises the read-side handlers shared by the registration and update Lambdas: status lookup and the paginated failed-nodes audit list. |
|
notification/integrationauth
Package integrationauth keeps the OAuth tokens we hold as a client of a user's linked third-party service fresh, so the notification senders can call out to Alexa, GVA, and webhooks.
|
Package integrationauth keeps the OAuth tokens we hold as a client of a user's linked third-party service fresh, so the notification senders can call out to Alexa, GVA, and webhooks. |
|
service/timeseries/timewindow
Package timewindow provides time window management functionality for timeseries data processing.
|
Package timewindow provides time window management functionality for timeseries data processing. |
|
test
|
|
|
mock
Package mock provides mock implementations for AWS Cognito Provider
|
Package mock provides mock implementations for AWS Cognito Provider |
|
tools
|
|
|
rmng-lint
command
|
|
|
rmng-lint/losterr
Package losterr reports errors that are constructed and then thrown away.
|
Package losterr reports errors that are constructed and then thrown away. |
|
certissuer
Package certissuer produces device certificates from a validated public key under a named profile.
|
Package certissuer produces device certificates from a validated public key under a named profile. |
|
httpclient
Package httpclient owns the process-wide outbound HTTP client so every outbound call shares one timeout and one seam tests can replace.
|
Package httpclient owns the process-wide outbound HTTP client so every outbound call shares one timeout and one seam tests can replace. |
|
jsonutil
Package jsonutils converts between a dotted key path ("0x1.c.s.0x6.a.0x0") and its nested map form ({"0x1":{"c":{"s":{"0x6":{"a":{"0x0":<value>}}}}}}).
|
Package jsonutils converts between a dotted key path ("0x1.c.s.0x6.a.0x0") and its nested map form ({"0x1":{"c":{"s":{"0x6":{"a":{"0x0":<value>}}}}}}). |
|
jwtutil
Package jwtutils holds reusable RS256 JWT + JWK helpers: sign a claim set with a kid-stamped header, verify a token against a JWK set, parse an RSA signing key, and build the public JWK/JWKS.
|
Package jwtutils holds reusable RS256 JWT + JWK helpers: sign a claim set with a kid-stamped header, verify a token against a JWK set, parse an RSA signing key, and build the public JWK/JWKS. |
|
metrics
Package metrics provides CloudWatch Embedded Metrics Format (EMF) support for Lambda functions to emit custom metrics without API call overhead.
|
Package metrics provides CloudWatch Embedded Metrics Format (EMF) support for Lambda functions to emit custom metrics without API call overhead. |
|
otputil
Package otputils holds generic, table-agnostic OTP helpers: id/code generation and salted-hash create/verify.
|
Package otputils holds generic, table-agnostic OTP helpers: id/code generation and salted-hash create/verify. |
|
pkceutil
Package pkceutil derives and verifies RFC 7636 PKCE code challenges.
|
Package pkceutil derives and verifies RFC 7636 PKCE code challenges. |
|
rlog
Package rlog provides a global logger for rmng.
|
Package rlog provides a global logger for rmng. |
|
secretutil
Package secretutil generates cryptographically-random secrets/identifiers.
|
Package secretutil generates cryptographically-random secrets/identifiers. |
Click to show internal directories.
Click to hide internal directories.