I have created page type External URL and assign some permission but page can be open by any users either not log in or non authorized users.
I want to provide some roles to access that URL.
This is by design, DNN does not care about the permissions for external Urls.
The only way to go is adding a "normal" page and add something to that page that redirects to the external page, e.g. some JavaScript. You can use Will Strohl's Content Injection module for that.