In general, the product owner's job is to specify what to build, not how to build it. But, there may be times when it is appropriate for a product owner to specify some architectural decisions.
For example, years ago when Sun was seeking to promote the Java language, they offered money to companies who used Java to develop certain applications. A couple of product owners I worked with back then mandated that their teams use Java.
In some cases, these were applications with marginal business cases that would not have been justified without funding from Sun, so those mandates made sense. The developers didn’t object because they wanted to experiment with the hot, new technology of the time.
A product owner mandating a technical decision should not happen often and product owners should exercise great care in doing it. And product owners who do so had better be right when they dictate a technical decision.
In most of the cases when they dictated Java, they really weren’t right—Java in its early days really wasn’t up to some of the challenges of some of those applications.
As another example, consider an embedded device. The product owner has decided the product will be economically viable if produced on a particular piece of hardware, but not on a more expensive piece of hardware.
The product owner may tell the team that they are restricted to using the lesser hardware. Sure, the team would probably prefer the more expensive hardware, but the product would not be economically viable then.
So, product owners can dictate architectural decisions. But they should do so sparingly, wisely and ideally, in consultation with the team.