Yasso היא מערכת לבניית כניסה יחידה שירות באמצעות OAuth2 & nbsp מבוסס אינטרנט;. היא נועדה להיות תואמת עם הטיוטה 25 של מפרט OAuth2.
תחילת עבודה
תצורת הדגמה כלולה כדי לעזור לך להתחיל. להתקין ולהפעיל את תצורת ההדגמה כמו זה:
& Nbsp; git clone git: //github.com/hathawsh/yasso.git
& Nbsp; yasso cd
& Nbsp; virtualenv --no-site-חבילות.
& Nbsp; bin / PIP להתקין -U zc.buildout
& Nbsp; bin / buildout
& Nbsp; bin / demo.ini pserve
שרת Yasso ההדגמה יהיה זמין בכתובת http: // localhost: 8510 /. אתה יכול לגלוש אליו, אבל אתה לא תראה הרבה עדיין.
בפגז נוסף, להתקין ולהפעיל את הלקוח oauth2sample:
& Nbsp; git clone git: //github.com/hathawsh/oauth2sample.git
& Nbsp; oauth2sample cd
virtualenv --no-site-חבילות.
& Nbsp; bin / PIP להתקין -U zc.buildout
& Nbsp; bin / buildout
& Nbsp; בן yasso-demo.ini / pserve
לקוח המדגם יהיה זמין בכתובת http: // localhost: 8511 /. חפש לשם. אתה יהיה מנותב לYasso לאשר נקודות קצה וYasso יבקש שאתה מתחבר באמצעות אימות בסיסית HTTP. התחבר עם sample1 שם המשתמש, סיסמא סיסמא. לבסוף, אתה תופנה חזרה ללקוח OAuth2 המדגם ואתה תהיה מחובר כsample1. סוף ההדגמה.
בהנחת הכל עבד, ההדגמה שהייתה קצרה ושקטה, וכך זה צריך להיות: כניסה יחידה צריכה להיות בעיקר בלתי נראה למשתמשים.
אימות בסיסית HTTP היא כנראה הדבר הראשון שאתה רוצה להחליף. כדי לשנות את זה, ליצור מתאים תצורת repoze.who עבור הארגון שלך ומשתמש בקובץ תצורת פירמידה שלך (במקום demo.ini) המצביע על קובץ תצורת repoze.who שלך.
מבנה
Yasso מורכב משלושה יישומי פירמידה מובהקים. לכל אחד יש מדיניות אבטחה שונה ונופים, אבל כולם משתמשים באותו מודל אובייקטים.
- היישום לאשר גלוי למשתמשי קצה. כאשר משתמש רוצה להתחבר באתר אינטרנט של הלקוח, הלקוח מפנה הדפדפן של המשתמש לYasso לאשר נקודות קצה (שהוא חלק מהיישום לאשר) כדי לאפשר למשתמש אנונימי. ברגע שהמשתמש נכנס, Yasso מפנה את הדפדפן בחזרה לאינטרנט הלקוח האתר עם פרמטרים OAuth2; אתר האינטרנט קורא את נקודת הסיום כדי לסיים את אסימון האישור.
- יישום האסימון, אשר מספק את נקודות קצה האסימון, הוא לא נועד להיות גלוי למשתמשים. ברגע שמשתמש מאומת בYasso, אינטרנט לקוח אתרים קוראים לנקודת סיום האסימון ישירות (באמצעות שיחת REST) כדי ליצור קוד גישה. קוד גישה מאפשרת ללקוח להשתמש ביישום המשאבים.
- יישום המשאבים גם לא נועד להיות גלוי למשתמשים. שיחות ליישום המשאב דורשות אסימון גישה חוקי בפרמטרי POST או כותרות HTTP. יישום משאב ברירת המחדל מאפשר רק אתר האינטרנט של הלקוח כדי לקבל את זיהוי המשתמש, אבל אתה יכול ליצור תצוגות המאפשרות ללקוחות לעשות דברים אחרים בשם המשתמש שלך.
Yasso כולל יישום מורכב WSGI שמשתלב שלושה יישומים יחד. היישום המורכב מפות שבילי URL שמתחילים ב/ משאבים ליישום המשאבים, נתיבי כתובת אתר שמתחילים ב/ אסימון ליישום האסימון, ואת כל כתובות אתרים האחרות ליישום לאשר.
דרישות :
- Python
תגובות לא נמצא