{"_id":"@aartoni/strapi-plugin-oidc","_rev":"5-33f65f8ea0f133d740c6c33246eb86fc","name":"@aartoni/strapi-plugin-oidc","dist-tags":{"latest":"1.3.0"},"versions":{"0.0.1":{"name":"@aartoni/strapi-plugin-oidc","version":"0.0.1","keywords":["strapi","plugin","oauth","SSO","OIDC","OpenID Connect"],"author":{"url":"https://github.com/aartoni","name":"aartoni"},"license":"MIT","_id":"@aartoni/strapi-plugin-oidc@0.0.1","maintainers":[{"name":"aartoni","email":"arto7796@gmail.com"}],"homepage":"https://github.com/aartoni/strapi-plugin-oidc#readme","bugs":{"url":"https://github.com/aartoni/strapi-plugin-oidc/issues"},"dist":{"shasum":"b7f62ac20c97189c7916a6385cc4f1db365d7a8c","tarball":"https://registry.npmjs.org/@aartoni/strapi-plugin-oidc/-/strapi-plugin-oidc-0.0.1.tgz","fileCount":42,"integrity":"sha512-N9mq+iaSLitOJRqJZJ0sAJm8zICBDNh8ePON9F0VCyL82JJGluTAlOO8GdwA8hYsz7e/VESVKQJ6kdpwuuhSXQ==","signatures":[{"sig":"MEYCIQDKkx3SKnq0eijkus4V604F4HSAGVT4jdPBb62IFEdHwgIhAKWIxhInWRrHyh5N1Q6HrYGVtNhRcXeljOloLRQPhMn4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":79400},"jest":{"testEnvironment":"node","testPathIgnorePatterns":["/node_modules/",".tmp","dist",".cache"]},"strapi":{"kind":"plugin","name":"oidc","description":"Version 5 enables single sign-on","displayName":"Single Sign On"},"engines":{"npm":">=8.6.0","node":">=22.0.0 <=24.x.x"},"exports":{"./vite":{"source":"./vite/index.ts","default":"./dist/vite/index.js","require":"./dist/vite/index.js"},"./package.json":"./package.json","./strapi-admin":{"import":"./dist/admin/index.mjs","source":"./admin/src/index.ts","default":"./dist/admin/index.js","require":"./dist/admin/index.js"},"./strapi-server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.mjs","source":"./server/src/index.ts","default":"./dist/server/index.js","require":"./dist/server/index.js"}},"gitHead":"ceb9cabb3491165ef9f8e91250323702c71d1a61","scripts":{"lint":"NODE_OPTIONS=--experimental-strip-types eslint --flag unstable_native_nodejs_ts_config","build":"strapi-plugin build && yarn build:vite","watch":"strapi-plugin watch","verify":"strapi-plugin verify","test:jest":"ENV_PATH=./playground/.env  jest --verbose --runInBand --forceExit --detectOpenHandles","build:vite":"tsc --project vite/tsconfig.json","watch:link":"strapi-plugin watch:link","test:cypress":"NODE_EXTRA_CA_CERTS=data/common/certs/cacert.pem cypress run","e2e:services:up":"sh scripts/isscert.dev.sh && docker compose up --build --wait --force-recreate","playground:build":"cd playground && yarn build","playground:start":"cd playground && yarn start","e2e:services:down":"docker compose down -v --remove-orphans","test:cypress:open":"cypress open","playground:develop":"cd playground && yarn develop","playground:install":"yalc push && yarn playground:yalc-add-link && cd playground && yarn install --frozen-lockfile","playground:yalc-add":"cd playground && yalc add @aartoni/strapi-plugin-oidc","playground:yalc-add-link":"cd playground && yalc add --link @aartoni/strapi-plugin-oidc"},"_npmUser":{"name":"aartoni","email":"arto7796@gmail.com"},"repository":{"url":"git+https://github.com/aartoni/strapi-plugin-oidc.git","type":"git"},"_npmVersion":"10.9.3","description":"Plug-in for single sign-on with Strapi!","directories":{},"_nodeVersion":"22.19.0","dependencies":{"@strapi/utils":"^5.49.0","pkce-challenge":"^6.0.0","generate-password":"^1.7.1","@jmespath-community/jmespath":"^1.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.0","nock":"^14.0.5","yalc":"^1.0.0-pre.53","react":"^18.0.0","dotenv":"^17.4.0","eslint":"^10.6.0","accepts":"^1.3.8","cypress":"^15.18.0","globals":"^17.7.0","prettier":"^3.9.4","react-dom":"^18.0.0","supertest":"^7.2.0","@eslint/js":"^10.0.1","@types/koa":"^2.15.2","react-intl":"^6.6.0","typescript":"^6.0.0","@babel/core":"^7.29.0","@types/react":"^18.0.0","@strapi/icons":"^2.2.0","@strapi/strapi":"^5.49.0","@types/cookies":"^0.9.2","react-router-dom":"^6.30.3","@babel/preset-env":"^7.29.0","styled-components":"^6.4.0","typescript-eslint":"^8.62.0","@strapi/sdk-plugin":"^6.1.0","@strapi/design-system":"^2.2.0","eslint-plugin-cypress":"^6.4.1","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6","cypress-terminal-report":"^7.3.0","@babel/preset-typescript":"^7.29.0","@strapi/typescript-utils":"^5.49.0","@testing-library/cypress":"^10.1.0"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0","react-intl":"^6.6.0","@strapi/icons":"^2.2.0","@strapi/strapi":"^5.49.0","react-router-dom":"^6.30.3","styled-components":"^6.4.0","@strapi/design-system":"^2.2.0"},"_npmOperationalInternal":{"tmp":"tmp/strapi-plugin-oidc_0.0.1_1783932768827_0.06777056829095418","host":"s3://npm-registry-packages-npm-production"}},"1.0.10":{"name":"@aartoni/strapi-plugin-oidc","version":"1.0.10","keywords":["strapi","plugin","oauth","SSO","OIDC","OpenID Connect"],"author":{"url":"https://github.com/aartoni","name":"aartoni"},"license":"MIT","_id":"@aartoni/strapi-plugin-oidc@1.0.10","maintainers":[{"name":"aartoni","email":"arto7796@gmail.com"}],"homepage":"https://github.com/aartoni/strapi-plugin-oidc#readme","bugs":{"url":"https://github.com/aartoni/strapi-plugin-oidc/issues"},"dist":{"shasum":"e7d0271c73fa48858de30eaa88c06330246d9d9a","tarball":"https://registry.npmjs.org/@aartoni/strapi-plugin-oidc/-/strapi-plugin-oidc-1.0.10.tgz","fileCount":36,"integrity":"sha512-NGq3kYJcDnoeklGJbwDWQReuda8AgxOakhnkXQgi2P+BWa45KmA1EBZn4WfSwCxrJ1rFB+oO485VtRBHD6MVyA==","signatures":[{"sig":"MEYCIQCNVY6vanQTkB7LmUOPIVMkFXhYQ98DAcsAUP0u690E4wIhAPDwtmiIXDTvkzaAmhQ2OlvtppAA1xanCnMlp6tLtPDS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aartoni%2fstrapi-plugin-oidc@1.0.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":65323},"jest":{"testEnvironment":"node","testPathIgnorePatterns":["/node_modules/",".tmp","dist",".cache"]},"strapi":{"kind":"plugin","name":"oidc","description":"Single Sign-On via OpenID Connect","displayName":"Single Sign On"},"engines":{"npm":">=8.6.0","node":">=22.0.0 <=24.x.x"},"exports":{"./vite":{"source":"./vite/index.ts","default":"./dist/vite/index.js","require":"./dist/vite/index.js"},"./package.json":"./package.json","./strapi-admin":{"import":"./dist/admin/index.mjs","source":"./admin/src/index.ts","default":"./dist/admin/index.js","require":"./dist/admin/index.js"},"./strapi-server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.mjs","source":"./server/src/index.ts","default":"./dist/server/index.js","require":"./dist/server/index.js"}},"gitHead":"d340309938351d1bcac03e56f5d9269a2b471b89","scripts":{"lint":"NODE_OPTIONS=--experimental-strip-types eslint --flag unstable_native_nodejs_ts_config","build":"strapi-plugin build && yarn build:vite","watch":"strapi-plugin watch","verify":"strapi-plugin verify","test:jest":"ENV_PATH=./playground/.env  jest --verbose --runInBand --forceExit --detectOpenHandles","build:vite":"tsc --project vite/tsconfig.json","watch:link":"strapi-plugin watch:link","test:cypress":"NODE_EXTRA_CA_CERTS=data/common/certs/cacert.pem cypress run","e2e:services:up":"sh scripts/isscert.dev.sh && docker compose up --build --wait --force-recreate","playground:build":"cd playground && yarn build","playground:start":"cd playground && yarn start","e2e:services:down":"docker compose down -v --remove-orphans","test:cypress:open":"cypress open","playground:develop":"cd playground && yarn develop","playground:install":"yalc push && yarn playground:yalc-add-link && cd playground && yarn install --frozen-lockfile","playground:yalc-add":"cd playground && yalc add @aartoni/strapi-plugin-oidc","playground:yalc-add-link":"cd playground && yalc add --link @aartoni/strapi-plugin-oidc"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:19c87962-22a8-4e5e-bdaa-74588e965c7a"}},"repository":{"url":"git+https://github.com/aartoni/strapi-plugin-oidc.git","type":"git"},"_npmVersion":"11.16.0","description":"Replace the Strapi 5 admin login with your OIDC provider","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@strapi/utils":"^5.49.0","pkce-challenge":"^6.0.0","generate-password":"^1.7.1","@jmespath-community/jmespath":"^1.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.0","nock":"^14.0.5","yalc":"^1.0.0-pre.53","react":"^18.0.0","dotenv":"^17.4.0","eslint":"^10.6.0","accepts":"^1.3.8","cypress":"^15.18.0","globals":"^17.7.0","prettier":"^3.9.4","react-dom":"^18.0.0","supertest":"^7.2.0","@eslint/js":"^10.0.1","@types/koa":"^2.15.2","react-intl":"^6.6.0","typescript":"^6.0.0","@babel/core":"^7.29.0","@types/react":"^18.0.0","@strapi/icons":"^2.2.0","@strapi/strapi":"^5.49.0","@types/cookies":"^0.9.2","react-router-dom":"^6.30.3","@babel/preset-env":"^7.29.0","styled-components":"^6.4.0","typescript-eslint":"^8.62.0","@strapi/sdk-plugin":"^6.1.0","@strapi/design-system":"^2.2.0","eslint-plugin-cypress":"^6.4.1","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6","cypress-terminal-report":"^7.3.0","@babel/preset-typescript":"^7.29.0","@strapi/typescript-utils":"^5.49.0","@testing-library/cypress":"^10.1.0"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0","react-intl":"^6.6.0","@strapi/icons":"^2.2.0","@strapi/strapi":"^5.49.0","react-router-dom":"^6.30.3","styled-components":"^6.4.0","@strapi/design-system":"^2.2.0"},"_npmOperationalInternal":{"tmp":"tmp/strapi-plugin-oidc_1.0.10_1783936781082_0.7567055389467765","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@aartoni/strapi-plugin-oidc","version":"1.1.1","keywords":["strapi","plugin","oauth","SSO","OIDC","OpenID Connect"],"author":{"url":"https://github.com/aartoni","name":"aartoni"},"license":"MIT","_id":"@aartoni/strapi-plugin-oidc@1.1.1","maintainers":[{"name":"aartoni","email":"arto7796@gmail.com"}],"homepage":"https://github.com/aartoni/strapi-plugin-oidc#readme","bugs":{"url":"https://github.com/aartoni/strapi-plugin-oidc/issues"},"dist":{"shasum":"e428b6b111714c23cb99618b570b0346841351bc","tarball":"https://registry.npmjs.org/@aartoni/strapi-plugin-oidc/-/strapi-plugin-oidc-1.1.1.tgz","fileCount":38,"integrity":"sha512-7ie3mYBIGXJbPrD1rJD+tnDyLe2it20ZINLJ/qR6jXDY8BnDG507MTetC6CWhaHL5dqavI/i1GpXvHszsbsGCg==","signatures":[{"sig":"MEQCIBQReq4nmRH0aTtl1N0N2lJE7MmSRT3DxrvMkz9KvVOfAiA6DumKjBgooH4v5mzxBk/tvC0hOB16q0hjZud95al0Aw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aartoni%2fstrapi-plugin-oidc@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":71905},"strapi":{"kind":"plugin","name":"oidc","description":"Single Sign-On via OpenID Connect","displayName":"Single Sign On"},"engines":{"npm":">=8.6.0","node":">=22.12.0 <25.0.0"},"exports":{"./vite":{"source":"./vite/index.ts","default":"./dist/vite/index.js","require":"./dist/vite/index.js"},"./package.json":"./package.json","./strapi-admin":{"import":"./dist/admin/index.mjs","source":"./admin/src/index.ts","default":"./dist/admin/index.js","require":"./dist/admin/index.js"},"./strapi-server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.mjs","source":"./server/src/index.ts","default":"./dist/server/index.js","require":"./dist/server/index.js"}},"gitHead":"7851fbc67894a1b8b730cd997f62a6008ec5be41","scripts":{"lint":"NODE_OPTIONS=--experimental-strip-types eslint --flag unstable_native_nodejs_ts_config","build":"strapi-plugin build && yarn build:vite","watch":"strapi-plugin watch","verify":"strapi-plugin verify","test:jest":"ENV_PATH=./playground/.env  jest --verbose --runInBand --forceExit --detectOpenHandles","build:vite":"tsc --project vite/tsconfig.json","watch:link":"strapi-plugin watch:link","test:cypress":"NODE_EXTRA_CA_CERTS=data/common/certs/cacert.pem cypress run","e2e:services:up":"sh scripts/isscert.dev.sh && docker compose up --build --wait --force-recreate","playground:build":"cd playground && yarn build","playground:start":"cd playground && yarn start","e2e:services:down":"docker compose down -v --remove-orphans","test:cypress:open":"cypress open","playground:develop":"cd playground && yarn develop","playground:install":"yalc push && yarn playground:yalc-add-link && cd playground && yarn install --frozen-lockfile","playground:yalc-add":"cd playground && yalc add @aartoni/strapi-plugin-oidc","playground:yalc-add-link":"cd playground && yalc add --link @aartoni/strapi-plugin-oidc"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:19c87962-22a8-4e5e-bdaa-74588e965c7a"}},"repository":{"url":"git+https://github.com/aartoni/strapi-plugin-oidc.git","type":"git"},"_npmVersion":"11.16.0","description":"Replace the Strapi 5 admin login with your OIDC provider","directories":{},"_nodeVersion":"24.18.0","dependencies":{"jose":"^6.2.3","pkce-challenge":"^6.0.0","@jmespath-community/jmespath":"^1.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.0","nock":"^14.0.5","yalc":"^1.0.0-pre.53","react":"^18.0.0","dotenv":"^17.4.0","eslint":"^10.6.0","accepts":"^1.3.8","cypress":"^15.18.0","globals":"^17.7.0","prettier":"^3.9.4","react-dom":"^18.0.0","supertest":"^7.2.0","@eslint/js":"^10.0.1","@types/koa":"^2.15.2","react-intl":"^6.6.0","typescript":"^6.0.0","@babel/core":"^7.29.0","@types/react":"^18.0.0","@strapi/icons":"^2.2.3","@strapi/strapi":"^5.50.1","@types/cookies":"^0.9.2","@types/supertest":"^7.2.1","react-router-dom":"^6.30.3","@babel/preset-env":"^7.29.0","styled-components":"^6.4.0","typescript-eslint":"^8.62.0","@strapi/sdk-plugin":"^6.1.1","@strapi/design-system":"^2.2.3","eslint-plugin-cypress":"^6.4.1","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6","cypress-terminal-report":"^7.3.0","@babel/preset-typescript":"^7.29.0","@strapi/typescript-utils":"^5.50.1","@testing-library/cypress":"^10.1.0"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0","react-intl":"^6.6.0","@strapi/icons":"^2.2.3","@strapi/strapi":"^5.50.1","react-router-dom":"^6.30.3","styled-components":"^6.4.0","@strapi/design-system":"^2.2.3"},"_npmOperationalInternal":{"tmp":"tmp/strapi-plugin-oidc_1.1.1_1784094402562_0.12100627822157883","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@aartoni/strapi-plugin-oidc","version":"1.2.0","keywords":["strapi","plugin","oauth","SSO","OIDC","OpenID Connect"],"author":{"url":"https://github.com/aartoni","name":"aartoni"},"license":"MIT","_id":"@aartoni/strapi-plugin-oidc@1.2.0","maintainers":[{"name":"aartoni","email":"arto7796@gmail.com"}],"homepage":"https://github.com/aartoni/strapi-plugin-oidc#readme","bugs":{"url":"https://github.com/aartoni/strapi-plugin-oidc/issues"},"dist":{"shasum":"9fe2d8af2f4f7dfe7fb2a9db3b439413fd8728b7","tarball":"https://registry.npmjs.org/@aartoni/strapi-plugin-oidc/-/strapi-plugin-oidc-1.2.0.tgz","fileCount":39,"integrity":"sha512-Ek4eY7DRorsKSPufo16Byv4BWnDiqxnqeEqVxBx9geWJ0DGOzonVCTdd6THWBSGOFscgiQLQ8gGb5E9kH2uK1A==","signatures":[{"sig":"MEYCIQChBLop1L9gho0ZEtG/pEy8WnFjVykFxiWnUWqFogVXugIhAI7S5njJi9SuJjLVLXRsBzR8GMTb7Ko2IbzUquLHPq/7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aartoni%2fstrapi-plugin-oidc@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":70868},"strapi":{"kind":"plugin","name":"oidc","description":"Single Sign-On via OpenID Connect","displayName":"Single Sign On"},"engines":{"npm":">=8.6.0","node":">=22.12.0 <25.0.0"},"exports":{"./vite":{"types":"./dist/vite/index.d.ts","source":"./vite/index.ts","default":"./dist/vite/index.js","require":"./dist/vite/index.js"},"./package.json":"./package.json","./strapi-admin":{"import":"./dist/admin/index.mjs","source":"./admin/src/index.ts","default":"./dist/admin/index.js","require":"./dist/admin/index.js"},"./strapi-server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.mjs","source":"./server/src/index.ts","default":"./dist/server/index.js","require":"./dist/server/index.js"}},"gitHead":"fd8a573ae298b65c56baf123269690957b995ec0","scripts":{"lint":"NODE_OPTIONS=--experimental-strip-types eslint --flag unstable_native_nodejs_ts_config","build":"strapi-plugin build","watch":"strapi-plugin watch","verify":"strapi-plugin verify","test:jest":"ENV_PATH=./playground/.env  jest --verbose --runInBand --forceExit --detectOpenHandles","watch:link":"strapi-plugin watch:link","test:cypress":"NODE_EXTRA_CA_CERTS=data/common/certs/cacert.pem cypress run","e2e:services:up":"sh scripts/isscert.dev.sh && docker compose up --build --wait --force-recreate","playground:build":"cd playground && yarn build","playground:start":"cd playground && yarn start","e2e:services:down":"docker compose down -v --remove-orphans","test:cypress:open":"cypress open","playground:develop":"cd playground && yarn develop","playground:install":"yalc push && yarn playground:yalc-add-link && cd playground && yarn install --frozen-lockfile","playground:yalc-add":"cd playground && yalc add @aartoni/strapi-plugin-oidc","playground:yalc-add-link":"cd playground && yalc add --link @aartoni/strapi-plugin-oidc"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:19c87962-22a8-4e5e-bdaa-74588e965c7a"}},"repository":{"url":"git+https://github.com/aartoni/strapi-plugin-oidc.git","type":"git"},"_npmVersion":"11.16.0","description":"Replace the Strapi 5 admin login with your OIDC provider","directories":{},"_nodeVersion":"24.18.0","dependencies":{"jose":"^6.2.3","pkce-challenge":"^6.0.0","@jmespath-community/jmespath":"^1.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.0","nock":"^14.0.5","yalc":"^1.0.0-pre.53","react":"^18.0.0","dotenv":"^17.4.0","eslint":"^10.6.0","accepts":"^1.3.8","cypress":"^15.18.0","globals":"^17.7.0","prettier":"^3.9.4","react-dom":"^18.0.0","supertest":"^7.2.0","@eslint/js":"^10.0.1","@types/koa":"^2.15.2","react-intl":"^6.6.0","typescript":"^6.0.0","@babel/core":"^7.29.0","@types/react":"^18.0.0","@strapi/icons":"^2.2.3","@strapi/strapi":"^5.50.1","@types/cookies":"^0.9.2","@types/supertest":"^7.2.1","react-router-dom":"^6.30.3","@babel/preset-env":"^7.29.0","styled-components":"^6.4.0","typescript-eslint":"^8.62.0","@strapi/sdk-plugin":"^6.1.1","@strapi/design-system":"^2.2.3","eslint-plugin-cypress":"^6.4.1","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6","cypress-terminal-report":"^7.3.0","@babel/preset-typescript":"^7.29.0","@strapi/typescript-utils":"^5.50.1","@testing-library/cypress":"^10.1.0"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0","react-intl":"^6.6.0","@strapi/icons":"^2.2.3","@strapi/strapi":"^5.50.1","react-router-dom":"^6.30.3","styled-components":"^6.4.0","@strapi/design-system":"^2.2.3"},"_npmOperationalInternal":{"tmp":"tmp/strapi-plugin-oidc_1.2.0_1784118531946_0.8195549584331905","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@aartoni/strapi-plugin-oidc","version":"1.3.0","description":"Replace the Strapi 5 admin login with your OIDC provider","strapi":{"displayName":"Single Sign On","name":"oidc","description":"Single Sign-On via OpenID Connect","kind":"plugin"},"scripts":{"build":"strapi-plugin build","watch":"strapi-plugin watch","watch:link":"strapi-plugin watch:link","verify":"strapi-plugin verify","lint":"NODE_OPTIONS=--experimental-strip-types eslint --flag unstable_native_nodejs_ts_config","test:jest":"ENV_PATH=./playground/.env  jest --verbose --runInBand --forceExit --detectOpenHandles","test:cypress":"NODE_EXTRA_CA_CERTS=data/common/certs/cacert.pem cypress run","e2e:services:up":"sh scripts/isscert.dev.sh && docker compose up --build --wait --force-recreate","e2e:services:down":"docker compose down -v --remove-orphans","test:cypress:open":"cypress open","playground:install":"yalc push && yarn playground:yalc-add-link && cd playground && yarn install --frozen-lockfile","playground:yalc-add":"cd playground && yalc add @aartoni/strapi-plugin-oidc","playground:yalc-add-link":"cd playground && yalc add --link @aartoni/strapi-plugin-oidc","playground:build":"cd playground && yarn build","playground:develop":"cd playground && yarn develop","playground:start":"cd playground && yarn start"},"keywords":["strapi","plugin","oauth","SSO","OIDC","OpenID Connect"],"peerDependencies":{"@strapi/design-system":"^2.2.3","@strapi/icons":"^2.2.3","@strapi/strapi":"^5.51.1","react":"^18.0.0","react-dom":"^18.0.0","react-intl":"^6.6.0","react-router-dom":"^6.30.3","styled-components":"^6.4.0","vite":"^5.4.21"},"peerDependenciesMeta":{"vite":{"optional":true}},"dependencies":{"@jmespath-community/jmespath":"^1.3.0","jose":"^6.2.3"},"author":{"name":"aartoni","url":"https://github.com/aartoni"},"repository":{"type":"git","url":"git+https://github.com/aartoni/strapi-plugin-oidc.git"},"bugs":{"url":"https://github.com/aartoni/strapi-plugin-oidc/issues"},"maintainers":[{"name":"aartoni","email":"arto7796@gmail.com"}],"publishConfig":{"access":"public"},"engines":{"node":">=22.12.0 <25.0.0","npm":">=8.6.0"},"license":"MIT","devDependencies":{"@babel/core":"^7.29.0","@babel/preset-env":"^7.29.0","@babel/preset-typescript":"^7.29.0","@eslint/js":"^10.0.1","@jest/globals":"^30.4.1","@strapi/admin":"^5.51.1","@strapi/design-system":"^2.2.3","@strapi/icons":"^2.2.3","@strapi/sdk-plugin":"^6.1.1","@strapi/strapi":"^5.51.1","@strapi/typescript-utils":"^5.51.1","@testing-library/cypress":"^10.1.0","@types/cookies":"^0.9.2","@types/koa":"^2.15.2","@types/node":"^26.1.1","@types/react":"^18.0.0","@types/supertest":"^7.2.1","accepts":"^1.3.8","cypress":"^15.19.0","cypress-terminal-report":"^7.3.0","dotenv":"^17.4.0","eslint":"^10.8.0","eslint-config-prettier":"^10.1.8","eslint-plugin-cypress":"^6.4.1","eslint-plugin-prettier":"^5.5.6","globals":"^17.8.0","jest":"^30.4.0","nock":"^14.0.5","prettier":"^3.9.4","react":"^18.0.0","react-dom":"^18.0.0","react-intl":"^6.6.0","react-router-dom":"^6.30.3","styled-components":"^6.4.0","supertest":"^7.2.0","typescript":"^6.0.0","typescript-eslint":"^8.65.0","vite":"5.4.21","yalc":"^1.0.0-pre.53"},"exports":{"./package.json":"./package.json","./strapi-admin":{"source":"./admin/src/index.ts","import":"./dist/admin/index.mjs","require":"./dist/admin/index.js","default":"./dist/admin/index.js"},"./vite":{"types":"./dist/vite/index.d.ts","source":"./vite/index.ts","require":"./dist/vite/index.js","default":"./dist/vite/index.js"},"./strapi-server":{"types":"./dist/server/index.d.ts","source":"./server/src/index.ts","import":"./dist/server/index.mjs","require":"./dist/server/index.js","default":"./dist/server/index.js"}},"gitHead":"f8114fb5a71d1d9f84984508470bc00cbf4fadac","_id":"@aartoni/strapi-plugin-oidc@1.3.0","homepage":"https://github.com/aartoni/strapi-plugin-oidc#readme","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-120AJqqhPOVE6gWo9mHBpKmpmiXlOk37dJ+wT8B9IM/hh/yqOh3W4JsbK5O0QMBZPIPvLatK9WQiuwsmIC0gRQ==","shasum":"68cead9bf8dfee598ce294a419a702c706be4813","tarball":"https://registry.npmjs.org/@aartoni/strapi-plugin-oidc/-/strapi-plugin-oidc-1.3.0.tgz","fileCount":42,"unpackedSize":74180,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aartoni%2fstrapi-plugin-oidc@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCE3Xl+X4NVXdh2Xj6Wrtn6hSWBoSXY9GQVLyv5FRRm2gIgBXnEwve0qbBbz5G/VhgnIK5dIbuM2iMg7K1bl/AXiUs="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:19c87962-22a8-4e5e-bdaa-74588e965c7a"}},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/strapi-plugin-oidc_1.3.0_1785581680732_0.46057823490555805"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-13T08:52:48.679Z","modified":"2026-08-01T10:54:46.386Z","0.0.1":"2026-07-13T08:52:48.964Z","1.0.10":"2026-07-13T09:59:41.236Z","1.1.1":"2026-07-15T05:46:42.690Z","1.2.0":"2026-07-15T12:28:52.085Z","1.3.0":"2026-08-01T10:54:46.071Z"},"bugs":{"url":"https://github.com/aartoni/strapi-plugin-oidc/issues"},"author":{"name":"aartoni","url":"https://github.com/aartoni"},"license":"MIT","homepage":"https://github.com/aartoni/strapi-plugin-oidc#readme","keywords":["strapi","plugin","oauth","SSO","OIDC","OpenID Connect"],"repository":{"type":"git","url":"git+https://github.com/aartoni/strapi-plugin-oidc.git"},"description":"Replace the Strapi 5 admin login with your OIDC provider","maintainers":[{"name":"aartoni","email":"arto7796@gmail.com"}],"readme":"# strapi-plugin-oidc\n[![npm version](https://img.shields.io/npm/v/@aartoni/strapi-plugin-oidc.svg)](https://www.npmjs.com/package/@aartoni/strapi-plugin-oidc)\n[![license](https://img.shields.io/npm/l/@aartoni/strapi-plugin-oidc.svg)](./LICENSE)\n\nSingle sign-on for Strapi 5! Log in to the administration screen using an OpenID Connect (OIDC) provider.\n\nOptionally overwrites Strapi's default admin login page and endpoints.\n\n## Installation\n\n```sh\nyarn add @aartoni/strapi-plugin-oidc\n```\n\nor\n\n```sh\nnpm i @aartoni/strapi-plugin-oidc\n```\n\n## Configuration\n\nWith OIDC Discovery (recommended: the plugin auto-resolves endpoints from your provider):\n\n```ts\nexport default ({ env }) => ({\n  oidc: {\n    enabled: true,\n    config: {\n      issuer: \"https://your-oidc-provider.com\",\n      clientId: \"[Client ID from the provider]\",\n      clientSecret: \"[Client secret from the provider]\",\n      redirectUri: \"https://your-strapi/api/oidc/callback\",\n      scopes: \"openid profile email groups\",\n    },\n  },\n});\n```\n\n### Full options\n\nDiscoverable options are only required when `discovery` is `false`.\n\n| Key | Required | Default | Description |\n|---|---|---|---|\n| `issuer` | yes | – | Provider issuer URL (used for discovery and id_token validation) |\n| `discovery` | no | `true` | Enable OIDC Discovery |\n| `clientId` | yes | – | OIDC client ID |\n| `clientSecret` | yes | – | OIDC client secret |\n| `redirectUri` | yes | – | Callback URL after login |\n| `scopes` | no | `\"openid profile email groups\"` | Space-separated OIDC scopes |\n| `authorizationEndpoint` | discoverable | – | Provider authorization endpoint |\n| `tokenEndpoint` | discoverable | – | Provider token endpoint |\n| `userInfoEndpoint` | discoverable | – | Provider userinfo endpoint |\n| `jwksUri` | discoverable | – | Provider JWKS URI |\n| `familyNameField` | no | `\"family_name\"` | Userinfo claim for last name |\n| `givenNameField` | no | `\"given_name\"` | Userinfo claim for first name |\n| `rememberMe` | no | `true` | User persisted across restarts (`true`) or cleared when the browser closes (`false`) |\n\n### Reverse proxy\n\nWhen Strapi runs behind a TLS-terminating reverse proxy (nginx, Traefik, a cloud load balancer), enable Koa proxy trust in `config/server.ts` and ensure the proxy forwards `X-Forwarded-Proto`:\n\n```ts\nexport default ({ env }) => ({\n  // ...\n  proxy: { koa: true },\n});\n```\n\n> [!IMPORTANT]\n> Without this, Strapi treats the internal hop as plain HTTP, the admin session cookies set during login are rejected, and sign-in fails silently.\n\n### Optional routing\n\nTo overwrite Strapi's default admin login page, you'll have to add an explicit Vite configuration and import the provided plugin.\n\n```ts\nimport { oidcAuthPagePlugin } from '@aartoni/strapi-plugin-oidc/vite';\nimport { mergeConfig } from 'vite';\n\nexport default (config) =>\n  mergeConfig(config, { plugins: [oidcAuthPagePlugin()] });\n```\n\nHowever, this is not enough to guarantee that your Strapi users won't try to login via API. To address that concern, you should load the provided middleware in your `config/middlewares.ts`.\n\n```ts\n// Default Strapi middleware stack, plus the native-auth blocker.\nexport default [\n  \"strapi::logger\",\n  \"strapi::errors\",\n  \"strapi::security\",\n  \"strapi::cors\",\n  // ...\n  \"plugin::oidc.block-native-auth\",\n];\n```\n\nAdd after the default stack, placing it earlier can block admin panel routes.\n\n## Role mapping\n\nAdmin roles can be mapped from OIDC claims using [JMESPath](https://jmespath.org/) expressions. You can edit the expression from this plugin's page in the admin sidebar, but no user can log in until one is set, so bootstrap an initial expression in `src/index.ts` (or equivalent) before first startup. See [`playground/src/index.ts`](playground/src/index.ts) for a working example.\n\n## OIDC provider\n\nSee the [Docker compose file](compose.yml) for an example of how to set-up Authelia as an OIDC provider.\n\nCommercial providers might ship OIDC support, including:\n- [Google Identity Platform](https://docs.cloud.google.com/identity-platform/docs/web/oidc)\n- [Amazon Cognito](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-oidc-idp.html)\n- [Microsoft Entra](https://learn.microsoft.com/en-us/entra/identity-platform/v2-protocols-oidc)\n\n## Development\n\nSee [CONTRIBUTING.md](.github/CONTRIBUTING.md).\n","readmeFilename":"README.md"}