“My administration will not authorize the indefinite military detention without trial of American citizens. Indeed, I believe that doing so would break with our most important traditions and values as a nation.”
This does not mean that further administrations will not authorize this shit that I just signed into law.
Also, its unclear if the current bill applies to US citizens or not. Its quite ambiguous, and thats probably by design. That means it will be up to the supreme court to decide one day, but that will only happen after US citizens have been detained by the military for who knows how many years. And even then it would be surprising to see the US supreme court uphold the constitution for once.
Last point; its very disappointing Obama signed this, but its nor fair to put the blame with him, rather than congress primarily. Particularly all the advocates of "limited government".