Author: grianggrai.n

  • Change BYTE to CHAR for all columns, all tables

    เมื่อมีการสร้างฟิลด์ให้มีชนิดเป็น char หรือ varchar2 จริงๆ แล้ว มันมีหน่วยย่อยไปอีกว่าจะให้เป็น Byte หรือ Char ซึ่งโดยปกติจะเป็น Byte สามารถเปลี่ยนค่า default นี้ได้ด้วยการเปลี่ยนตัวแปรของระบบตัวแปรชื่อ nls_length_semantics

    https://docs.oracle.com/cd/B19306_01/server.102/b14237/initparams127.htm#REFRN10124

    ดูรายละเอียดเพิ่มเติม

    ทีนี้ Byte กับ Char มันสำคัญอย่างไร…สำคัญเรื่องการแปลง Character Set เช่น จาก TH8ASCII เป็น AL32UTF8 จากข้อมูลเดิม 1 ตัวอักษรเท่ากับ 1Byte สำหรับ TH8ASCII และ 3Byte สำหรับ AL32UTF8 ทำให้เมื่อเราสร้างฟิลด์ ตอนมี Character set บน TH8ASCII ชนิดของข้อมูลเป็น varchar2 มีขนาด 3Byte ถ้าจะนำข้อมูลเข้าอีกฐานข้อมูลที่มี Character Set เป็น AL32UTF8 จะนำเข้าไม่ได้เพราะขนาดเกินจำนวน Byte ที่สร้างคือกลายเป็น 9Byte ต้องกลับไปเปลี่ยนต้นทางจากหน่วย Byte เป็น Char คือเก็บเป็นตัวอักษรแทน

    ทีนี้เราจากสร้างสคริปต์เพื่อ สร้างสคริปต์ อีกที… ด้วยคำสั่ง (สคริปต์ในตัวอย่างนี้จะเป็นการสร้างจาก Username SCOTT)

    SELECT 'alter table '||owner||'.'|| table_name ||
           ' modify '||column_name||' varchar2('|| 
           data_length ||' CHAR); '
      FROM all_tab_columns
     WHERE data_type = 'VARCHAR2'
       AND char_used = 'B'
       and owner in ('SCOTT')
    ;

    เมื่อสั่งสคริปต์ทำงานจะได้ผลลัพธ์ประมาณว่า

    alter table

    ทีนี้จากสคริปต์ข้างต้น จะดึงข้อมูลของ Table และ View มาทั้งหมดทำให้เมื่อได้สคริปต์ไปแล้วสั่งทำงานจะมี error ต้องกรองเอา view ออก

    error

    เปลี่ยนสคริปต์ใหม่เป็น

    select 'alter table '||all_objects.OWNER||'.'||'"'||all_objects.OBJECT_NAME ||'"'||' modify '||'("'||column_name||'"'||' varchar2('|| ALL_TAB_COLUMNS.DATA_LENGTH ||' CHAR)); '
    from   all_objects,all_tab_columns
    where  all_objects.object_type in ('TABLE')
    and all_tab_columns.data_type = 'VARCHAR2'
    AND all_tab_columns.char_used = 'B'
    and object_name not in (select all_objects.object_name from all_objects where all_objects.object_type = 'VIEW')
    and all_objects.object_name=all_tab_columns.table_name
    and all_objects.owner in ('SCOTT');

    เมื่อสั่งรันสคริปต์จะได้ผลลัพธ์

    alter script

    ก็จะสามารถนำสคริปต์ที่ได้ไปสั่งรันได้ปกติ

    Complete

    หลังจากเปลี่ยนข้อมูล TH8ASCII จาก Byte เป็น Char แล้วสามารถนำเข้าใน AL32UTF8 ได้เลย

    จบขอให้สนุก

    ต้นฉบับ

    http://webgeest.blogspot.com/2014/12/change-byte-to-char-for-all-columns-all.html

  • How to create LVM volume group and logical volume

    LVM ย่อมาจาก Logical Volume Manager ความสามารถของ LVM คือสามารถสร้าง logical partition ขยายไปบนฮาร์ดดิสก์หลายๆ ลูกได้ ขั้นตอนต่อไปนี้เป็นขั้นตอนที่ทำบน CentOS หรือ Oracle Linux หรือ ค่าย Redhat Enterprise Linux ส่วนฝั่ง Debian ก็สามารถใช้คำสั่งเดียวกันทำงานเหมือนกัน แต่อาจจะต้องติดตั้งโปรแกรมเพิ่ม

    โดยขนาดสูงสุดที่ LVM ทำได้ขึ้นกับชนิดของ CPU และ Kernel ที่ใช้งาน

    • สำหรับ Kernel 2.4 บน CPU 32-Bit มีขนาดได้ไม่เกิน 2TB
    • สำหรับ Kernel 2.6 บน CPU 32-Bit มีขนาดได้ไม่เกิน 16TB
    • สำหรับ Kernel 2.6 บน CPU 64-Bit มีขนาดได้ไม่เกิน 8EB
    • ป้จจุบัน Kernel รุ่น ? CPU 64-Bit ยังไม่มีคำตอบ

    แต่เมื่อ format ให้มีระบบไฟล์แบบ ext4 จะสร้างพาทิชั่นได้ไม่เกิน 1EB เท่านั้น

    ขึ้นกับ file system ใช้งานด้วย
    • เริ่มได้
    • เข้าระบบด้วยบัญชีผู้ใช้ที่มีสิทธิ์ของ root ซึ่งอาจจะเป็น root เอง หรือ user ที่อยู่ในกลุ่ม wheel หากเข้าด้วยบัญชีผู้ใช้อื่นๆ ที่ไม่ใช่ root ให้สั่งคำสั่ง
    su -
    ตามด้วยรหัสผ่านของ root

    หรือ

    sudo -i
    ตามด้วยรหัสผ่านของผู้ใช้ที่เรียกคำสั่งนี้

    จึงจะสามารถทำคำสั่งต่อไปได้

    • ตรวจสอบว่ามีฮาร์ดดิสก์ลูกไหนถูกใช้งานอยู่บ้างด้วยคำสั่ง
    df -h
    • ได้ผลลัพธ์ประมาณดังรูป
    df
    df
    • จากภาพข้างต้น /dev/sda ถูกใช้งานอยู่แล้วคือ /dev/sda1 และ /dev/sda2 ให้ตรวจสอบว่ามีดิสก์ลูกอื่นอีกหรือไม่ด้วยคำสั่ง
    fdisk -l|grep /dev
    fdsik
    fdisk
    • จะเห็นว่ามี /dev/sdb, /dev/sdc และ /dev/sdd ที่ว่างอยู่
    • จะใช้ /dev/sdb
    • เริ่มจากสร้างพื้นที่สำหรับทำ LVM ก่อนด้วยคำสั่ง
    fdisk /dev/sdb

    กด n ตามด้วย p ตามด้วย 1 แล้ว enter 2 ครั้ง

    กด t แล้วพิมพ์ 8e แล้วกด w ดังภาพ

    fdisk
    fdisk
    • สร้าง LVM physical volume โดยใช้คำสั่ง pvcreate
    pvcreate /dev/sdb1
    • สร้าง LVM volume group ชื่อ vg_u01
    vgcreate vg_u01 /dev/sdb1
    • สร้าง LVM logical volume group ชื่อ lv_u01 ใน volume group ที่ชื่อ vg_u01 โดยให้มีขนาดทั้งหมดที่มีอยู่ใน vg_u01
    lvcreate -n lv_u01 -l 100%FREE vg_u01

    ดังภาพ

    pvcreate, vgcreate, lvcreate
    pvcreate, vgcreate, lvcreate
    • ดูสถานะว่า LVM สร้างเสร็จแล้วด้วยคำสั่ง
     pvscan
    pvscan
    • ดูสถานะว่ามี Physical Volume เท่าไหร่ ด้วยคำสั่ง
    pvdisplay
    pvdisplay
    • ก่อนใช้งานอย่าลืม format โดย device ที่จะต้อง format จะกลายเป็น /dev/vg_u01/lv_u01 ให้มีชื่อว่า u01
    mkfs.ext4 -L u01 /dev/vg_u01/lv_u01
    mkfs.ext4
    • สร้าง mount point ให้กับ lv_u01
    mkdir /u01
    • mount lv_u01 เข้ากับ /u01
    mount LABEL=u01 /u01
    • ตรวจสอบว่า /u01 ถูกเรียกใช้งานแล้ว ใส่ -h เพื่อให้ระบุขนาดเป็น GMK
    df -h
    mkdir, mount, df
    • สั่งให้ mount อัตโนมัติทุกครั้งที่บูตเครื่องเพิ่มข้อความต่อไปนี้ในแฟ้ม /etc/fstab
    LABEL=u01       /u01    ext4    defaults 0 0
    fstab
    • จบขอให้สนุก
    • อาจจะยังไม่เห็นภาพว่าแล้วมันกระจายไปดิสก์หลายๆ ลูกได้อย่างไร อธิบายง่ายๆ /u01 สามารถอยู่ได้บนฮาร์ดดิสก์มากกว่าหนึ่งลูก โดยเห็นเป็นพื้นที่เดียวกันคือ /u01 ซึ่งอาจจะประกอบไปด้วย /dev/sdb1, /dev/sdc1 ใน vg_u01
    • ยังมีเรื่องการเพิ่มขนาดภายหลังให้ดูที่ http://portal.psu.ac.th/blog/howto/6281 ไปพลางก่อน
  • Byeๆ TLS1.0 TLS1.1

    ใช้ Firefox beta อยู่เลยจะได้รับ Feature อะไรใหม่ๆ อยู่เรื่อยๆ จนเมื่อ beta 73 กว่าๆ เริ่มเข้าเว็บบางเว็บในมหาวิทยาลัยไม่ได้ จะปรากฏหน้าดังนี้

    เว็บสามัญประจำบ้านแห่งหนึ่ง

    อ่านดูถึงได้รู้ว่าออ เค้าจะเลิก TLS1.0 และ TLS1.1 แล้วจริงประกาศไว้นานละว่าจะเลิกปีนี้!! สำหรับ Firefox จะเลิกในรุ่น 74 และ Chrome น่าจะรุ่น 81 ส่วน Microsoft และ Safari ก็จะปิดในครึ่งปีแรก ในปีนี้เช่นกัน

    https://www.techtalkthai.com/old-tls-protocol-has-been-dropped-by-all-major-browsers-in-2020/

    เอ้าเลยเช็คเว็บตัวเองสักหน่อยเริ่มจาก ทดสอบกับเว็บที่เคยได้ A+ ผลเป็นดังรูป

    ม่ายยย

    อัยย่ะละก๊ะ…. เหลือ B เพราะเปิด TLS1.0 และ TLS1.1 เอาไว้ ปิดให้ไว

    วิธีการคือ (สำหรับ Apache2)

    แก้ไขแฟ้ม /etc/apache/mod-enabled/ssl.conf หาข้อความว่า

     SSLProtocol All -SSLv3

    (บางคนอาจจะมี -SSLv2 ด้วยแต่ apache2 ไม่สนับสนุน SSLv2 โดยปริยาย (default) แล้ว) เปลี่ยนข้อความข้างต้นเป็น

    SSLProtocol All -SSLv3 -TLSv1 -TLSv1.1

    บันทึกแล้ว restart apache ให้เรียบร้อย เมื่อไปตรวจใหม่ได้ผลตามภาพ

    เย่ กลับมา A+ แล้ว จบขอให้สนุก

    เกี่ยวข้อง

    https://sysadmin.psu.ac.th/hardening-your-http-response-headers/

    https://sysadmin.psu.ac.th/เปลี่ยน-certificate/

  • Open Google Calendar

    หลังจากครั้งก่อนได้แนะนำ extension สำหรับสร้างตารางนัดหมายบน Google Calendar ผ่านโปรแกรมเมล์ยอดนิยมตลอดกาล นั่นคือ Thunderbird นั่นเอง!!! อ่านได้ที่ Thunderbird Return วันนี้ก็จะมาเล่าถึง Extension อีกตัวทำงานอย่างเดียวกันแต่รอบนี้ไม่ต้องทำอะไรให้วุ่นวาย extension ชื่อเหมือนบทความคือ Open Google Calendar ขอข้ามวิธีติดตั้งเลยละกัน ติดตั้งเหมือน extension ตัวเก่ากลับไปอ่านบทความก่อนหน้าได้นะครับ

    เมื่อติดตั้งเสร็จแล้วจะมีปุ่มเพิ่มขึ้นมาที่มุมบนขวาดังรูป

    คลิกที่ Open Google Calendar แล้ว Sign In เข้าระบบให้เรียบร้อย จะได้ดังภาพ.

    Google Calendar

    สามารถเพิ่มอีเว้นท์อีไม่เว้นท์ได้เหมือนเปิดเว็บ กรั่กๆ ง่ายกว่าวิธีเก่า พอสมควรแก่การใช้งานบนเครื่องที่เราใช้คนเดียว!! ย้ำคนเดียว เพราะยังหาวิธี sign out ไม่เจอ 555

    วันนี้สั้นๆ แค่นี้ครับ จบขอให้สนุก…

  • How to safely grant ALTER SYSTEM KILL SESSION “privilege” to non-DBA users

    อยากฆ่าคน เอ้ย session บน oracle แต่ไม่มีสิทธิ์ (Privilege) ไปขอสิทธิ์ DBA แล้ว DBA บอกว่าไม่มีสิทธิ์ kill session จะแจกให้!!! ทำไงดี

    เข้าระบบฐานข้อมูล Oracle ด้วยผู้ใช้ system หรือ sys แล้วสร้าง Procedure ชื่อว่า sp_kill_dev_session ด้วยคำสั่ง

    CREATE OR REPLACE PROCEDURE sys.sp_kill_dev_session(p_sid NUMBER, p_serial NUMBER)
    AS
        v_user VARCHAR2(30);
    BEGIN
        SELECT MAX(username)
        INTO v_user
        FROM v$session
        WHERE sid = p_sid
          AND serial# = p_serial;
    
        IF v_user IN ('SCOTT') THEN --the list can be extended
             EXECUTE IMMEDIATE 'ALTER SYSTEM KILL SESSION ''' || p_sid || ',' || p_serial || '''';
        ELSIF v_user IS NULL THEN
             RAISE_APPLICATION_ERROR(-20001,'Session has Expired or Invalid sid/serial Arguments Passed');
        ELSE
             RAISE_APPLICATION_ERROR(-20002,'Unauthorized Attempt to Kill a Non-Dev Session has been Blocked.');
        END IF;
    END sp_kill_dev_session;
    /

    จาก code ข้างต้น ให้เปลี่ยน SCOTT เป็น username ที่เป็นเจ้าของ session เช่น

    IF v_user IN ('HIRXPXT','PHU_XDMIHHION') THEN --the list can be extended

    เป็นต้น จากตัวอย่าง จะมี 2 user คือ HIRXPXT และ PHU_XDMIHHION

    แล้ว grant สิทธิ์ ให้สามารถ exec กับ user ที่ต้องการฆ่า session เหล่านั้นด้วยคำสั่ง ตัวอย่างจะให้ user ชื่อว่า HIRXPXT มีสิทธิ์ exec

    GRANT EXECUTE ON sp_kill_dev_session TO HIRXPXT;

    แล้วจะทำให้ user ที่ชื่อ HIRXPXT สามารถฆ่า (kill) session ของ user ได้ 2 คนคือ HIRXPXT และ PHU_XDMIHHION

    วิธีใช้งาน เข้าระบบด้วย user ที่ชื่อ HIRXPXT แล้วเรียกใช้คำสั่ง

    exec sys.sp_kill_dev_session(sid,serial num);

    เช่น

    Session Properties 
    exec sys.sp_kill_dev_session(154,42802);

    โดย 14 คือ sid และ 26043 คือ serial ซึ่งสองค่านี้สามารถเรียกดูได้จากคำสั่ง

    SELECT SID, SERIAL#, STATUS, SERVER
    FROM V$SESSION
    WHERE USERNAME = upper('<username>');

    เปลี่ยน <username> เป็น username ที่ต้องการ แต่การที่จะดูค่าเหล่านี้ได้ต้องมีสิทธิ์ จากตัวอย่าง user ที่ชื่อ HIRXPXT สามารถ select view และ table เหล่านี้ได้

    SYS.V_$PROCESS
    SYS.V_$SESSION
    SYS.V_$TRANSACTION
    SYS.V_$SESSION_LONGOPS
    SYS.V_$LOCK
    SYS.V_$SESSTAT
    SYS.V_$STATNAME
    SYS.V_$ACCESS
    SYS.V_$ROLLNAME
    SYS.V_$SQLTEXT
    SYS.V_$SQLTEXT_WITH_NEWLINES
    SYS.V_$SQL
    SYS.V_$OPEN_CURSOR
    SYS.V_$SESSION_WAIT
    SYS.V_$SESSION_EVENT
    SYS.V_$SESSION_CONNECT_INFO
    SYS.V_$EVENT_NAME
    SYS.V_$SESS_IO
    SYS.V_$EVENTMETRIC
    SYS.DBA_ROLLBACK_SEGS

    เท่านี้ก็เพียงพอที่จะให้ทีมพัฒนาสามารถฆ่า (kill) session ของตัวเองที่ค้างอยู่บน server ได้โดยไม่ต้องมาจิกหัว DBA กรั่กๆ

    ต้นฉบับ

    https://sqlpatterns.wordpress.com/2015/03/02/how-to-safely-grant-alter-system-kill-session-privilege-to-non-dba-users/

    จบ…. ขอให้สนุก

  • Thunderbird returns

    หลังจากปันใจไปให้ Microsoft Outlook และใช้ Microsoft Outlook มาตลอดเกือบ 5 ปี มีเหตุให้การใช้ Google Calendar มีความสะดวกมากกว่า Office365 Calendar (จริงๆ ปฎิทินของ Office365 อาจจะทำได้ก็ได้แต่ไม่มีคนสอนกรั่กๆ) และเมื่อจะใช้ Google Calendar (โดยไม่ใช้เว็บ) ก็ต้องใช้คู่กับ Thunderbird สินะ!!!

    Download

    https://www.thunderbird.net/en-US/ คลิกตรงปุ่ม Free Download รุ่นปัจจุบัน 68.1.0 จะได้ English (US) รุ่น 32-bit หากต้องการรุ่น 64-bit คลิกที่ system & language แล้วเลือกภาษาที่ต้องการ แน่นอนไม่มีภาษาไทย English (US) หรือถ้าอ่านภาษาอื่นๆ ออกเชิญเลือกตามอัธยาศัย

    โหลดมาแล้วก็ติดตั้งให้เรียบร้อยด้วย Next Technology (Yes, Next, Next, Next, Next, Install, Finish)

    เมื่อเปิดโปรแกรม Thunderbird ครั้งแรกจะได้ประมาณดังรูป

    Set Up an Existing Email Account

    Mail Setup

    เริ่มการใช้งานได้เลยขั้นแรกตั้งค่าเมล์ สำหรับผู้ที่เปิดใช้งาน Gmail แล้วเท่านั้น หากยังไม่ได้เปิดใช้งาน อ่าน ที่นี่ ก่อน

    หากมีการเปิด 2-step Verification ต้องไปสร้าง App password ที่ gmail.com ให้เรียบร้อยก่อนแล้วเอา password ที่ได้มาใช้กับ thunderbird

    Calendar Setup

    Thunderbird (สำหรับ Windows) รุ่นใหม่ๆ จะให้ Lightning มาโดยปริยายไม่ต้องติดตั้งเพิ่ม แต่สิ่งที่ต้องติดตั้งเพิ่มคือ Provider for Google Calendar

    ส่วน Thunderbird (สำหรับ linux) ต้องติดตั้งเพิ่มเอง

    ที่หน้าต่าง Thunderbird กดปุ่ม alt-T (ปุ่ม alt และปุ่มอักษร t พร้อมกัน) เพื่อเรียกเมนู Tools

    เลือก Add-ons

    Add-ons

    จะได้หน้า Add-ons Manager

    Manage Your Extensions 

    ค้นหา Provider for Google Calendar ในช่อง Find more extensions จะได้หน้าต่างเพิ่มเป็นดังรูป

    Search Results

    คลิกปุ่ม + Add to Thunderbird แล้วคลิก Add

    Add

    คลิก Restart Now

    Restart

    เมื่อคลิกที่หน้าต่าง Add-ons Manager จะเห็นว่ามี Provider for Google Calendar เพิ่มมาแล้ว

    Add-ons Manager

    กลับมาที่หน้าหลักสังเกตมุมบนขวาจะมีรูป ให้คลิกที่ เพื่อเปิดหน้าปฎิทิน

    Calendar

    คลิกขวาที่พื้นที่ว่าง ๆ ใต้คำว่า Calendar เลือก New Calendar

    New Calendar

    จะได้หน้า Create New Calendar ให้เลือก On the Network แล้วคลิก Next

    Create a new calendar

    เลือก Google Calendar แล้วคลิก Next

    Google Calendar

    ใส่ E-mail address แล้วคลิก Next

    Locate your calendar

    ตรวจสอบว่า Username ที่ใส่ให้ถูกต้องหรือไม่คลิกถ้าถูกคลิก Next

    Sign in

    กรอกรหัสผ่านของ E-mail คลิก Next

    Enter your password

    หากเปิด 2-step Verification ไว้ก็เปิดแอ็ปกรอกตัวเลขให้เรียบร้อย

    2-step

    เลื่อนลงมาล่างสุดคลิก Allow

    Allow

    เลือกปฎิทินที่ต้องการคลิก Next

    Locate your calendar

    คลิก Finish

    Finish

    จะเห็นว่ามีปฎิทินเพิ่มขึ้นมาแล้วสามารถใช้งานได้ทันที

    Calendar

    จบขอให้สนุก

    หมายเหตุ!!!

    ต้องตั้งค่า general.useragent.compatMode.firefox ใน advance configuration ของ Thunderbird เป็น true สำหรับตอนนี้ เนื่องจาก Google เปลี่ยนอะไรสักอย่างทำให้ authen ไม่ได้

  • ปิดช่องโหว่เหลือค้าง

    • หลังจากไม่ได้ตรวจสอบช่องโหว่มานาน วันนี้ Nessus ทำใหม่แล้วลองสแกนซักหน่อย
    Nessus Scan Report
    • ซึ่งจะพบว่ามี Medium สองรายการ คือ Browsable Web Directory และ WordPress User Enumeration โดย
      • Browsable Web Directory คือ สามารถเข้าถึงรายการใน directory ได้ เช่น ชื่อไฟล์ มีไฟล์อะไรบ้าง ขนาดเท่าไหร่ เป็นต้น เมื่อตรวจสอบก็พบว่าเป็น directory ที่ผู้ใช้ไม่จำเป็นต้องเข้าถึง
      • WordPress User Enumeration คือ สามารถเข้าถึง username ได้ว่ามี user อะไรบ้าง

    ปิด Directory Browsing

    ทำได้ 2 วิธีคือ

    • แก้ไขแฟ้ม config ของ site ที่ต้องการปิด โดยทั่วไปแฟ้มจะอยู่ที่ /etc/apache2/site-enabled/site.conf โดย site.conf คือชื่อไฟล์ที่ต้องการ โดยเพิ่มในส่วนของ Directory ของไซต์นั้น ตัวอย่างเป็น /var/www/html/aaeee ให้ทำการแก้ไขหรือเพิ่มข้อความตามตัวอย่าง ส่วนสำคัญคือ Options ต้องไม่มีคำว่า Indexes เมื่อแก้ไขเสร็จ ให้ reload หรือ restart apache2 ด้วยคำสั่ง sudo systemctl reload apache2 หรือ sudo systemctl restart apache2
    <Directory /var/www/html/aaeee>
            Options FollowSymLinks
            AllowOverride All
    </Directory>
    • สำหรับวิธีที่สองนี้ ต้องมีการระบุ AllowOverride All ในแฟ้มของไซต์ ด้วยจึงจะใช้งานได้ (หากแก้ไขไฟล์ไซต์ของ apache2 ต้อง reload หรือ restart ด้วย) เช่น
    <Directory /var/www/html/aaeee>
            AllowOverride All
    </Directory>
    • สร้างแฟ้ม .htaccess เอาไว้ใน Directory (จากตัวอย่างนี้คือ /var/www/html/aaeee) ที่ต้องการ โดยเพิ่มข้อความข้างล่างนี้วิธีนี้ มีผลทันทีไม่ต้อง reload หรือ restart apache2
    Options -Indexes

    ปิด WordPress User Enumeration

    • ในไซต์ของ WordPress จะมีแฟ้ม .htaccess อยู่ให้เพิ่มข้อความต่อไปนี้ลงไป โดย yoursite.name คือชื่อเว็บไซต์
    #user enumeration
    RewriteCond %{QUERY_STRING} ^author=([0-9]*)
    RewriteRule .* https://yoursite.name/? [L,R=302]
    • เมื่อทำสองอย่างแล้วให้ nessus เข้าตรวจสอบอีกครั้ง
    Nessus Scan Report
    • เย่….หายไปละ
    • จบขอให้สนุก
  • บริหารจัดการ App Passwords บน Office 365

    App passwords คือ password ที่จำเป็นต้องใช้บนแอพพลิเคชั่นใดๆ ก็ตามที่ไม่สามารถผ่าน Multi-factor authentication ได้ เช่น Outlook, Lync เป็นต้น

    เริ่ม…ได้

    Profile
    • เลือก My account จะได้ดังรูป
    My account
    • คลิก Security & privacy
    Security & privacy
    • คลิก Additional security verification
    Additional security verification 
    app passwords
    • คลิก create
    Create app password
    • ตั้งชื่อที่เราเข้าใจว่าคือ app ไหน คลิก Next
    Name
    • จะได้ password สำหรับใช้งานได้ทันที ก็เอาไปใช้ได้เลยแล้วคลิก close
    Your app password
    • จะเห็นว่า password ยาวมาก และเป็นพาสเวิร์ดที่สร้างขึ้นมาครั้งเดียว
    • จำไม่ได้ต้องสร้างใหม่ แล้วของเก่าทิ้งโดยการกด Delete หลัง password ที่ไม่ใช้งาน
    • ชื่อ app เป็นเพียงชื่อที่ใช้สื่อความหมายว่าเอาพาสเวิร์ดไปใช้กับ app อะไรเท่านั้น
    • password สามารถใช้ได้ตราบใดที่ยังไม่ลบออก ถึงแม้จะจำไม่ได้ถ้ากรอกไว้และให้โปรแกรมที่ใช้งาน password นี้จำไว้ก็จะใช้ได้ตลอด
    Delete app password
    Successfully deleted
    • จบขอให้สนุก