Skip to content

Commit

Permalink
fix auth on ozone routes
Browse files Browse the repository at this point in the history
  • Loading branch information
dholms committed Mar 7, 2024
1 parent e46397d commit d9b62b9
Show file tree
Hide file tree
Showing 12 changed files with 25 additions and 12 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import AppContext from '../../context'

export default function (server: Server, ctx: AppContext) {
server.com.atproto.admin.createCommunicationTemplate({
auth: ctx.authVerifier.moderator,
auth: ctx.authVerifier.modOrAdminToken,
handler: async ({ input, auth }) => {
const access = auth.credentials
const db = ctx.db
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import AppContext from '../../context'

export default function (server: Server, ctx: AppContext) {
server.com.atproto.admin.deleteCommunicationTemplate({
auth: ctx.authVerifier.moderator,
auth: ctx.authVerifier.modOrAdminToken,
handler: async ({ input, auth }) => {
const access = auth.credentials
const db = ctx.db
Expand Down
7 changes: 5 additions & 2 deletions packages/ozone/src/api/admin/emitModerationEvent.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,13 @@ import { retryHttp } from '../../util'

export default function (server: Server, ctx: AppContext) {
server.com.atproto.admin.emitModerationEvent({
auth: ctx.authVerifier.moderator,
auth: ctx.authVerifier.modOrAdminToken,
handler: async ({ input, auth }) => {
const access = auth.credentials
const createdBy = access.iss
const createdBy =
auth.credentials.type === 'moderator'
? auth.credentials.iss
: input.body.createdBy
const db = ctx.db
const moderationService = ctx.modService(db)
const { event } = input.body
Expand Down
2 changes: 1 addition & 1 deletion packages/ozone/src/api/admin/getModerationEvent.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import AppContext from '../../context'

export default function (server: Server, ctx: AppContext) {
server.com.atproto.admin.getModerationEvent({
auth: ctx.authVerifier.moderator,
auth: ctx.authVerifier.modOrAdminToken,
handler: async ({ params }) => {
const { id } = params
const db = ctx.db
Expand Down
2 changes: 1 addition & 1 deletion packages/ozone/src/api/admin/getRecord.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import { AtUri } from '@atproto/syntax'

export default function (server: Server, ctx: AppContext) {
server.com.atproto.admin.getRecord({
auth: ctx.authVerifier.moderator,
auth: ctx.authVerifier.modOrAdminToken,
handler: async ({ params, auth }) => {
const db = ctx.db

Expand Down
2 changes: 1 addition & 1 deletion packages/ozone/src/api/admin/getRepo.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import { addAccountInfoToRepoViewDetail, getPdsAccountInfo } from './util'

export default function (server: Server, ctx: AppContext) {
server.com.atproto.admin.getRepo({
auth: ctx.authVerifier.moderator,
auth: ctx.authVerifier.modOrAdminToken,
handler: async ({ params, auth }) => {
const { did } = params
const db = ctx.db
Expand Down
2 changes: 1 addition & 1 deletion packages/ozone/src/api/admin/listCommunicationTemplates.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import AppContext from '../../context'

export default function (server: Server, ctx: AppContext) {
server.com.atproto.admin.listCommunicationTemplates({
auth: ctx.authVerifier.moderator,
auth: ctx.authVerifier.modOrAdminToken,
handler: async ({ auth }) => {
const access = auth.credentials
const db = ctx.db
Expand Down
2 changes: 1 addition & 1 deletion packages/ozone/src/api/admin/queryModerationEvents.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import { getEventType } from '../moderation/util'

export default function (server: Server, ctx: AppContext) {
server.com.atproto.admin.queryModerationEvents({
auth: ctx.authVerifier.moderator,
auth: ctx.authVerifier.modOrAdminToken,
handler: async ({ params }) => {
const {
subject,
Expand Down
2 changes: 1 addition & 1 deletion packages/ozone/src/api/admin/queryModerationStatuses.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import { getReviewState } from '../moderation/util'

export default function (server: Server, ctx: AppContext) {
server.com.atproto.admin.queryModerationStatuses({
auth: ctx.authVerifier.moderator,
auth: ctx.authVerifier.modOrAdminToken,
handler: async ({ params }) => {
const {
subject,
Expand Down
2 changes: 1 addition & 1 deletion packages/ozone/src/api/admin/searchRepos.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import { mapDefined } from '@atproto/common'

export default function (server: Server, ctx: AppContext) {
server.com.atproto.admin.searchRepos({
auth: ctx.authVerifier.moderator,
auth: ctx.authVerifier.modOrAdminToken,
handler: async ({ params }) => {
const modService = ctx.modService(ctx.db)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import AppContext from '../../context'

export default function (server: Server, ctx: AppContext) {
server.com.atproto.admin.updateCommunicationTemplate({
auth: ctx.authVerifier.moderator,
auth: ctx.authVerifier.modOrAdminToken,
handler: async ({ input, auth }) => {
const access = auth.credentials
const db = ctx.db
Expand Down
10 changes: 10 additions & 0 deletions packages/ozone/src/auth-verifier.ts
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,16 @@ export class AuthVerifier {
this.adminPassword = opts.adminPassword
}

modOrAdminToken = async (
reqCtx: ReqCtx,
): Promise<ModeratorOutput | AdminTokenOutput> => {
if (isBasicToken(reqCtx.req)) {
return this.adminToken(reqCtx)
} else {
return this.moderator(reqCtx)
}
}

moderator = async (reqCtx: ReqCtx): Promise<ModeratorOutput> => {
const creds = await this.standard(reqCtx)
if (!creds.credentials.isTriage) {
Expand Down

0 comments on commit d9b62b9

Please sign in to comment.