Has CockroachDB implemented Row Level Security? - database

Regarding https://forum.cockroachlabs.com/t/row-level-security-with-multi-tenancy/1294/2 - I can't find anything in the docs whether it's been implemented in later versions.
Ideally, if anyone can confirm this has been implemented, and where the docs are, that would be great.

As of v21.1, Row-level Security is not a supported feature in CockroachDB.
However, Role-based Access Control which is mentioned in that forum post has been implemented and there are docs available for that feature.

Related

Connecting with pypardot after the changes

For the past years I've been connecting to Pardot with the usual email-password way that it is described at the pypardot documentation.
This obviously stopped working after the changes of Spring 21, but I cannot seem to find a good guide on alternative ways of connecting to the api.
I would appreciate some technical direction, examples or guides since documentations like this are too vague in my opinion and don't provide more practical help.
Thanks!
Now you need to get a Salesforce Access token prior to accessing the Pardot API.
I wrote a blog post on the details on what is needed to get connected, check it out: https://thespotforpardot.com/2021/02/02/pardot-api-and-getting-ready-with-salesforce-sso-users-part-3b-connecting-to-pardot-api-from-code/

DNN - Allow role to edit module content but not settings

I am using DNN 7.4.1 Community Edition and I would like to have a specific security role ("Editors") to have the ability to edit the content of every module, but not be able to edit the settings of every module. I know this SO question addresses this, but the answers are quite outdated and I would like to see if there is any more recent knowledge related to this issue.
I believe DotNetNuke Professional edition is now called, EVOQ Content, and due to the specificity of my issue, I would rather not upgrade for one little piece of additional functionality (also might not be an option financially). However, upgrading would seem to allow me to have more freedom over permissions.
As far as Oliver Hine's Enhanced Permission Provider for DotNetNuke, it hasn't been updated for several years. I have installed this extension, however it seems to add more headaches. As soon as it is installed, entire pages are no longer visible for any users other than the administrator role. Even after adjusting page permissions to allow "All Users" to "View Page", all of the modules are still not visible. After fumbling around with individual module permissions, certain modules were visible for certain users only after ALL permissions were granted to that role. This extension would be perfect if it worked as described (and without setting tons of individual module permissions).
So, is there any method other than the ones mentioned above that allow me to prevent the "Editors" role from accessing module settings, but still allowing them to edit the module content?
Thank you kindly
There is a slightly newer version on github which you might have better luck with. I haven't had the time to fully test it but it's an improvement over what's on codeplex.
https://github.com/ohine/Dnn.Enhanced-Permissions-Provider
If you still run into issues, contact me on my website and I'll get things fixed up.
Unfortunately my answer on that other post still stands as the current solution. Though Oliver might show up here and provide some insight.
This can be achieved with DotNetNuke Professional (EVOQ) edition using the
extended granular permissions.

What benefits can Vaadin offer my GWT Appengine app?

