Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
nestjs-oso
Advanced tools
oso is an open-source policy engine for authorization that’s embedded in your application. It provides a declarative policy language for expressing authorization logic. You define this logic separately from the rest of your application code, but it executes inside the application and can call directly into it.
nestjs-oso
is a library that simplifies the implementation of oso with
NestJS.
▶ yarn add nestjs-oso oso
import { Module } from '@nestjs/common';
import { OsoModule } from 'nestjs-oso';
@Module({
imports: [
OsoModule.forRoot({
loadFiles: ['./permissions.polar'],
// or multiple files
// loadFiles: ['./permissions.polar', './other-policies.polar'],
// or using wildcards
// loadFiles: ['./**/*.polar']
}),
],
})
export class AppModule {}
Tip: You don't have to apply either loadFiles
or loadStr
. You can inject
OsoService
and access the original API for oso anytime!
You can easily inject OsoService
to be used in your services, controllers,
etc.
import { Injectable } from '@nestjs/common';
import { OsoService } from 'nestjs-oso';
@Injectable()
export class AuthService {
constructor(private oso: OsoService) {}
/*
Implementation that makes use of this.oso
*/
}
To register an class with oso
, use the decorator:
import { OsoClass } from 'nestjs-oso';
@OsoClass()
export class User {
id: string;
}
This will automatically be registered using registerClass
function in oso
.
assets
in nest-cli.json
In the nest-cli.json
file, we add the assets
property to distribute non-Typescript
files and watchAssets to turn on watching all non-Typescript assets. In our case, we
probably want to add *.polar
files to be automatically copied to the dist
folder
and reloaded when changed.
You can find an example in osohq/oso-nest-doc-mgmt.
{
"compilerOptions": {
"assets": ["**/*.polar"],
"watchAssets": true
}
}
We love to get help 🙏 Read more about how to get started in CONTRIBUTING 🌳
FAQs
Use OSO with NestJS
The npm package nestjs-oso receives a total of 164 weekly downloads. As such, nestjs-oso popularity was classified as not popular.
We found that nestjs-oso demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 7 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.