Oracle Label Security

Oracle Label Security (OLS) เป็นส่วนขยายของเทคโนโลยี Virtual Private Database (VPD) ซึ่งเริ่มนำมาใช้ตั้งแต่ Oracle 8i  OLS อนุญาตให้มีการควบคุมการเข้าถึงลงในแถวต่างๆ ตามป้ายกำกับที่ระบุ ฟังก์ชันการทำงานที่คล้ายคลึงกันสามารถทำซ้ำโดยใช้ Fine Grained Access Control (FGAC) แต่ OLS ให้โซลูชันที่ง่ายกว่าสำหรับการรักษาความปลอดภัยระดับแถว (row-level security) ในบทความนี้ฉันจะนำเสนอตัวอย่างง่ายๆของการกำหนดค่า OLS ตั้งค่าฐานข้อมูล หากไม่ได้เลือกตัวเลือก Label Security เมื่อครั้งติดตั้ง Oracle Database สามารถเรียกตัวติดตั้งและเลือกตัวเลือก Label Security เพิ่มเติมได้ภายหลัง เข้าระบบด้วยบัญชีผู้ใช้ Oracle เปิด terminal พิมพ์ dbca (Database Server เป็น Linux) เมื่อได้ Welcome Screen คลิก Next ที่หน้า Operation คลิก Configure Database Options แล้วคลิก Next หน้า Database เลือกฐานข้อมูลที่ต้องการ คลิก Next ที่หน้า Database Features คลิกเลือก Label Security คลิก Next คลิก Finish เมื่อจบการตั้งค่าให้ restart database สร้างผู้ใช้ทดสอบ คำสั่งทั้งหมดทำภายใน sqlplus สร้างผู้ใช้ ols_test มีรหัสผ่านว่า password โดยให้สิทธิ์ CONNECT, RESOURCE, SELECT_CATALOG_ROLE sqlplus, / as sysdba CONN / AS SYSDBA CREATE USER ols_test IDENTIFIED BY password DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp GRANT CONNECT, RESOURCE, SELECT_CATALOG_ROLE TO ols_test; ต่อไปเป็นการให้สิทธิ์ในแพ็คเกจ OLS แก่ผู้ใช้ ols_test จำเป็นต้อง unlock ผู้ใช้ lbacsys และตั้งรหัสผ่านว่า lbacsys เพื่อใช้เป็นคนกำหนดสิทธิ์ต่างๆ ให้ ols_test ได้แก่สิทธิ์ execute บน sa_components, sa_user_admin, sa_label_admin, sa_policy_admin, sa_audit_admin, sa_sysdba, to_lbac_data_label และให้ ols_test เป็น lbac_dba sqlplus, / as sysdba, lbacsys/lbacsys ALTER USER lbacsys IDENTIFIED BY lbacsys ACCOUNT UNLOCK; CONN lbacsys/lbacsys GRANT EXECUTE ON sa_components TO ols_test WITH GRANT OPTION; GRANT EXECUTE ON sa_user_admin TO ols_test WITH GRANT OPTION; GRANT EXECUTE ON sa_user_admin TO ols_test WITH GRANT OPTION; GRANT EXECUTE ON sa_label_admin TO ols_test WITH GRANT OPTION; GRANT EXECUTE ON sa_policy_admin TO

Read More »

WordPress new editor

อีกไม่นาน WordPress เวอร์ชั่นถัดไป จะใช้ Editor ชื่อ Gutenberg เป็น default editor แทน โดยขยับให้ editor แบบเดิมไปเป็น plugin ชื่อ Classic editor ครับ วันนี้ก็ลองใช้ editor ใหม่นี้ และโพสต์เพจนี้ดูว่าใช้ยากมั้ย เมื่อ upgrade WordPress เป็น 4.9.8 ก็จะพบเพจเชิญชวน และ คำแนะนำ หน้าตา editor ก็ ประมาณนี้  ตัวเลือกก็เป็น ปุ่มเปิด/ปิด ด้วยเครื่องหมาย สามเหลี่ยม เพื่อเปิดรายการมาให้เลือก เช่น categories ที่ต้องการ เมื่ออยู่ที่แท็บ document แต่ถ้า cursor วางอยู่ในข้อความ จะย้ายไปที่แท็บ Block จะเห็น ตัวเลือกอีกชุด น่าจะใช้งานได้ดีกว่าแบบเดิม

Read More »

วิธีเอา Boxbe ออกไปจากชีวิตของคุณ

