Was International Law Violated?
When it used chemical weapons to kill large numbers of civilians in his own country, Assad's regime in Syria was violating its obligations under the Chemical Weapons Convention, an international treaty obligation that the regime acknowledged was binding upon it in 2013 when at U.S. insistence and with Russian supervision, the Assad regime purported to destroy its chemical weapons stockpiles.
It was also an action violating generally recognized standards of the customary international law of war that have been recognized since they were first clearly articulated in the Geneva Protocol of 1925 that took effect in 1928. This kind of action has also been recognized as a crime against humanity under customary international law, and this principle is why international criminal tribunals set up after crimes against humanity occur are not considered to be applying ex post facto laws.
Also, since early on in the Syrian Civil War, during the Obama Administration, the U.S. ceased to recognize Assad's regime as the legitimate government of Syria. According to official U.S. policy, since 2012, the Syrian National Council, and not Assad's regime, has been the legitimate government of Syria. So, rather than being an attack on a sovereign regime, this was an act in defense of a different sometimes allied regime recognized as legitimate, with whom the U.S. is not at war.
Moreover, given that fact that the U.S. now has a artillery combat ground troop unit deployed in Northern Syria as of earlier in 2017, in support of a Congressionally authorized military action in the same theater of conflict, the U.S. has a legitimate interest in protecting its own troops, as well as those of allies it supports in the part of the conflict that it is involved in under the 2001 AUMF, from chemical weapons attacks in Syria by preemptively disabling the Assad regime's ability to deploy those weapons, even though they were not directed at somewhat nearby U.S. forces in their most recent utilization this week.
So, while there may not be entirely clear international legal authorization for this particular remedy for the Assad regime's clear violation of international law, there is not a clear prohibition on doing so either, and the general rule is that sovereign states have wide discretion to take military action in support of their perceived interests, particular when violations international obligations of the offender targeted for military action provide a justification for the use of military force under international law.
This is because the main way of punishing a violation of international war while a conflict is still pending is called a reprisal which the Syrian strike fits to a tee.
A reprisal is a limited and deliberate violation of international law
to punish another sovereign state that has already broken them. . . .
Reprisals refer to acts which are illegal if taken alone, but become
legal when adopted by one state in retaliation for the commission of
an earlier illegal act by another state.
Article XII(3) of the Chemical Weapons Convention authorizes those remedies allowed under customary international law of which reprisal is one.
Did The President Have Authority To Make The Strike Under U.S. Law?
This said, the harder issue is whether this strike was legal under U.S. law, and not international law, which really has no meaningful binding enforcement mechanism other than politics, diplomacy and domestic law anyway.
While the U.S. does not recognize the Assad regime as legitimate, it is not actually at war with that regime because the Authorization for Use of Military Force (AUMF) from 2001 that has been the main legal authorization for the "war on terror" against ISIS, pretty clear does not extend to Assad's regime in Syria. ISIS has been declared to be a successor to a branch of the organization the launched the 9-11 attack upon which the AUMF declared war. But, the formerly legitimate government of Syria (Assad's regime) is very difficult to treat as coming within that definition.
However, while Congress has not authorized the use of military force by the U.S. against the Assad regime in Syria in this manner, Congress has approved appropriations to fund and support anti-Assad rebels, even though it may have been a bit of a fiasco, which at least provides some tacit evidence of Congressional consent to some sort of involvement in the Syrian civil war by the United States government against Assad's regime.
In absence of an authorization of use of military force against the Assad regime, one alternative source of legal authority to make this strike is legislation (whose constitutionality has often been questioned, but has never actually challenged, was determined by the Justice Department to be constitutional in 1980, and which is arguably not justiciable) called the War Powers Act of 1973. This Act, on its face, purports to give the President the authority to make limited use of military force for short periods of time. Specifically (per the link):
It provides that the U.S. President can send U.S. Armed Forces into
action abroad only by declaration of war by Congress, "statutory
authorization," or in case of "a national emergency created by attack
upon the United States, its territories or possessions, or its armed
forces."
The War Powers Resolution requires the President to notify Congress
within 48 hours of committing armed forces to military action and
forbids armed forces from remaining for more than 60 days, with a
further 30-day withdrawal period, without a Congressional
authorization for use of military force (AUMF) or a declaration of war
by the United States.
The question of whether this incident is within the scope of the War Powers Act is disputed with U.S. Senator Rand Paul arguing the conditions triggering its use such as an attack on U.S. forces or the United States, have not been met. The issues presented by this incident under the War Powers Act are similar to those presented in the missile strike and follow up airstrikes made by the U.S. in Libya in 2011.
There is also legitimate room for dispute regarding where the authority of the President as Commander in Chief of the Armed Forces under Article II, Section 2, Clause 1 of the United States Constitution ends, and where the power of Congress to declare war and to enact other legislation pertaining to the U.S. military under Article I, Section 8 of the United States Constitution begins.
Arguably, directing U.S. forces to make an isolated military strike from a location where they are already lawfully deployed in support of an AUMF authorized military mission in the region, in exigent circumstances, against a military force that is not recognized by the United States as the legitimate government of Syria, does not constitute a true act of war and is instead merely day to day management of the operations and discipline of the United States military that is within the Commander in Chief's authority, particularly when Congress has already tentatively recognized the Syria's Assad regime is an enemy of the United States in legislation short of an authorization for use of military force.
Moreover, given that President Trump surely has majority support in both houses of Congress for this strike, the possibility that Congress may end up granting forgiveness rather than making much of the fact that he didn't ask for permission, may be mostly a formality in this case.
Generally speaking, even if this issue is justiciable (i.e. amenable to resolution through the court system), court action to enforce separation of powers questions must be authorized, at least, by a resolution of a majority of one of the two houses of Congress. Generally speaking, taxpayer standing or just plain U.S. citizen standing, does not exist to enjoin or seek a remedy from a separation of powers violation.