Commit Graph

30 Commits

Author SHA1 Message Date
Arpit Mohan
5081292fd8 Adding the invite user flow to invite a new user into the organization.
Also extending the redis session timeout to 1 day instead of 30 mins.
2019-12-23 08:54:12 +05:30
Arpit Mohan
20ea476dc7 Correcting the HTTP methods for the public urls of forgotPassword & resetPassword 2019-12-19 13:04:13 +05:30
Arpit Mohan
f75331b116 Adding a flag to determine if we should send emails for that particular environment 2019-12-19 13:02:48 +05:30
Arpit Mohan
bcba9d3415 Creating a list of public endpoints that anonymous users can access.
OPA controls access to all endpoints and the list of authenticated resources and public URLs is defined in a single place in that file.

The url_allow function in acl.rego is an overloaded function that replicates the OR condition in Rego. Either the user is authenticated and has permissions to access those resources, or the URL is public and accessible by any user.
2019-12-17 09:28:59 +05:30
Arpit Mohan
fdba2f62ef Adding email sending capability when the user resets their password 2019-12-08 15:46:17 +00:00
Arpit Mohan
ba9c2f0831 Modifying the base uri for oauth2 for release environment 2019-11-29 14:42:16 +05:30
Arpit Mohan
473bba594a Updating redis properties for heroku environment 2019-11-28 19:01:56 +05:30
Arpit Mohan
8a442d429c Dummy commit to trigger Heroku deployment 2019-11-27 16:37:03 +05:30
Arpit Mohan
92ad45091d Adding the base uri for google oauth2 redirect uri
This is required because when we host the server in a docker container, by default the baseUri picked up by Spring security is the DNS name of the appsmith server inside the docker networking bridge. These names may not be valid DNS names that Google can redirect to in the event of a successful Oauth2 login. Hence, we are overriding the base uri with our own uri for each environment.

The customer will have to provide this uri when they host it on their internal networks. This uri must be publicly accessible for Oauth2 to work.
2019-11-27 13:57:01 +05:30
Arpit Mohan
f4daa33493 Adding CRUD API for configurations. The name for the config will be unique across the dataset. 2019-11-13 12:17:32 +00:00
Trisha Anand
f81e22b1a5 Adding the capability to associate a user with multiple organizations 2019-11-13 10:23:23 +00:00
Arpit Mohan
0c0956ca46 Adding ACL bundle for datasources API 2019-11-05 16:36:09 +05:30
Arpit Mohan
023ef93969 Fixing Heroku credentials again. Need to find permanent solution to this. 2019-11-01 08:52:20 +01:00
Arpit Mohan
00cd806259 Changing the Redis credentials because Heroku changed them again 2019-10-28 13:15:02 +01:00
Arpit Mohan
2bd8113229 Moving JsonPathKeys from Page document object to Action
This is to ensure that the Action object is independent by itself and the client can derive the mustache keys by looking at the action object directly.
2019-10-24 12:38:52 +05:30
Trisha Anand
8ac0203b83 Fixing stupid bug in the acl rego file 2019-10-21 18:39:41 +05:30
Arpit Mohan
6eb7311197 Adding the permissions for fetching and updating applications & groups.
Also adding permission for deleting actions
2019-10-21 12:57:36 +05:30
Trisha Anand
84837fe57f Mongo Plugin works here. Barring the scenarios where the query json contains special characters in keys ($, .) it works properly. 2019-10-18 08:27:19 +00:00
Arpit Mohan
135b61a4bc Adding mongo seed data that will be recreated whenever docker-compose causes the containers to restart
Note that we have to delete the Mongo volume for the inidtb script to take effect. Else, it will not execute. To be used only for testing right now. Will figure out a more robust solution later.

Also using Google's JIB Maven plugin to reduce our Docker image footprint. Will make container upload and download much faster
2019-10-16 11:27:02 +00:00
Arpit Mohan
f51de50725 Adding more acl rules for properties and action controllers 2019-10-14 12:29:20 +00:00
Arpit Mohan
cf5b2c325b Adding a folder for public resources in order to serve OPA bundle
Open Policy Agent requires a bundle in the form of tar.gz in order to bootstrap itself with base policy and data. The server will serve this policy under the public domain. In the future, we will enable a Basic Authentication scheme in order to lock down this pocliy.
2019-10-14 09:24:09 +00:00
Arpit Mohan
632aff4faa Adding basic ACL functionality with Open Policy Agent.
Currently, ACLFilter communicates with the OPA daemon to determine if the request should be validated or not based on the resource and permissions in user and group
2019-10-11 10:31:28 +00:00
Trisha Anand
7315802508 Fixing redis connection changes 2019-10-10 11:53:03 +00:00
Arpit Mohan
ad22e1a406 Adding the redis listener via spring-data-redis-reactive.
The listeners need to be configured in the RedisConfig class via Beans. These beans can then invoke complex business logic based on requirements.
2019-10-07 08:18:54 +00:00
Trisha Anand
51d5c93119 Fixing minor bugs in the Segment analytics flow 2019-09-25 17:06:28 +00:00
Trisha Anand
566a245451 Segment & Rollbar Integration 2019-09-25 16:20:51 +00:00
Trisha Anand
de55ec8f8e Property Pane for Widget 2019-09-24 11:40:53 +00:00
Trisha Anand
4498a301a6 Docker 2019-09-17 09:35:13 +00:00
Trisha Anand
5468436d9f Add Page Actions to Page object. 2019-09-17 06:25:07 +00:00
Arpit Mohan
b3c987a9f9 Convert the project into a multi-module structure
We are moving to a multi-module structure so that different parts of the codebase can be exposed to the public while others can remain private. Using pf4j for plugin framework.

Also adding a build script `build.sh` which compiles the code and creates the `dist` folder for distribution purposes. Now we can build the code via

```
$ ./build.sh -DskipTests
```
2019-09-16 11:21:57 +00:00