The GWT page on the Vaadin website is a bit sparse: https://vaadin.com/gwt
"Only benefits, no gotchas
You will enjoy everything you love in GWT and get the additional benefit of a novel server-side programming model, components, tools, themes and other extras. If you do not like what you are seeing, it is easy to return as long as you stick to using com.google.* packages. You will probably be tempted to start using features in com.vaadin.* packages eventually. But there is no need to worry—Vaadin Framework is also distributed under the same liberal Apache 2.0 license"
I like some of the look and feels on the Vaadin website, but I'm nervous about "server side models"... I would rather have most of the code running on the clientside if at all possible, and I'm checking GWT RPC calls again (often with the same java code) for security. I don't like the idea of lots of back and forth.
Given my concerns, is it worth digging deeper into Vaadin? Or do I stop here? Can I leverage the various look&feels without stomaching everything? Any other non-intuitive answers about leveraging would be appreciated.
UPDATE:
Please don't answer the question comparing Vaadin vs GWT, offering alternative UI frameworks.
I've also used SmartGWT, GXT, and bundled GWT widgets etc. Also familiar with some really complete widget sets like DevExpress for .NET . The reason I asked the question is because Vaadin LOOKS really cool... I'm looking for answers like : No, it's not possible to extract the L&F from Vaadin without compromising the clientside OR besides the L&F stuff, there is cool validation stuff etc etc etc which you can use, and then perhaps some useful evidence to back up that position (tried and failed).
I am answering only a part of the question about the L&F i.e GUI and Security.
1) L&F
Vaadin upto 6.x release does not support independent use of widgets. You need to get into the whole server side models.
However, from version 7 onwards Vaadin is leaning on spinning of Widget side to allow widget use without being forced to use the back/forth jsf like server-side state maintenance.
Reference - https://groups.google.com/forum/?fromgroups=#!topic/google-web-toolkit/3U1h0W_iHcM
2) Security
GWT side has pretty nice support with XSRF feature for RPC which would allow rpctoken generation per RPC call or selectively with your choice of granularity. This be might be a performance overhead for Vaadin roundtrip per sever-side-state call.
3) GAE is a factor depending on how heavy your Vaadin roundtrips really are.
4) Future
Vaadin is a member of GWT steering committee and along with Jboss Errai (asynchronous bean management in Errai roadmap) lean heavily on server side models.

Best way to implement oauth consumer in cakephp 2.0

What is best way to implement oauth consumer in cakephp. Should I write plugin based on oauth.php or is there any other solution?
It depends on what you're going to use OAuth for, but it'll probably be integrated in the application you're developing, so writing a plugin might be the least desirable way to tackle the problem.
There's a third-party Vendor/Component package by cakebaker for Cake, unfortunately it only supports 1.2/1.3 and the 2.0 branch isn't actively worked on at the moment, so it seems. No information on how well it will integrate with the current stable version of Cake.
CakeDC also hosts an OAuth library which might contain the functionality you're looking for. There's also a 2.0 branch which is actively maintained.

Ways to get past the Inner-platform effect while still building highly customized web apps?

Feel free to answer the question in the title as generally as I posed it, I offer some more details and specifics below.
Currently I develop and maintain a somewhat legacy business app (ASP/SQL) that is highly customizable allowing for moderate to full customization on: custom fields, forms, views, reports, actions, events, workflows, etc. This customization is necessary in the domain we develop for and has allowed us to build a niche.
I have been reading up on the inner-platform effect and ways of implementing high level user defined customization and have concluded that we do suffer from many of the inner-platform effect problems because essentially we have created a high level abstraction on top of the SQL. The organization of custom fields is implemented in a similar way to the approach found here
http://blog.springsource.com/arjen/archives/2008/01/24/storing-custom-fields-in-the-database/
We use something similar to the meta database method described in that article. All customization is built around this approach and in many ways we suffer from database on top of a database.
The end result is something that looks fantastic on paper yet the more features are added and custom coding is done for clients the more of a mess everything becomes. It seems that the more I read the more I realize this is somewhat of an anti-pattern. It also seems that the more I try to read the more I find so little has been written on the topic. Anyways, I am trying to learn modern approaches to this problem and trying to find more discussion/articles on the topic. Are Database systems such as CouchDB relevant to this type of application?
My question is clearly pretty general. It seems like there is a lot against this kind of application in favor of just "knowing and defining your domain better". Are there any good/better ways to implement this kind of application? I'm not looking for black and white answers, and any further readings on the subject would be fantastic. Thanks for any help.
My answer is be conscious and clear about what is for a plugin to do and what is a user setting. In that case, your platform and your settings are different. Your application provides basic services and is unabashedly a platform. It may also provide an application built on that platform.
So in that case you focus on programmer interfaces instead of implementation possibilities.
The standard advice in CS is to create another level of abstraction, not sure if that's not the problem here.
The only advice I could give is to push as much functionality onto the database, given it's the platform. SQL Server supports custom functions, fields and stored (SQL) procedures.
Either that or try to pull repeated functionality into separate functions in ASP.

Resources