ל-Looker יש תמיכה ברמת האינטגרציה עבור MSSQL. דף זה מכיל מידע על חיבור Looker ל-MSSQL.
הצפנה של תנועה ברשת
מומלץ להצפין את תעבורת הנתונים ברשת בין אפליקציית Looker לבין מסד הנתונים. כדאי לשקול אחת מהאפשרויות שמתוארות בדף הפעלת גישה מאובטחת למסד נתונים.
אם אתם מעוניינים להשתמש בהצפנת SSL, עיינו בתיעוד של מיקרוסופט.
הגדרת אימות שרת
Looker דורש "אימות שרת SQL" בשרת MSSQL שלך. אם שרת ה-MSSQL שלך מוגדר כ-"אימות משולב של Windows" בלבד, שנה את תצורת השרת ל-"אימות משולב של Windows ואימות שרת SQL".
אם תצורת השרת אינה מוגדרת כראוי, Looker לא יוכל להתחבר. זה יופיע בהודעות יומן ה-SQL Server שלך כך: "ניסיון להתחבר באמצעות אימות SQL נכשל." השרת מוגדר לאימות של Windows בלבד."
אם שינוי זה נדרש, ניתן לבצע את השלבים הבאים:
- ב-SQL Server Management Studio Object Explorer, לחצו לחיצה ימנית על השרת ולאחר מכן לחצו על מאפיינים.
- בדף אבטחה, תחת אימות שרת, בחר את מצב אימות השרת החדש ולאחר מכן לחץ על אישור.
- בתיבת הדו-שיח SQL Server Management Studio, לחץ על אישור כדי לאשר את הדרישה להפעיל מחדש את SQL Server.
- ב-Object Explorer, לחצו לחיצה ימנית על השרת שלכם ולאחר מכן לחצו על Restart. אם SQL Server Agent פועל, יש להפעיל אותו מחדש גם כן.
ניתן לקרוא עוד על כך בתיעוד של מיקרוסופט.
יצירת משתמש Looker
Looker מבצע אימות מול מסד הנתונים שלך באמצעות אימות SQL Server. אין תמיכה בשימוש בחשבון דומיין.
כדי ליצור חשבון, מריצים את הפקודות הבאות. משנים את הסיסמה some_password_here לסיסמה ייחודית ומאובטחת:
CREATE LOGIN looker
WITH PASSWORD = 'some_password_here';
USE MyDatabase;
CREATE USER looker FOR LOGIN looker;
GO
מתן הרשאת SELECT מטבלאות למשתמש Looker
Looker דורש את ההרשאה SELECT עבור כל טבלה או סכימה שברצונך לבצע שאילתה עליהן. ישנן מספר דרכים להקצות הרשאה ל-SELECT:
כדי להעניק ל-
SELECTהרשאה לסכמות בודדות, יש להפעיל את הפקודה הבאה עבור כל סכמה:GRANT SELECT on SCHEMA :: 'schema_name' to looker;כדי להעניק ל-
SELECTהרשאה לטבלאות בודדות, יש להפעיל את הפקודה הבאה עבור כל טבלה:GRANT SELECT on OBJECT :: 'schema_name'.'table_name' to looker;עבור MSSQL גרסה 2012 ואילך, ניתן לחלופין להקצות למשתמש Looker את התפקיד
db_datareaderבאמצעות הפקודות הבאות:USE MyDatabase; ALTER ROLE db_datareader ADD MEMBER looker; GO
מתן הרשאה למשתמש Looker לצפות ולהפסיק להריץ שאילתות
צריך לתת ל-Looker הרשאה לזהות שאילתות ולהפסיק את ההרצה שלהן. לשם כך נדרשות ההרשאות הבאות:
ALTER ANY CONNECTIONVIEW SERVER STATE
כדי להעניק הרשאות אלה, הפעל את הפקודות הבאות:
USE Master;
GRANT ALTER ANY CONNECTION TO looker;
GRANT VIEW SERVER STATE to looker;
GO
מתן הרשאה למשתמש Looker ליצור טבלאות
כדי לתת למשתמש Looker את ההרשאה ליצור PDTs, הפעל את הפקודות הבאות:
USE MyDatabase;
GRANT CREATE TABLE to looker;
GO
הגדרת סכימה זמנית
כדי ליצור סכימה בבעלות משתמש Looker ולהעניק לו את ההרשאות הנדרשות, הפעל את הפקודה הבאה:
CREATE SCHEMA looker_scratch AUTHORIZATION looker;
הגדרת אימות Kerberos
אם אתם משתמשים באימות Kerberos עם מסד הנתונים MSSQL שלכם, בצעו את השלבים כדי להגדיר את Looker להתחבר באמצעות Kerberos, כמתואר בסעיף הבא.
הגדרת תצורת הלקוח של Kerberos
ראשית, עליך לוודא התקנת מספר תוכנות ונוכחות של מספר קבצים במחשב Looker.
לקוח Kerberos
ודא שלקוח Kerberos מותקן במחשב Looker על ידי הפעלת kinit. אם לקוח Kerberos אינו מותקן, התקן את הקבצים הבינאריים של לקוח Kerberos.
לדוגמה, ב-Redhat או CentOS, זה יהיה כך:
sudo yum install krb5-workstation krb5-libs krb5-auth-dialog
Java 8
יש להתקין את Java 8 במחשב Looker וב-PATH וב-JAVA_HOME של משתמש Looker. במידת הצורך, התקן אותו באופן מקומי בספריית looker.
הרחבת קריפטוגרפיה של ג'אווה
הורד והתקן את Java Cryptography Extension (JCE) עבור Java 8 מדף ההורדה של Oracle הזה.
- אתר את הספרייה
jre/lib/securityעבור התקנת Java. - הסר את קבצי ה-JAR הבאים מספרייה זו:
local_policy.jarו-US_export_policy.jar. - החלף את שני הקבצים הללו בקבצי ה-JAR הכלולים בהורדת קבצי מדיניות השיפוט של JCE Unlimited Strength.
ייתכן שניתן להשתמש בגרסאות של ג'אווה לפני ג'אווה 8 עם JCE מותקן, אך זה לא מומלץ.
- אתר את הספרייה
עדכן את
JAVA_HOMEואתPATHב-~looker/.bash_profileכדי להצביע על ההתקנה הנכונה של Java ו-source ~/.bash_profileאו התנתק והתחבר שוב.אימות גרסת Java עם
java -version.אמת את משתנה הסביבה
JAVA_HOMEעםecho $JAVA_HOME.
gss-jaas.conf
צור קובץ gss-jaas.conf בספריית looker עם התוכן הבא:
com.sun.security.jgss.initiate {
com.sun.security.auth.module.Krb5LoginModule required
useTicketCache=true
doNotPrompt=true;
};
במידת הצורך לצורך בדיקה, ניתן להוסיף debug=true לקובץ זה כך:
com.sun.security.jgss.initiate {
com.sun.security.auth.module.Krb5LoginModule required
useTicketCache=true
doNotPrompt=true
debug=true;
};
krb5.conf
לשרת שמפעיל את Looker צריך להיות גם קובץ krb5.conf תקף. כברירת מחדל, קובץ זה נמצא ב-/etc/krb5.conf. אם הוא נמצא במיקום אחר, יש לציין זאת בסביבה (KRB5_CONFIG בסביבת המעטפת).
ייתכן שתצטרך להעתיק זאת ממחשב לקוח Kerberos אחר.
lookerstart.cfg
הצבע על קבצי gss-jaas.conf ו-krb5.conf על ידי יצירת קובץ בספריית looker (אותה ספרייה שמכילה את סקריפט האתחול של looker) בשם lookerstart.cfg המכיל את השורות הבאות:
JAVAARGS="-Djava.security.auth.login.config=/path/to/gss-jaas.conf -Djavax.security.auth.useSubjectCredsOnly=false -Djava.security.krb5.conf=/etc/krb5.conf"
LOOKERARGS=""
אם קובץ ה-krb5.conf אינו נמצא ב-/etc/krb5.conf, יהיה צורך להוסיף גם את המשתנה הזה:
-Djava.security.krb5.conf=/path/to/krb5.conf
לצורך ניפוי שגיאות, הוסף את המשתנים הבאים:
-Dsun.security.jgss.debug=true -Dsun.security.krb5.debug=true
לאחר מכן, הפעל מחדש את Looker באמצעות ./looker restart.
אימות עם Kerberos
אימות משתמשים
אם
krb5.confאינו נמצא ב-/etc/, השתמש במשתנה הסביבהKRB5_CONFIGכדי לציין את מיקומו.הפעל את הפקודה
klistכדי לוודא שיש כרטיס תקף במטמון הכרטיסים של Kerberos.אם אין כרטיס, הפעל את
kinit username@REALMאוkinit usernameכדי ליצור את הכרטיס.החשבון שבו נעשה שימוש עם Looker יהיה ככל הנראה ללא קוד הפעלה (headless), כך שתוכלו לקבל קובץ keytab מ-Kerberos כדי לאחסן את האישורים לשימוש ארוך טווח. השתמש בפקודה כמו
kinit -k -t looker_user.keytab username@REALMכדי לקבל את כרטיס Kerberos.
חידוש אוטומטי של הכרטיס
הגדר עבודת cron שפועלת מדי פעם כדי לשמור כרטיס פעיל במטמון הכרטיסים של Kerberos. באיזו תדירות זה אמור לפעול תלוי בתצורת האשכול. klist אמור לתת אינדיקציה לגבי מתי יפוג תוקף הכרטיסים.
יצירת חיבור Looker למסד הנתונים
בצע את השלבים הבאים כדי ליצור את החיבור מ-Looker למסד הנתונים שלך:
- בקטע ניהול ב-Looker, בוחרים באפשרות חיבורים ואז לוחצים על הוספת חיבור.
מהתפריט הנפתח דיאלקט, בחר את גרסת Microsoft SQL Server שברשותך.
עבור מארח מרוחק ו-יציאה, הזן את שם המארח והיציאה (יציאת ברירת המחדל היא 1433).
אם עליך לציין יציאה שאינה ברירת מחדל מלבד 1433 ומסד הנתונים שלך דורש שימוש בפסיק במקום בנקודתיים, תוכל להוסיף
useCommaHostPortSeparator=trueבשדה פרמטרים נוספים של JDBC בהמשך הגדרות החיבור, מה שיאפשר לך להשתמש בפסיק עבור Remote Host:Port. לדוגמה:jdbc:sqlserver://hostname,1434מלאו את שאר פרטי החיבור. רוב ההגדרות משותפות לרוב הניבים של מסדי הנתונים. מידע נוסף זמין בדף חיבור Looker למסד הנתונים.
כדי לוודא שהחיבור בוצע בהצלחה, לוחצים על הלחצן בדיקת החיבור בקטע פרטי הסטטוס בחלק התחתון של הדף הגדרות החיבורים.
אם ב-Looker מוצגת ההודעה Can Connect (אפשר להתחבר), לוחצים על Connect (התחברות) כדי ליצור את החיבור.
החיבור למסד הנתונים יתווסף לרשימה בדף Connections Admin ב-Looker.
הגדרת חיבור Looker
פעל לפי ההוראות בדף התיעוד של חיבור Looker למסד הנתונים שלך כדי ליצור חיבור למסד הנתונים MSSQL שלך. בקטע פרמטרים נוספים של JDBC בדף הגדרות חיבור, הוסף את הפרטים הבאים:
;integratedSecurity=true;authenticationScheme=JavaKerberos
רשתות מסוימות מוגדרות עבור שני תחומי Kerberos, אחד עבור Windows Active Directory והשני עבור Linux ומערכות אחרות שאינן Windows. במקרה כזה, כאשר ה-Realm המתמקד בלינוקס ו-Active Directory מוגדרים לתת אמון זה בזה, זה נקרא "אימות בין-ממלכות".
אם הרשת שלך משתמשת באימות בין תחומים, עליך לציין במפורש את ה-Kerberos principal עבור MSSQL Server. בשדה פרמטרים נוספים של JDBC, הוסף את הפרטים הבאים:
;serverSpn=service_name/FQDN\:PORT@REALM
החלפת FQDN ו-PORT@REALM בפרטי הרשת שלך. לדוגמה:
;serverSpn=MSSQLSvc/dbserver.internal.example.com:1433@AD.EXAMPLE.COM
בנוסף, דף הגדרות חיבור ב-Looker דורש הזנה בשדות שם משתמש ו-סיסמה, אך אלה אינם נדרשים עבור Kerberos. הזן ערכי דמה בשדות אלה.
בדוק את החיבור כדי לוודא שהוא מוגדר כהלכה.
פרמטרים נתמכים של JDBC
עבור Microsoft SQL Server, Looker תומך בפרמטרי JDBC הבאים בשדה Additional JDBC parameters עבור החיבור. מידע על הפרמטרים האלה זמין במסמכי התיעוד של מסד הנתונים.
accessTokenApplicationIntentapplicationNameauthenticationauthenticationSchemecancelQueryTimeoutcolumnEncryptionSettingdatabasedatabaseNamedisableStatementPoolingdomainenablePrepareOnFirstPreparedStatementCallEncryptfailoverPartnerfipsgsscredentialhostNameInCertificateinstanceNameIntegrated SecurityintegratedSecurityjaasConfigurationNamekeyStoreAuthenticationlastUpdateCountlocktimeoutloginTimeoutmsiClientIdmultiSubnetFailoverpacketSizepasswordportNumberqueryTimeoutrealmresponseBufferingselectMethodsendStringParametersAsUnicodesendTimeAsDatetimeserverNameserverPreparedStatementDiscardThresholdserverSpntransparentNetworkIPResolutiontrustServerCertificateuseBulkCopyForBatchInsertuseCommaHostPortSeparatoruserworkstationIDxopenStates
תמיכה בתכונות
כדי ש-Looker יתמוך בתכונות מסוימות, הדיאלקט של מסד הנתונים צריך לתמוך בהן גם כן.
Microsoft SQL Server 2008+ תומך בתכונות הבאות החל מ-Looker 26.16:
| תכונה | נתמך? |
|---|---|
| Looker (Google Cloud core) | |
| צבירה סימטרית | |
| טבלאות נגזרות | |
| טבלאות נגזרות מתמידות שמבוססות על SQL | |
| טבלאות נגזרות מתמידות מבוססות LookML | |
| תצוגות יציבות | |
| ביטול שאילתה | |
| טבלאות ציר שמבוססות על SQL | |
| אזורי זמן | |
| SSL | |
| סיכומי ביניים | |
| פרמטרים נוספים של JDBC | |
| תלוי רישיות | |
| סוג מיקום | |
| סוג הרשימה | |
| מאון | |
| אחוזון נפרד | |
| SQL Runner Show Processes | |
| SQL Runner Describe Table | |
| SQL Runner Show Indexes | |
| SQL Runner Select 10 | |
| מספר הפעמים שהופעל SQL Runner | |
| SQL Explain | |
| פרטי כניסה של OAuth 2.0 | |
| תגובות להוספת הקשר | |
| איגום חיבורים | |
| רישומים מסוג HLL | |
| מודעות מצטברת | |
| המרות מצטברות של PDT | |
| אלפיות שנייה | |
| מיקרו-שניות | |
| תצוגות מהותיות | |
| מדדים של השוואה בין תקופות שונות | |
| ספירה משוערת של ערכים ייחודיים | |
| מודלים לניתוח נתונים במסד הנתונים | |
| יומנים בהתאמה אישית |
Microsoft SQL Server 2016 תומך בתכונות הבאות החל מ-Looker 26.16:
| תכונה | נתמך? |
|---|---|
| Looker (Google Cloud core) | |
| צבירה סימטרית | |
| טבלאות נגזרות | |
| טבלאות נגזרות מתמידות שמבוססות על SQL | |
| טבלאות נגזרות מתמידות מבוססות LookML | |
| תצוגות יציבות | |
| ביטול שאילתה | |
| טבלאות ציר שמבוססות על SQL | |
| אזורי זמן | |
| SSL | |
| סיכומי ביניים | |
| פרמטרים נוספים של JDBC | |
| תלוי רישיות | |
| סוג מיקום | |
| סוג הרשימה | |
| מאון | |
| אחוזון נפרד | |
| SQL Runner Show Processes | |
| SQL Runner Describe Table | |
| SQL Runner Show Indexes | |
| SQL Runner Select 10 | |
| מספר הפעמים שהופעל SQL Runner | |
| SQL Explain | |
| פרטי כניסה של OAuth 2.0 | |
| תגובות להוספת הקשר | |
| איגום חיבורים | |
| רישומים מסוג HLL | |
| מודעות מצטברת | |
| המרות מצטברות של PDT | |
| אלפיות שנייה | |
| מיקרו-שניות | |
| תצוגות מהותיות | |
| מדדים של השוואה בין תקופות שונות | |
| ספירה משוערת של ערכים ייחודיים | |
| מודלים לניתוח נתונים במסד הנתונים | |
| יומנים בהתאמה אישית |
Microsoft SQL Server 2017+ תומך בתכונות הבאות החל מ-Looker 26.16:
| תכונה | נתמך? |
|---|---|
| Looker (Google Cloud core) | |
| צבירה סימטרית | |
| טבלאות נגזרות | |
| טבלאות נגזרות מתמידות שמבוססות על SQL | |
| טבלאות נגזרות מתמידות מבוססות LookML | |
| תצוגות יציבות | |
| ביטול שאילתה | |
| טבלאות ציר שמבוססות על SQL | |
| אזורי זמן | |
| SSL | |
| סיכומי ביניים | |
| פרמטרים נוספים של JDBC | |
| תלוי רישיות | |
| סוג מיקום | |
| סוג הרשימה | |
| מאון | |
| אחוזון נפרד | |
| SQL Runner Show Processes | |
| SQL Runner Describe Table | |
| SQL Runner Show Indexes | |
| SQL Runner Select 10 | |
| מספר הפעמים שהופעל SQL Runner | |
| SQL Explain | |
| פרטי כניסה של OAuth 2.0 | |
| תגובות להוספת הקשר | |
| איגום חיבורים | |
| רישומים מסוג HLL | |
| מודעות מצטברת | |
| המרות מצטברות של PDT | |
| אלפיות שנייה | |
| מיקרו-שניות | |
| תצוגות מהותיות | |
| מדדים של השוואה בין תקופות שונות | |
| ספירה משוערת של ערכים ייחודיים | |
| מודלים לניתוח נתונים במסד הנתונים | |
| יומנים בהתאמה אישית |