- Notifications
You must be signed in to change notification settings - Fork928
Commitadb4459
feat: support the OAuth2 device flow with GitHub for signing in (#16585)
First PR in a series to address#16230.Introduces support for logging in via the [GitHub OAuth2 DeviceFlow](https://docs.github.com/en/apps/oauth-apps/building-oauth-apps/authorizing-oauth-apps#device-flow).It's previously been possible to configure external auth with the deviceflow, but it's not been possible to use it for logging in. This PRbuilds on the existing support we had to extend it to sign ins.When a user clicks "sign in with GitHub" when device auth is configured,they are redirected to the new `/login/device` page, which makes theflow possible from the client's side. The recording below shows the fullflow.https://github.com/user-attachments/assets/90c06f1f-e42f-43e9-a128-462270c80fddI've also manually tested that it works for converting frompassword-based auth to oauth.Device auth can be enabled by a deployment's admin by setting the`CODER_OAUTH2_GITHUB_DEVICE_FLOW` env variable or a corresponding configsetting.1 parent3e3b332 commitadb4459
File tree
24 files changed
+657
-111
lines changed- cli
- testdata
- coderd
- apidoc
- httpmw
- codersdk
- docs/reference
- api
- cli
- enterprise/cli/testdata
- site/src
- api
- queries
- components/GitDeviceAuth
- pages
- ExternalAuthPage
- LoginOAuthDevicePage
24 files changed
+657
-111
lines changedLines changed: 29 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
677 | 677 |
| |
678 | 678 |
| |
679 | 679 |
| |
680 |
| - | |
| 680 | + | |
681 | 681 |
| |
682 | 682 |
| |
683 | 683 |
| |
684 | 684 |
| |
685 | 685 |
| |
| 686 | + | |
686 | 687 |
| |
687 | 688 |
| |
688 | 689 |
| |
| |||
1831 | 1832 |
| |
1832 | 1833 |
| |
1833 | 1834 |
| |
| 1835 | + | |
| 1836 | + | |
1834 | 1837 |
| |
1835 |
| - | |
| 1838 | + | |
1836 | 1839 |
| |
1837 | 1840 |
| |
1838 | 1841 |
| |
| |||
1898 | 1901 |
| |
1899 | 1902 |
| |
1900 | 1903 |
| |
| 1904 | + | |
| 1905 | + | |
| 1906 | + | |
| 1907 | + | |
| 1908 | + | |
| 1909 | + | |
| 1910 | + | |
| 1911 | + | |
| 1912 | + | |
| 1913 | + | |
| 1914 | + | |
1901 | 1915 |
| |
1902 | 1916 |
| |
1903 | 1917 |
| |
| |||
1941 | 1955 |
| |
1942 | 1956 |
| |
1943 | 1957 |
| |
| 1958 | + | |
| 1959 | + | |
| 1960 | + | |
| 1961 | + | |
| 1962 | + | |
| 1963 | + | |
| 1964 | + | |
| 1965 | + | |
| 1966 | + | |
| 1967 | + | |
| 1968 | + | |
| 1969 | + | |
| 1970 | + | |
1944 | 1971 |
| |
1945 | 1972 |
| |
1946 | 1973 |
| |
|
Lines changed: 3 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
498 | 498 |
| |
499 | 499 |
| |
500 | 500 |
| |
| 501 | + | |
| 502 | + | |
| 503 | + | |
501 | 504 |
| |
502 | 505 |
| |
503 | 506 |
| |
|
Lines changed: 3 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
262 | 262 |
| |
263 | 263 |
| |
264 | 264 |
| |
| 265 | + | |
| 266 | + | |
| 267 | + | |
265 | 268 |
| |
266 | 269 |
| |
267 | 270 |
| |
|
Lines changed: 28 additions & 0 deletions
Some generated files are not rendered by default. Learn more aboutcustomizing how changed files appear on GitHub.
Lines changed: 24 additions & 0 deletions
Some generated files are not rendered by default. Learn more aboutcustomizing how changed files appear on GitHub.
Lines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1106 | 1106 |
| |
1107 | 1107 |
| |
1108 | 1108 |
| |
| 1109 | + | |
1109 | 1110 |
| |
1110 | 1111 |
| |
1111 | 1112 |
| |
|
Lines changed: 10 additions & 3 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
167 | 167 |
| |
168 | 168 |
| |
169 | 169 |
| |
170 |
| - | |
171 |
| - | |
172 |
| - | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
173 | 180 |
| |
174 | 181 |
| |
175 | 182 |
| |
|
Lines changed: 75 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
748 | 748 |
| |
749 | 749 |
| |
750 | 750 |
| |
| 751 | + | |
| 752 | + | |
| 753 | + | |
| 754 | + | |
751 | 755 |
| |
752 | 756 |
| |
753 | 757 |
| |
754 | 758 |
| |
755 | 759 |
| |
756 | 760 |
| |
| 761 | + | |
| 762 | + | |
| 763 | + | |
| 764 | + | |
| 765 | + | |
| 766 | + | |
| 767 | + | |
| 768 | + | |
| 769 | + | |
| 770 | + | |
| 771 | + | |
| 772 | + | |
| 773 | + | |
| 774 | + | |
| 775 | + | |
| 776 | + | |
757 | 777 |
| |
758 | 778 |
| |
759 | 779 |
| |
| |||
786 | 806 |
| |
787 | 807 |
| |
788 | 808 |
| |
| 809 | + | |
| 810 | + | |
| 811 | + | |
| 812 | + | |
| 813 | + | |
| 814 | + | |
| 815 | + | |
| 816 | + | |
| 817 | + | |
| 818 | + | |
| 819 | + | |
| 820 | + | |
| 821 | + | |
| 822 | + | |
| 823 | + | |
| 824 | + | |
| 825 | + | |
| 826 | + | |
| 827 | + | |
| 828 | + | |
| 829 | + | |
| 830 | + | |
| 831 | + | |
| 832 | + | |
| 833 | + | |
| 834 | + | |
| 835 | + | |
| 836 | + | |
| 837 | + | |
| 838 | + | |
| 839 | + | |
| 840 | + | |
| 841 | + | |
| 842 | + | |
| 843 | + | |
| 844 | + | |
| 845 | + | |
| 846 | + | |
| 847 | + | |
| 848 | + | |
| 849 | + | |
| 850 | + | |
| 851 | + | |
| 852 | + | |
| 853 | + | |
| 854 | + | |
| 855 | + | |
789 | 856 |
| |
790 | 857 |
| |
791 | 858 |
| |
| |||
1016 | 1083 |
| |
1017 | 1084 |
| |
1018 | 1085 |
| |
1019 |
| - | |
| 1086 | + | |
| 1087 | + | |
| 1088 | + | |
| 1089 | + | |
| 1090 | + | |
| 1091 | + | |
| 1092 | + | |
| 1093 | + | |
1020 | 1094 |
| |
1021 | 1095 |
| |
1022 | 1096 |
| |
|
Lines changed: 87 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
22 | 22 |
| |
23 | 23 |
| |
24 | 24 |
| |
| 25 | + | |
25 | 26 |
| |
26 | 27 |
| |
27 | 28 |
| |
| |||
882 | 883 |
| |
883 | 884 |
| |
884 | 885 |
| |
| 886 | + | |
| 887 | + | |
| 888 | + | |
| 889 | + | |
| 890 | + | |
| 891 | + | |
| 892 | + | |
| 893 | + | |
| 894 | + | |
| 895 | + | |
| 896 | + | |
| 897 | + | |
| 898 | + | |
| 899 | + | |
| 900 | + | |
| 901 | + | |
| 902 | + | |
| 903 | + | |
| 904 | + | |
| 905 | + | |
| 906 | + | |
| 907 | + | |
| 908 | + | |
| 909 | + | |
| 910 | + | |
| 911 | + | |
| 912 | + | |
| 913 | + | |
| 914 | + | |
| 915 | + | |
| 916 | + | |
| 917 | + | |
| 918 | + | |
| 919 | + | |
| 920 | + | |
| 921 | + | |
| 922 | + | |
| 923 | + | |
| 924 | + | |
| 925 | + | |
| 926 | + | |
| 927 | + | |
| 928 | + | |
| 929 | + | |
| 930 | + | |
| 931 | + | |
| 932 | + | |
| 933 | + | |
| 934 | + | |
| 935 | + | |
| 936 | + | |
| 937 | + | |
| 938 | + | |
| 939 | + | |
| 940 | + | |
| 941 | + | |
| 942 | + | |
| 943 | + | |
| 944 | + | |
| 945 | + | |
| 946 | + | |
| 947 | + | |
| 948 | + | |
| 949 | + | |
| 950 | + | |
| 951 | + | |
| 952 | + | |
| 953 | + | |
| 954 | + | |
| 955 | + | |
| 956 | + | |
| 957 | + | |
| 958 | + | |
| 959 | + | |
| 960 | + | |
| 961 | + | |
| 962 | + | |
| 963 | + | |
| 964 | + | |
| 965 | + | |
| 966 | + | |
| 967 | + | |
| 968 | + | |
| 969 | + | |
| 970 | + | |
| 971 | + | |
885 | 972 |
| |
886 | 973 |
| |
887 | 974 |
| |
|
0 commit comments
Comments
(0)