There are different algorithms for Proof of Authority. For instance Parity's Authority Round is essentially round robin, where as Rinkeby's version is more complicated. Proof of Authority is not well defined enough to list specific attacks, pick an implementation.
I think an important thing to keep in mind with Proof of Authority is that since the parties are predetermined and trusted, they probably already know each other. In your example with banks, the banks all are well established and know how to get in touch with each other. This is very different from a public network like Bitcoin or Ethereum, where actors are pseudonymous and can just make new identities on a whim.
In a PoA chain where the authorities all have established identities, it is very possible that penalties could exist outside the blockchain system. In your example with banks, legal contracts could be established between banks to ensure that detectable attacks or collusion between banks is punishable.
It's weird to think that a blockchain would fall back to legal rules, but it's also weird to think of a blockchain that is controlled by a central set of authorities.
Performance:
The transaction throughput is limited (among other things) by the block size. By how many transactions one can fit in a block.
Proof of Authority is a centralized consortium chain and can handle potentially hundreds of thousands (or millions) of transactions per second because the scalability is not bounded by consensus on what is the correct or longest chain, but by the hardware used.
This means we can scale vertically, use large data centers to process and store all of this data. We simply allow them to place a large amount of transactions into a single block.
The block producers are few and known. Users of the blockchain trust that they will behave honestly and not collude to perform an attack.
Proof of Work on the other hand does not rely on trusting a small number of block producers to achieve consensus. Instead it allows anyone to participate in block production and achieve consensus on watching what is the longest chain. The transaction throughput on PoW is not (so much) bounded by the protocol, but by a choice users are forced to make between decentralization and transaction throughput. To illustrate this, I will use Bitcoin as an example:
Choice 1 | Small blocks - This means we can only fit a few transactions into a single block which results in low transaction throughput (~7 tx/s). But also means that mining does not require a lot storage. The system is more decentralized.
Choice 2 | Scale Bitcoin through PoA-sized blocks - In this case, users decide that each block may now be as big as 1024Gb instead of Satoshi's 1Mb. Now we can fit many more transactions in a single block and increase bitcoin's throughput. However to run a node you now need high end machines, a lot of storage and a high speed internet connection to process blockchain! Suddenly cannot afford to verify that block producers are following the rules agreed, instead you have to trust them: a regression to the status quo.
Best Answer
No actual consensus mechanism is used.
Some nodes/keys have the right to sign blocks (configured in the example json you see at https://github.com/ethcore/parity/wiki/Proof%20of%20Authority%20Chains ), others don't.
As the text says, this is only for demo/development purposes. An actual consensus mechanism will need to be plugged in later.