Home

Awesome

IO Functions for administration of the platform

This project implements the APIs to enable the administration functionalities required by the the IO platform. The APIs are called by the Azure API Management developer portal and other IO related projects. The implementation is based on the Azure Functions v4 runtime.

Required environment variables

The table lists some of the environment variables needed by the application; they may be customized as needed.

Variable nameDescriptiontype
StorageConnectionStorage connection string to store computed visible-service.json (retrieved by io-functions-app)string
COSMOSDB_CONNECTION_STRINGCosmosDB connection string (needed in triggers)string
COSMOSDB_URICosmosDB connection URIstring
COSMOSDB_KEYCosmosDB connection keystring
COSMOSDB_NAMECosmosDB database namestring
LOGOS_URLThe url of the service logos storagestring
AssetsStorageConnectionThe connection string used to connect to Azure Blob Storage containing the service cachestring
SERVICE_PRINCIPAL_CLIENT_IDThe service principal name used to get the token credentials to connect to the APIMstring
SERVICE_PRINCIPAL_SECRETThe service principal secret used to get the token credentials to connect to the APIMstring
SERVICE_PRINCIPAL_TENANT_IDThe service principal tenant id used to get the token credentials to connect to the APIMstring
ADB2C_CLIENT_IDThe application client id used to get the token credentials to connect to the ADB2Cstring
ADB2C_CLIENT_KEYThe application secret used to get the token credentials to connect to the ADB2Cstring
ADB2C_TENANT_IDThe ADB2C tenant idstring
AZURE_APIMThe name of the API Management service used to get the subscriptionsstring
AZURE_APIM_HOSTThe host name of the API Management servicestring
AZURE_APIM_RESOURCE_GROUPThe name of the resource group used to get the subscriptionsstring
AZURE_SUBSCRIPTION_IDCredentials which identify the Azure subscription, used to init the APIM clientstring
UserDataArchiveStorageConnectionStorage connection string to store zip file for user to download their datastring
USER_DATA_CONTAINER_NAMEName of the container on which zip files with usr data are storedstring
MESSAGE_CONTAINER_NAMEName of the container which stores message contentstring
PUBLIC_API_URLInternal URL of the API management used to send messagesstring
PUBLIC_API_KEYGDPR service access key for the message APIstring
PUBLIC_DOWNLOAD_BASE_URLPublic URL of user's data zip bundle storagestring
SESSION_API_URLInternal URL of the BACKEND API used to handle session lock/unlock requestsstring
SESSION_API_KEYservice access key for the session APIstring
USER_DATA_BACKUP_CONTAINER_NAMEName of the storage container in which user data is backuped before being permanently deletedstring
USER_DATA_DELETE_DELAY_DAYSHow many days to wait when a user asks for cancellation before effectively delete her datanumber
UserDataBackupStorageConnectionStorage connection string for GDPR user data storagestring
MAIL_FROMAddress from which email are sentstring
SENDGRID_API_KEYIf provided, SendGrid will be usedstring
MAILUP_USERNAMEIf using MailUp, the usernamestring
MAILUP_SECRETIf using MailUp, the secretstring
MAILHOG_HOSTNAMERequired on development, the host name of the MailHog SMTP serverstring
SubscriptionFeedStorageConnectionStorage connection string for subscription feedstring
SUBSCRIPTIONS_FEED_TABLETable name for the Subscriptions Feed in the storagestring
GET_USERS_PAGE_SIZENumber of elements to be fetched and returned on GetUsers Api invoke (Default=100)number

Feature flags

This flags enable/disable some features and are expected to be boolean. To set them true, assign them the literal value 1

Variable nameDescriptiondefault
FF_ENABLE_USER_DATA_DOWNLOADUsers' GDPR data access claims are processedtrue
FF_ENABLE_USER_DATA_DELETEUsers' GDPR right to erasure claims are processedtrue