Cordova native ui plugin
by Erik Jan de Wit
Hi,
I have a idea for a new cordova plugin, how about a plugin that let’s you add native ui components dynamically. A good use case for this could be to have native navigation on the top of your app.
We’ll need to bridge the events from native back to js and a way to define what components to add, initially we could support only a couple.
What do you think?
Erik Jan
10 years, 7 months
Keycloak integration
by Matthias Wessendorf
Hello folks!
Bill Burk was helping on the Keycloak front and besides fixing related
items on the Keycloak server, he also created an example that we can use as
a template for the actual integration. See [1]
In the past, Bruno and I did integrate w/ an external Keycloak server (see
[2]), and we did include the keycloak.json file (See [3]). Thanks to Bill's
work on Keycloak, the 'protected app' no longer needs that, see [4].
Also there is no more the need to customize the Keycloak Rest Application
(Stian and I did look into that as well).
Good news: This means the UPS can stay as it is -> no need to change
internals (e.g. the 'bundle all in one WAR file' did force us to change our
'/rest' URLs, as Keycloak uses them, see [5]).
Inside of our 'modular' Keycloak branch (see [2] again), we can apply the
work from Bill:
* our current 'server' module will use a listener similar to [4]
* create a "ups-auth" module similar to [6]
On the 'ups-auth module' there is one area where we need to have some
future improvement:
* testrealm.json -> needs to be in Java code, due to the URL being
hard-coded in there (we need to resolve the URL of the host, running the
bits). But, IMO for now that should be good enough.
Bruno did offer to help out on the Keycloak integration, so that I can go
back to the analytics and mertrics feature. Thanks abstractj!! <3
Greetings,
Matthias
[1]
https://github.com/keycloak/keycloak/tree/master/project-integrations/aer...
[2]
https://github.com/aerogear/aerogear-unifiedpush-server/tree/keycloak-mod...
[3]
https://github.com/aerogear/aerogear-unifiedpush-server/blob/keycloak-mod...
[4]
https://github.com/keycloak/keycloak/blob/master/project-integrations/aer...
[5]
https://github.com/aerogear/aerogear-unifiedpush-server/tree/keycloak-emb...
[6]
https://github.com/keycloak/keycloak/tree/master/project-integrations/aer...
--
Matthias Wessendorf
blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf
10 years, 7 months
OAuth2 authotization and Pipe integration
by Corinne Krych
Hello folks
I’ve been thinking about providing a more fluid integration between authz and pipes.
Right now to read a list of GoogleDrive document, we need to read the pipe in the success callback of authz’ requestAccess:
AGAuthorizer* authorizer = [AGAuthorizer authorizer];
_restAuthzModule = [authorizer authz:^(id<AGAuthzConfig> config) {
...
}];
[_restAuthzModule requestAccessSuccess:^(id object) {
id<AGPipe> documents = [googleDocuments pipe:^(id<AGPipeConfig> config) {
[config setName:@"files"];
[config setAuthzModule:authzModule]; // inject authz
}];
[documents read:^(id responseObject) {
// do sth with response
} failure:^(NSError *error) {
// when an error occurs...
}];
} failure:^(NSError *error) {
NSLog(@"Failure in getting access token");
}];
What about if we just initialize authzModule and inject it into pipe. Once the pipe read (or any crud) it will be the pipe that first fetch tokens (or renew - whaetever is needed) and on success read the pipe. Basically we do the callback chaining internally in the Pipe instead of letting the developer deal with it.
AGAuthorizer* authorizer = [AGAuthorizer authorizer];
_restAuthzModule = [authorizer authz:^(id<AGAuthzConfig> config) {
...
}];
id<AGPipe> documents = [googleDocuments pipe:^(id<AGPipeConfig> config) {
[config setName:@"files"];
[config setAuthzModule:authzModule]; // inject authz
}];
[documents read:^(id responseObject) {
// do sth with response
} failure:^(NSError *error) {
// when an error occurs...
}];
It feels much fluid on the user.
Doing so we “force” the app flow to ask token when it needs it, not in advance at startup of app. but i think this is good practice to lazy authz your app.
Thoughts?
Test repo can be found here:
https://github.com/corinnekrych/aerogear-ios/blob/transparent.refresh/Aer...
https://github.com/corinnekrych/aerogear-ios-cookbook-1/blob/AGIOS-145.re...
++
Corinne
10 years, 7 months