Boxbe เป็น Free Service ที่พยายามจะจัดการกับ Spam โดยอยู่บนสมมุติฐานว่า ผู้ที่ไม่อยู่ใน Contact ของเรา หรือ อยู่ใน Guest List นั้น มีแนวโน้มจะเป็น Spam เมื่อมีการส่ง email จากกลุ่มนี้ ก็จะถูกเอาไปอยู่ในกล่องที่เป็น Wait List จึงทำให้กล่อง Inbox ซึ่งเราจะอ่าน email เป็นประจำนั้น มาจากคนที่อยู่ใน Contact เท่านั้น   โดยความตั้งใจ ดูดี แต่ …   คนใน Contact ของเรา เป็น Subset ของ email universe ที่เราจะต้องติดต่อด้วย สำหรับคนที่ไม่ได้ทำธุรกิจติดต่อกับคนที่ไม่เคยรู้จักมาก่อน หรือติดต่อเฉพาะคนในองค์กร ก็พอจะไปได้ แต่ในความเป็นจริง ไม่ใช่ทุกคนที่ต้องการอย่างนั้น อีกปัญหาหนึ่งคือ ก่อนหน้านี้ เมื่อมีคนที่ไม่ได้อยู่ใน Contact ของเราติดต่อมา สิ่งที่ Boxbe ทำคือ ส่ง email ตอบกลับไปยังผู้ส่ง ว่า “email ของคุณถูกส่งไปอยู่ใน Wait List” แล้วก็อธิบายด้วยข้อความที่ค่อนข้างสับสน จากนั้น ผู้ส่งที่ได้รับ email ตอบกลับมานั้น ก็อาจจะไม่เข้าใจ แล้วเหลือบไปเห็นปุ่ม “สีน้ำเงิน”  อะไรสักอย่าง แล้วคิดว่า ปุ่มนี้คือปุ่มที่ทำให้ email ของตน ส่งไปยังผู้รับได้ ก็เลยคลิก   เมื่อคลิก สิ่งที่เกิดขึ้นคือ Boxbe จะพาไปยังหน้า Sign-Up Boxbe (จริง ๆ แล้ว ปุ่มสีน้ำเงิน นั่นก็บอกแล้วว่า เป็นการ Sign-Up) แล้วก็ของ Permission ในการ “Read, send, delete and manage your email” และแน่นอน ผู้ใช้ก็กด Allow เป็นธรรมดา หลังจากนั้น …. คุณก็เป็นสมาชิกของ Boxbe ไปโดยไม่รู้ตัว และเกิดปฏิกิริยาลูกโซ่ตามมา คือ คนที่ส่ง email ถึงคุณก็จะได้รับข้อความตอบกลับจาก Boxbe และ คนเหล่านั้นก็ทำอาการเดียวกับคุณ 5555 เข้าใจตรงกันนะ   เอาเป็นว่า มาดูวิธีเอา Boxbe ออกจากชีวิตดีกว่า อันดับแรก ให้ไป Delete Boxbe Account ก่อน โดยไปที่ https://www.boxbe.com/ แล้วคลิกที่ Sign In หรือ ถ้า Login ค้างอยู่ให้คลิกที่ Dashboard จากนั้น คลิก Disable Account แล้วพิมพ์คำว่า Yes แล้วคลิกปุ่ม Close Forever ยัง …. ไม่ยังไม่ตาย เพราะตอนที่ Sign Up นั้น เราไปอนุญาตให้ Boxbe เชื่อมต่อกับ Account ของเรา ในตัวอย่างนี้ เป็นกรณีของ Gmail ไปที่ https://myaccount.google.com/permissions เราจะเจอ Boxbe นั่งยิ้มหวานอยู่  บรรจงคลิก Boxbe แล้วคลิก Revoke Access แล้วก็คลิก OK   จบจ้า  

Read More »

Google Colab – เมื่องานด้าน Data Science ต้องทำงานร่วมกัน

