Comments (3)
For the specific security concern I mentionned above, I choose this approach:
- Both
allow_access
andallow_publish
use a methodallow_action
with different arguments. - Added the special
$owned-group
permission that ensures the package is properly accessible by the user on Gitlab. This is the default behavior ofallow_publish
in the current code. - Added handling of
$authenticated
properly: it can explicitly be set and, if found, will simply ensureuser.name !== undefined
. This is the default behavior foraccess
permission. (But I don't like thataccess
andpublish
have different permissions, it may make more sense to let both be$owned-group
but I didn't want to change the behavior too much). - Added handling of
BUILTIN_ACCESS_LEVEL_ANONYMOUS
for all actions. There is no reason a user shouldn't be able to config its Verdaccio so anyone can do anything for a specific action. - Added dynamic and complete error message mentionning the potential reasons why the access was refused.
The new code can be found here.
from verdaccio-gitlab.
@bufferoverflow @dlouzan May I ask some feedback on this, please?
from verdaccio-gitlab.
see #101 (comment)
from verdaccio-gitlab.
Related Issues (20)
- Separate plugin project? HOT 1
- Can we explicitly whitelist GitLab users that can login? HOT 1
- Verdaccio gitlab authentication
- Need better documentation HOT 2
- Adding plugin to existing verdaccio HOT 3
- Overly strict access level mappings HOT 2
- I can publish but I can't access
- GitLab API results are not cached, causes high CPU usage on GitLab server
- Can't Access Private gitlab server
- Remove deprecated dependencies
- Cannot install leveldown
- error authenticating user HOT 1
- Unable to load package list: Cannot read property 'includes' of null HOT 21
- Migrate plugin to TypeScript and remove flow-type HOT 3
- Uncaught SyntaxError: missing ) after argument list HOT 6
- UncaughtPromiseRejectionWarning: Error: `token` (private-token) or `oauth_token` is mandatory on startup HOT 1
- Can not see my packages in web UI HOT 9
- Whitelist specific group/project HOT 7
- Access to custom scope based on specific gitlab group HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from verdaccio-gitlab.