Қолданбаға кіруді қалай қосу керек: құпия сөздер, сілтемелер, Google және рөлдер
Қолданбаға кіруді қосу үшін әдісті таңдаңыз — электрондық пошта мен құпия сөз, magic link (сізден электрондық поштаға жіберілген бір реттік кіру сілтемесі) немесе «Google арқылы кіру» — және оны құпия сөз немесе сессия логикасын нөлден жазбай, дәлелденген аутентификация кітапханасымен немесе жарияланған провайдермен іске асырыңыз. Содан кейін әр пайдаланушы типі не істей алатынын анықтаңыз (рөлдер) және әр бет пен API сұрауында оны серверде күштеңіз. Сессиялар қауіпсіз cookie-лерді пайдалануы, мерзімі өтуі және шығуда дұрыс аяқталуы керек.
Бұл нұсқаулық әр таңдауды және жұмыс істейтін кірудан қауіпсіз кірді ажыратып тұратын мәліметтерді қарастырады. Тұжырымдамалар үшін аутентификация дегеніміз не бетін қараңыз.
Алдымен шешіңіз: кіру мүлдем керек пе?
Кіру адамдарға қосымша қадам және жауапкершілік қосады. Оған мынадай жағдайларда ғана қажет:
- Пайдаланушыларда жеке деректер бар (брондаулары, құжаттары, шоттары)
- Пайдаланушылар басқалар көретін нәрсені өзгерте алады
- Қолжетімділікке ақы аласыз
- Әр түрлі адамдарға әр түрлі рұқсат керек (иесі, қызметкер, клиент)
Маркетинг сайтына, ашық каталогқа немесе тек электрондық хат жіберетін формаға кіру керек емес. Күту тізімінде аккаунт керек емес; электрондық пошта өрісі жеткілікті.
Жалпы төрт кіру әдісі
| Әдіс | Қалай жұмыс істейді | Артықшылықтары | Кемшіліктері |
|---|---|---|---|
| Электрондық пошта + құпия сөз | Пайдаланушы құпия сөз жасайды; сіз оның хэшін сақтайсыз | Таныс, электрондық поштадан тыс де жұмыс істейді | Құпия сөзді қалпына келтіру, қайта пайдалану, деректер ағып кетуі; құпия сөздерді қауіпсіз сақтау керек |
| Magic link | Пайдаланушы электрондық поштасын енгізеді, сіз жібергән сілтемені басады | Сақтайтын немесе ұмытатын құпия сөз жоқ | Электрондық пошта жеткізуіне тәуелді; кіру баяу |
| Бір реттік код | Пайдаланушы электрондық поштасын енгізеді, 6 таңбалы кодты теріп жазады | Сілтемелер дұрыс емес браузерде ашылғанда жұмыс істейді | Сол электрондық поштаға тәуелділік |
| Әлеуметтік / OAuth (Google, Apple, GitHub, Microsoft) | Басқа провайдер пайдаланушының кім екенін растайды | Пайдаланушылар үшін ең жылдам; сақтайтын құпия сөз жоқ | Пайдаланушыда сол аккаунт болуы керек; провайдерде баптау |
Көп қолданбалар екеуін біріктіреді: Google арқылы кіру және электрондық поштадағы magic link — құпия сөздерді сақтамай-ақ адамдардың көпшілігін қамтитын танымал тіркеме.
Электрондық пошта және құпия сөз
Құпия сөзді ұсынсаңыз, мыналар міндетті:
- Құпия сөздерді баяу құпия сөз хэштеу алгоритмімен хэштеңіз. OWASP-тың құпия сөзді сақтау нұсқаулығы Argon2id ұсынады, ал scrypt, bcrypt немесе PBKDF2 балама ретінде. Құпия сөздерді ешқашан таза мәтінде немесе жылдам жалпы хэшпен сақтамаңыз.
- Құпия сөзді қалпына келтіру расталған электрондық поштаға жіберілген, кездейсоқ, бір реттік және мерзімі өтетін сілтеме арқылы жүреді.
- Қандай электрондық поштаның аккаунты бар екенін ашпаңыз. «Егер бұл пошта тіркелген болса, қалпына келтіру сілтемесі жіберілді» деген хабар «Аккаунт табылмады» деген хабардан жақсы.
- Кіру және қалпына келтіру әрекеттерін жылдамдығын шектеңіз, құпия сөзді болжауды баяулату үшін.
- Ұзын құпия сөздер мен құпия сөз менеджерлеріне рұқсат беріңіз; біртүрлі таңба аралас ережелерін қоюдан бас тартыңыз.
Magic link және бір реттік код
Magic link — пайдаланушыға жіберілген кіру сілтемесі. Оны басқанда пайдаланушы кіреді. Бір реттік код — дәл сондай идея, тек сілтемені басудың орнына теріледі.
- Сілтемелер мен кодтар тез мерзімі өтеді және тек бір рет жұмыс істейді.
- Сілтеме пайдаланушы басқан құрылғыда кіруді орнатуы керек, ал токен журналдарда немесе аналитика құралдарында қалмауы керек.
- Сізге сенімді электрондық пошта жіберу керек — қолданбаңыздан электрондық хат жіберу бетін қараңыз. Gmail және Outlook-та тексеріңіз және спам қалталарын тексеріңіз.
Google арқылы кіру (және басқа OAuth провайдерлері)
«Google арқылы кіру» OAuth және OpenID Connect қолданады: Google пайдаланушының кім екенін растайды және қолданбаңызға оның электрондық поштасын және атын береді. 2026 жылғы қыркүйек жағдайы бойынша баптау Google Cloud Console-дағы Google Auth Platform бөлімінде жасалады:
- Жоба жасаңыз немесе таңдаңыз және Branding бетін толтырыңыз — пайдаланушылар келісім экранында не көретінін (қолданба атауы, қолдау электрондық поштасы, логотип).
- Clients бетінде «Web application» түрінде клиент жасаңыз.
- Authorized JavaScript origins және redirect URI-лерді қосыңыз — қолданбаңыз жұмыс істейтін нақты мекенжайлар және Google кірген соң пайдаланушыларды қайтаратын мекенжайлар.
- Клиент ID-і мен клиент құпиясын қолданбаңыздың құпияларында сақтаңыз.
Google-дың OAuth құжаттарына сәйкес жиі кездесетін мәселелер:
redirect_uri_mismatch: redirect мекенжайы дәл сәйкес болуы керек, соның ішіндеhttpнемесеhttps, бас әріптер және соңындағы еске салғыш (slash). Алдын ала қарау мекенжайыңыз бен тірі домендеріңіз үшін бірден қосыңыз.- HTTPS міндетті: redirect URI-лер HTTPS пайдалануы керек, әзірлеу кезінде
localhostбұдан тыс. stateпараметрін кіруден кейін тексеру керек, cross-site request forgery-ден қорғау үшін. Жақсы кітапханалар мұны сіз үшін жасайды.
Тек негізгі кіру ақпаратын (аты, электрондық пошта, профиль) сұрасаңыз, Google қолданба тексеруі міндетті емес дейді. Пайдаланушылардың Gmail, Drive немесе Calendar деректеріне қатынасты сұрау басқа нәрсе және тексеруді қажет етеді.
Өзіңіз жасау керек пе әлде провайдер пайдалану керек пе?
| Тәсіл | Мысалдар | Қашан жарайды |
|---|---|---|
| Жарияланған аутентификация провайдері | Кіруді, пайдаланушы басқаруын және сессияларды сіз үшін хостингте ұстайтын қызметтер | Кіруді кіруді тез жұмыс істетгіңіз келсе және қауіпсіздік жауапкершілігін азайтқыңыз келсе |
| Қолданбаңыздағы аутентификация кітапханасы | Құрылымыңыздың ашық бастапқы кодты кітапханалары | Пайдаланушыларды өз деректер қорыңызда ұстағыңыз келсе және пайдаланушы бойынша ақы болмаса |
| Өзіңіз жазу | — | Іс жүзінде ешқашан. Тым көп нәзік мәселелер бар |
Алғашқы екеуі де негізделген. Жарияланған провайдерлер көбірек жұмысты өзі атқарады, бірақ тәуелділік қосады және кейде белсенді пайдаланушыға ақы алады; ағымдағы бағаларды олардың сайттарында тексеріңіз. Кітапханалар бәрін деректер қорыңызда ұстайды, бірақ дұрыс баптауды көбірек өзіңізге қалдырады. Қандай таңдасаңыз да, құпия сөз немесе сессия логикасын қолмен жазбау үшін AI-дан соны пайдалануын сұраңыз.
Рөлдер және рұқсаттар
Кіру сізге адамның кім екенін айтады. Рұқсаттар олардың не істей алатынын шешеді. Алғашқыда қарапайым ұстаңыз:
| Рөл | Әдеттегі рұқсаттар |
|---|---|
| Келуші | Жария беттерді көру |
| Мүше / клиент | Өз жазбаларын көру және өңдеу |
| Қызметкер | Өз командасындағы немесе бизнесіндегі барлық жазбаларды көру; параметрлерді немесе төлемді өзгерте алмайды |
| Иесі / әкімші | Барлығы, пайдаланушылар мен төлем қоса |
Рөл атауларынан маңыздырақ ережелер:
- Әр рет серверде тексеріңіз. Бетте батырманы жасыру API-ға тікелей қоңырау шалудан адамды тоқтатпайды.
- Иесі бойынша шектеңіз. «123 брондауын» сұраған мүше оны тек өзінікі болса ғана алуы керек.
- Пайдаланушылар өзін көтере алмайды. Профиль жаңартуларында браузерден жіберілген рөл өрістерін елемеңіз.
- Әдепкіде қатынасты жоққа шығарыңыз. Жаңа маршруттар сіз басқаша шешпесеңіз, кіруді талап етуі керек.
Екі аккаунтпен тексеріңіз: бірімен кіріп, жазбаның ID-ін жазып алыңыз, содан кейін екіншімен кіріп, оны ашуға тырысыңыз. Толық тексеру үшін AI-мен жасалған қолданбаларға арналған қауіпсіздік чек-листін қараңыз.
Сессия қауіпсіздігі
Кіруден кейін қолданба пайдаланушыны сессия арқылы есте сақтайды — әдетте cookie арқылы. OWASP-тың сессияны басқару нұсқаулығы мыналарды ұсынады:
- Сессия cookie-лері
Secure(тек HTTPS),HttpOnly(бет скрипттері оқи алмайды) жәнеSameSiteпараметрлерімен орнатылған - Кіргенде жаңа сессия ID беріледі, ал құқықтар өзгергенде тағы да
- Бос тұру уақыты және абсолютті ең ұзақ өмір сүру мерзімі серверде күштеледі
- Шығу сессияны серверде аяқтайды, тек cookie-ді жоймайды
- Пайдаланушы құпия сөзін өзгерткенде сессиялар жойылады
Оқулықтарда жиі кездесетін, веб-қолданбалар үшін әдетте қауіпсіз cookie-лер жақсырақ әдепкі — ал кіру токендерін браузердің local storage-ында сақтау бетте жұмыс істейтін кез келген скриптке ашық болады.
Негізгі мәселелерді қамтитын промпт
Бұл қолданбаға пайдаланушы аккаунттарын қос. Пайдаланушылар электрондық пошта мен құпия сөзбен немесе Google арқылы тіркеле және кіре алады. Кастомдық аутентификация кодының орнына [кітапхана немесе провайдер] пайдалан. Құпия сөздерді Argon2id немесе bcrypt арқылы хэштеңіз. Электрондық пошта арқылы құпия сөзді қалпына келтіруді қос, бір реттік сілтеме бір сағатта мерзімі өтсін. Сессияларды қауіпсіз, HttpOnly cookie-лерде сақтаңыз. /dashboard және әр /api маршрутын қорғаңыз, тек кірген пайдаланушылар пайдалана алсын, және пайдаланушылар тек өз жобаларын көрсін. «admin» рөлін қос, ол барлық пайдаланушыларды көре алсын; /admin-ге тек әкімшілер жете алсын, серверде тексерілсін.
Содан кейін тексеріңіз: тіркеліңіз, шығыңыз, кіріңіз, құпия сөзді қалпына келтіріңіз, кірмей тұрып жеке URL-ді ашыңыз және басқа пайдаланушының жазбасын сынаңыз.
AI арқылы жасалған кірудегі жиі кездесетін қателер
- Қорғау тек бетте. Бет кірмеген пайдаланушыларды бағыттайды, бірақ API деректерді кез келген адамға қайтарады.
- Құпиялар браузерде. OAuth клиент құпиялары мен аутентификация провайдерінің әкімші кілттері серверде тұруы керек.
- Алдын ала қарау мен тірі URL-дер араласып кетеді. Google redirect URI немесе қалпына келтіру электрондық хатындағы сілтеме алдын ала қараудағы мекенжайға бағытталған, сондықтан жарияланғаннан кейін кіру бұзылады.
- Электрондық поштаны растамау. Кез келген адам anyone@company.com ретінде тіркеле алады. Осы мекенжаймен байланысты кез келген нәрсені бермес бұрын электрондық поштаны растаңыз.
- Тек дұрыс жағдайды тексеру. Қате құпия сөздерді, мерзімі өткен сілтемелерді және екінші аккаунтты сынаңыз.
Mythex-те кіруді қосу
Mythex-те сіздің қолданбаңыздың пайдаланушылары үшін кіру — қолданбаңызға қосатын нәрсе, ол Mythex аккаунтыңыздан бөлек. Mythex өзінің кірістірілген аутентификация өнімін ұсынбайды, сондықтан аутентификация кітапханасын немесе провайдерді және оның кілттерін өзіңіз әкелесіз:
- Тәсілді таңдаңыз — мысалы электрондық пошта мен құпия сөз өз деректер қорыңызда немесе жарияланған провайдердің SDK-сы.
- Пайдаланушыларды өзіңіз сақтасаңыз, қолданбаға деректер қоры керек; оны чатта сұраңыз немесе
/databaseпайдаланыңыз. - Провайдер кілттерін жоба құпияларына салыңыз (
/secretsнемесе жоба баптаулары). - Жоғарыдағы сияқты промпт қолданыңыз, содан кейін Preview-де тексеріңіз. Google арқылы кіру үшін алдын ала қарау және жарияланған мекенжайыңыз үшін redirect URI қосыңыз.
Құжаттардағы Қолданбаға кіруді қосу бөлімін қараңыз. Ақылы өнім жасап жатсаңыз, SaaS MVP-ді қалай құру керек аккаунттар мен төлемді бірге қарастырады.
Сұрақтар
Қолданбаға қосу ең оңай кіру қандай?
Жарияланған аутентификация провайдерін немесе жақсы қолдау табатын аутентификация кітапханасын пайдалану әдетте ең оңай және ең қауіпсіз, себебі сессиялар, құпия сөздерді сақтау және қалпына келтіру өңделген. Google арқылы кіру — Google аккаунттары бар пайдаланушылар үшін ең жеңіл нұсқа.
Magic link құпия сөзден қауіпсізірек пе?
Олар құпия сөзді қайта пайдалануды және әлсіз құпия сөздерді жояды, бірақ тәуекелді пайдаланушының электрондық пошта аккаунтына аударады. Сілтемелер тез мерзімі өтетін және тек бір рет жұмыс істейтін болуы керек. Көптеген шағын қолданбалар үшін бұл лайықты таңдау, көбіне Google арқылы кірумен қатар ұсынылады.
Google арқылы кіруді қосу үшін Google-дың рұқсаты керек пе?
Тек негізгі кіру ақпаратын (аты, электрондық пошта және профиль) сұрасаңыз, Google қолданбаны тексеру міндетті емес дейді, бірақ келісім экранын және OAuth клиентін баптауыңыз керек. Gmail немесе Drive сияқты сезімтал деректерге қатынасты сұрау Google-дың қолданба тексеруін қажет етеді.
Кіру мен рұқсаттардың айырмашылығы неде?
Кіру (аутентификация) пайдаланушының кім екенін растайды. Рұқсаттар (авторизация) сол пайдаланушы не көре алатынын және не істей алатынын шешеді. Қолданбаға екеуі де керек, ал рұқсаттар әр сұрауда серверде тексерілуі керек.