International Call protection

To reduce expensive telephone bill’s we want an protection on international dialing.
Every extensions get an password, so everybody is responsible for his/her phone call’s.

Is that possible with asterisk?
An sample file:
exten => s,1,Answer
exten => n,2,Wait(1)
exten => n,3,Read(password,enter-password,4)
exten => n,4,GotoIf($[${password} = 1234]?5:7)
exten => n,5,Goto(dialout) ???
exten => n,6,Hangup
exten => n,7,Playback(invalid)
exten => n,8,Hangup

I made an international dialplan, and included the context in it, but after password i get an busy tone.

Is it possible what i want to do?



I assume the context dialout exists ?

so exten => n,5,Goto(dialout) should be exten => n,5,Goto(dialout,s,1) or the like or user disa


How about

Exten => _011,1,Answer
Exten => _011,2,Authenticate(1234)
Exten => _011,3,Dial(…
If the password fails the system will hang up on them.