Simplest way to me would be a double airlock method:
Have three rows of rooms. The top row is the top airlock, the middle row is the prison room, the bottom row is the bottom airlock. When an airlock is closed, a prisoner has access to that airlock but the general fortress doesn't. When an airlock is open, a prisoner does NOT have access to that airlock, but the general fortress does. Have a lever set up such the airlocks go between two states:
- Top airlock open, bottom airlock closed
- Top airlock closed, bottom airlock open
Each airlock contains a stockpile of food and booze. Thus while the top airlocks are closed, you can refill the bottom airlocks. Once the top stockpiles are emptied, flick the lever and the prisoners now have access to the bottom airlock while you refill the top airlock.
Note: it's probably simpler to have the lever which controls the airlocks within the prisoner's own room, so you ensure that the prisoner is always outside of the airlocks when the states are flipped. On the other hand, that might break the spirit of them being a prisoner.