Vault is the main space to hold the user's assets. It's very similar to a savings account. Currently, one vault can only hold one asset. Some of the supported assets require several trxs to be acquired (such as LP token that needs to provide liquidity first). The Zap function will help you to facilitate this process.
For example, the USDT-USDC LP vault, the vault actually holds the USDT-USDC LP token. When users try to deposit, the Zap will help to provide liquidity and get the LP token firstly. Then the LP token received will be deposited into the vault.
After depositing into the vault, the asset will be deployed to the enabled strategy that is another smart contract. Currently, one vault can only adopt one strategy.
Although every vault has the role of an owner, it can only change some configurations, such as the strategy contract address, owner address, etc. No one can steal your assets from the vault.