ก่อนหน้านี้ ได้กล่าวถึง Kaggle Introduction to Kaggle – เรียนรู้การงานด้าน Data Science Kaggle – วิธีการใช้ Logistic Regression บนข้อมูล Iris From LAB to Production – จาก Machine Learning Model สู่ Flask RESTful ในบทความนี้ จะกล่าวถึง Google Colab หรือ ชื่อเต็มคือ Colaboratory ของ Google ซึ่งก็เป็น Jupyter Notebook บน Cloud เช่นกัน แต่มีจุดเด่นเรื่อง การทำงานร่วมกัน ในสไตล์ Google Drive เริ่มต้นใช้งานได้ที่ https://colab.research.google.com/ อันดับแรกคือ ถ้าอยากเรียนรู้เรื่อง Machine Learning และอยากได้ตัวอย่างเจ๋ง ๆ ไปดูจาก Seedbank (https://tools.google.com/seedbank/) มี tensorflow พร้อมใช้งาน ใช้งานร่วมกับ GitHub และ มี Visualization ด้วย matplotlib (แปลกตรงไหน ?) จุดเด่นคือ สามารถสร้าง Form ได้ !!! ที่เด่นสุดคือ สามารถใช้ไฟล์จาก Google Drive ได้ !!! เป็นประโยชน์มาก โดยเฉพาะกับมหาวิทยาลัยที่ได้ใช้บริการ G Suite for Education อย่าง ม.สงขลานครินทร์ เพราะ เราจะสามารถใช้พื้นที่ได้ Unlimited ! แต่!!! สุดท้ายก็มาติดตรงที่ Google Colab นี้ เป็น VM อยู่ใน Google Compute Engine นั่นแหล่ะ แต่เค้าไม่คิดค่าบริการกับเรา ซึ่งของฟรี ก็มีข้อจำกัดอยู่คือ พื้นที่ Google Colab ให้ประมาณ 400 GB แต่อย่างน้อย ก็สามารถเชื่อมต่อเอาข้อมูลจาก Google Drive มาได้ง่าย ก็ดีแล้ว แถม Jupyter Notebook ที่สร้างก็สามารถ Save เก็บไว้ใน Google Drive ได้เลย การส่งผลลัพท์ออกไป Google Drive ก็ง่าย ในขณะที่ Kaggle มี Quota การสร้าง Dataset ของตนเองได้ไม่เกิน 20 GB จะมีข้อจำกัดหน่อย ๆ CPU ให้แค่ 2 Core ตรงนี้ Kaggle ดูดีกว่า เพราะให้ถึง 32 Core การทำงานร่วมกัน แน่นอน Google ก็คือ Google แชร์แบบที่ใช้บน Google Drive ได้เลย ในขณะที่ Kaggle ก็ทำได้ แต่ดูทำงานแยก ๆ กันอยู่ Google Colab ใช้งานร่วมกับ Google BigQuery ได้ ตรงนี้แหล่ะ ข้อแตกต่าง ถ้าจะทำงานใหญ่ มีข้อมูลเป็น TB ถ้าไม่สร้าง Hadoop ไม่ว่าจะ On-Primes หรือ บน Google Dataproc ก็จะต้องบริหารจัดการในระดับหนึ่ง แต่นี่เรียกตรงจาก Google BigQuery ได้เลย นับว่าดีมาก มี Widget ทำให้ Jupyter Notebook กลายเป็น Interactive BI ย่อย ๆ

Read More »

วิธีการทำ Group ซ้อน Group ให้สามารถส่งผ่านได้ไปถึงสมาชิกระดับล่างสุด ใน Google Groups

มีคำถามมาว่า ใช้ Google Groups เช่น all-staffs ซึ่ง มี สมาชิกในนี้เป็น Google Groups ด้วย ชื่อ faculty01, faculty02, faculty03 แล้ว ภายใต้ faculty01 มี department01, department02 ซึ่ง department01 นั้น จะประกอบด้วย email ของสมาชิก โดยทุก Group ตั้งค่าไว้ว่า ให้เฉพาะ Owner และ Manager เท่านั้นที่มีสิทธิ์ส่ง แล้ว … จะทำอย่างไร ให้เมื่อมีคน (ที่ได้รับอนุญาตให้ส่ง) สมมุติชื่อ somchai.jaidee@gmail.com ส่งเข้า all-staffs@groups.google.com แล้ว ผู้รับ ซึ่งอยู่ใน department01 สามารถรับ email ได้ ??? วิธีการคือ ให้เพิ่ม email address ของ Group ที่เป็น Parent ลงไปใน Child Group เช่น ในที่นี้ เพิ่ม all-staffs@groups.google.com ลงไปเป็นสมาชิกของ faculty01 Group แล้วตั้งค่าให้ Email Delivery เป็น No email และ Posting Permission เป็น Override : member is allowed to post และ ทำเช่นนี้กับ faculty02, faculty03 … ส่วน department01, department02 ก็ให้เอา faculty02@groups.google.com ไปเป็นสมาชิก และตั้งค่าแบบนี้เช่นกัน  

Read More »