add: authorization and di