Registrera en applikation i OpenPlatform
En applikation är en post som administratören skapar på setup-skärmen (/setup/, app-API:et i pluginet setup). Posten är kontraktet mellan OpenPlatform och din applikation: var den bor, hur de två bevisar vilka de är och vad användaren får göra i den. Postens schema är @Apps i plugins/setup/schemas/apps.js.
| Fält | Obligatoriskt | Betydelse |
|---|---|---|
name | ja | namnet som visas i portalen |
url | ja | adressen som OpenPlatform öppnar |
reqtoken | ja | en hemlighet som du väljer och som båda sidor känner till: den signerar begäran |
restoken | ja | en andra hemlighet, också delad: applikationen använder den för att signera sitt svar |
color, icon | nej | hur applikationen ser ut i portalen |
meta | nej | en adress (URL) som returnerar applikationens metadata: setup-skärmen kan ladda ner den (Apps/download) för att fylla i posten |
sortindex | nej | ordningen i listan (en ny applikation hamnar sist) |
notifications | nej | om applikationen får skicka notiser |
isexternal | nej | applikationen öppnas inte i portalens ram: svaret till applikationen säger iframe: false |
isbookmark | nej | applikationen är en vanlig länk: ingen tokenhandskakning, bara en sessionsidentifierare i query-strängen |
isnewtab | nej | öppna den i en ny webbläsarflik i stället för i portalens ram (inställningen newtab gör det för varje applikation) |
isscrollbar | nej | applikationens ram i portalen behåller sin rullningslist (portalen sätter scrolling till yes eller no) |
isdisabled | nej | stäng av den för alla: användaren får "App has been temporary disabled" |
permissions | nej | listan över applikationens behörigheter: var och en har ett id, ett name och ett value (se grupper och behörigheter) |
Tabellen tbl_app har också en kolumn allow ("tillåter bara specifika IP-adresser"): när den innehåller adresser kan applikationen bara anropa OpenPlatforms protokollslutpunkter från dem. Setup-schemat ovan listar den inte, så det är en databaskolumn som du fyller i direkt.
De två tokens
reqtoken och restoken skickas aldrig till webbläsaren. OpenPlatform härleder från dem, för varje start, de värden som färdas: token i applikationens adress och headern som applikationen skickar tillbaka. Härledningen finns i hur en app ansluter. Använd långa slumpmässiga värden och ett olika par för varje applikation.
Ta bort och ändra
En applikation raderas aldrig ur tabellen: att ta bort den (Apps/remove) sätter isremoved och borttagningsdatumet och rensar cachen för de användare som hade den, och isdisabled stänger av den utan att ta bort den. När plattformens adress (inställningen url) ändras rensar OpenPlatform varje användares notislänkar och raderar de öppna applikationssessionerna, eftersom båda innehåller den adressen (inställningar och databas).
Kom ihåg regeln i README: en registrerad applikation är osynlig för alla tills en grupp tilldelas den.