การควบคุมการเข้าถึงสาธารณะ
โดยค่าเริ่มต้น Space แบบสาธารณะ จะไม่มีวิธีการยืนยันตัวตนใดๆ, แต่คุณสามารถเลือกและตั้งค่าได้หลายแบบ:
- รหัสผ่านสำหรับทั้งสเปซ;
- บัญชีส่วนตัว, ที่คุณเพิ่มโดเมนเฉพาะเพื่อให้ผู้ใช้สามารถยืนยันตัวตนหรือสร้างบัญชีด้วยอีเมลของพวกเขา
- ลิงก์ส่วนตัว, ที่คุณสามารถสร้างลิงก์ส่วนตัวและแชร์ให้ผู้ใช้หรือทีมของคุณได้ จัดการการเข้าถึงตามกลุ่มผู้ใช้ผ่านลิงก์;
- JWT, ที่ทีมพัฒนาของคุณสร้าง JWT ด้วยกุญแจลับที่คุณให้ไว้ใน UI ของเรา แล้วส่งกลับมาให้เราเป็นส่วนหนึ่งของลิงก์ วิธีนี้จัดการง่ายที่สุด แต่ต้องใช้เวลาของนักพัฒนา
- SAML, เมื่อคุณมีแอปพลิเคชันภายนอกที่สามารถทำหน้าที่เป็นตัวกลางไปยังโดเมนสเปซของคุณ ทำให้พอร์ทัลสาธารณะเข้าถึงได้เฉพาะสมาชิกที่ตั้งค่าไว้ในผู้ให้บริการ เช่น Google, Azure, Okta
ไม่มี

พฤติกรรมเริ่มต้นถูกตั้งค่าเป็น None ซึ่งหมายความว่าสามารถเข้าถึงได้โดยสาธารณะ คุณสามารถเปลี่ยนการควบคุมเพื่อจำกัดการเข้าถึงสำหรับผู้อ่านได้
ทุกคนที่มีลิงก์จะสามารถอ่านเนื้อหาได้
ลิงก์มีความปลอดภัยในการแชร์ เพราะถูกสร้างขึ้นด้วยวิธีการเข้ารหัสและไม่สามารถเดาได้
เมื่อคุณต้องการจำกัดเนื้อหาให้เฉพาะผู้อ่านบางกลุ่ม ลองใช้ตัวเลือกใดก็ได้ด้านล่างนี้
บัญชีผู้เยี่ยมชม

สร้างบัญชีผู้เยี่ยมชม ทุกคนที่มีลิงก์และมีบัญชีผู้เยี่ยมชมจะสามารถอ่านเนื้อหาได้ บัญชีผู้เยี่ยมชมจะไม่ถูกคิดค่าที่นั่งใน Archbee
บัญชีส่วนตัว

ผู้ใช้จะสามารถยืนยันตัวตน/สร้างบัญชีในพื้นที่ของคุณด้วยอีเมลและรหัสผ่านของตน หากคุณเพิ่มที่อยู่อีเมลหรือโดเมนอีเมลของพวกเขาในรายการด้านล่าง
ทุกคนที่มีลิงก์และมีบัญชีที่ตรงกันจะสามารถอ่านเนื้อหาได้ บัญชีเหล่านี้จะไม่ถูกคิดค่าที่นั่งใน Archbee
รายการผู้ใช้ที่มีบัญชีใช้งานจะปรากฏในหน้าต่าง 'บัญชีที่ใช้งาน'
Magic Link

ผู้ใช้จะสามารถยืนยันตัวตนเข้าสู่พื้นที่ของคุณด้วยที่อยู่อีเมลของพวกเขา หากคุณเพิ่มที่อยู่อีเมลหรือโดเมนอีเมลของพวกเขาในรายการด้านล่าง ทุกคนที่มีลิงก์และมีบัญชีที่ตรงกันจะสามารถอ่านเนื้อหาได้ บัญชีเหล่านี้จะไม่ถูกคิดค่าที่นั่งใน Archbee
ลิงก์ส่วนตัว
สร้างลิงก์ส่วนตัวสำหรับกลุ่มผู้ใช้หรือทีมเฉพาะ แต่ละกลุ่มผู้ใช้หรือทีมจะมีลิงก์ของตัวเองไปยังเอกสารชุดเดียวกัน และคุณสามารถจัดการการควบคุมการเข้าถึงผ่านลิงก์เหล่านี้ ต้องการตัดการเข้าถึงของทีม 1 ใช่ไหม ลบลิงก์ส่วนตัวที่เชื่อมโยงกับทีม 1 ได้เลย

วิธีการทำงานของ JWT
JWT - การยืนยันตัวตนผู้เข้าชมแบบลับ

ไปที่การตั้งค่าพื้นที่ และตั้งค่า JWT secret key ที่คุณสร้างบนเซิร์ฟเวอร์ของคุณ
การยืนยันตัวตนผู้เข้าชมด้วย JSON WEB Key

ไปที่การตั้งค่าพื้นที่ และตั้งค่า JSON WEB Key Set URL ซึ่งเป็น URL ที่เซิร์ฟเวอร์เผยแพร่กุญแจสาธารณะในรูปแบบ JSON
โดยทั่วไปแล้ว JWKS URL จะชี้ไปที่เอกสาร JSON ที่มีอาร์เรย์ของกุญแจเข้ารหัสสำหรับการตรวจสอบลายเซ็น
เมื่อ Archbee ได้รับ JWT ระบบสามารถดึงกุญแจสาธารณะที่เกี่ยวข้องจาก JWKS URL และใช้เพื่อตรวจสอบลายเซ็นของ JWT เพื่อให้มั่นใจว่าโทเคนไม่ได้ถูกแก้ไขและออกโดยผู้ที่เชื่อถือได้
URL ของ JWKS ช่วยให้ไคลเอนต์สามารถรับกุญแจสาธารณะเพื่อใช้ตรวจสอบลายเซ็น JWT ได้อย่างเป็นมาตรฐาน ปลอดภัย และปรับขยายได้ง่าย
นี่คือตัวอย่างไฟล์ jwks.json:
{
"keys": [{
"kid": "1234example=",
"alg": "RS256",
"kty": "RSA",
"e": "AQAB",
"n": "1234567890",
"use": "sig"
}, {
"kid": "5678example=",
"alg": "RS256",
"kty": "RSA",
"e": "AQAB",
"n": "987654321",
"use": "sig"
}]
}สร้างโทเค็น JWT
ใช้หนึ่งในตัวอย่างด้านล่างเพื่อสร้างโทเค็น JWT
คุณยังต้องแทนที่ URL ด้วยซับโดเมนของเว็บไซต์เอกสารของคุณด้วย
const sign = require('jsonwebtoken').sign;
exports.buildArchbeeLoginURL = function() {
// Optional user credentials that you want to send back to Archbee
const user = {
name: 'John',
email: 'Wick',
};
//create a signed token out of the user credentials with the
//secret you set in Archbee
const jwtToken = sign(user, '<archbeeJwtSecret>');
//yourdomain is set in the Custom Domain tab
const archbeeUrl = 'https://yourdomain.com';
//create the complete URL containing the signed token that you'll send back to Archbee
return `${archbeeUrl}?jwt=${jwtToken}&reload`;
};นี่คือตัวอย่างสำหรับสร้างโทเค็น JWT ด้วย .NET: https://github.com/dragosbulugean/archbee-jwt-dotnet
using JWT;
using JWT.Algorithms;
using JWT.Serializers;
var payload = new Dictionary<string, object>
{
{ "name", "John Wick" },
{ "email", "[email protected]" }
};
const string secret = "TW9zaGVFcmV6UHJpdmF0ZUtleQ";
IJwtAlgorithm algorithm = new HMACSHA256Algorithm(); // symmetric
IJsonSerializer serializer = new JsonNetSerializer();
IBase64UrlEncoder urlEncoder = new JwtBase64UrlEncoder();
IJwtEncoder encoder = new JwtEncoder(algorithm, serializer, urlEncoder);
var jwtToken = encoder.Encode(payload, secret);
var archbeeLink = $"https://docs.yourcompany.com/?jwt={jwtToken}&reload";
Console.WriteLine($"JWT Token: {jwtToken}");
Console.WriteLine($"Archbee Link: {archbeeLink}");โทเคน JWT ถูกข้ามการตรวจสอบบน Preview/Staging
SAML - Security Assertion Markup Language

สามารถกำหนดค่า SAML สำหรับการเข้าถึงพื้นที่สาธารณะได้ในลักษณะเดียวกับการเชื่อมต่อทีม ดู การผสานรวม SAML สำหรับขั้นตอนรายละเอียดเพิ่มเติมเกี่ยวกับการตั้งค่าผู้ให้บริการแต่ละราย.
โปรดทราบว่าต้องใช้เพียง URL ของข้อมูลเมตาเป็นอินพุตเท่านั้น นอกจากนี้ เราถือว่าสเปซนี้ถูกโฮสต์บนโดเมนแบบกำหนดเองอยู่แล้ว
ในกรณีนี้ วิธีการ, ลิงก์สเปซที่เผยแพร่จะถูกส่งผ่านแอปพลิเคชัน SAML ใหม่ ดังนั้นมีเพียงสมาชิกที่ตั้งค่าไว้ในแอปพลิเคชันผู้ให้บริการเท่านั้นที่สามารถเข้าถึงพอร์ทัลสาธารณะได้
วิธีตั้งค่า SAML เป็นการควบคุมการเข้าถึงแบบสาธารณะ
ไปที่ Azure Services -> Microsoft Entra ID -> "+Add" -> App registration
เลือก "Accounts in this organizational directory only - Single tenant" และวาง URL สำหรับ CallBack จาก Archbee Space Settings -> Public Access Control -> SAML ลงในช่อง "Redirect URI" ตามภาพด้านล่าง โดยเลือก Web auth:

คลิกที่ "Register"
ในแอปที่สร้างขึ้นใหม่ใน Azure ไปที่ "Endpoints" และคัดลอก "Federation metadata document" จาก Azure App ไปที่ Archbee Space Settings -> Public Access Control -> SAML ลงในช่อง "Set SAML Metadata URL"

จะมีการสร้าง Entity ID เฉพาะใน Archbee ให้คัดลอกลิงก์ "api://PUBLISHED..." ไปยัง Azure App ของคุณในส่วน Expose an API -> Add -> กรอก URL -> บันทึก

ไปที่ space ของคุณใน Archbee แล้วเผยแพร่ใหม่
ลองเข้าถึงลิงก์และทดสอบการยืนยันตัวตนผ่าน SAML
การตั้งค่าพรีวิว
ฟีเจอร์นี้ช่วยให้คุณจำลองการตั้งค่าการยืนยันตัวตนในสภาพแวดล้อมพรีวิวที่มีการควบคุมก่อนเผยแพร่ให้ผู้ใช้ภายในใช้งานจริง
วัตถุประสงค์
เปิดการตั้งค่านี้เพื่อใช้ การป้องกันด้วยการยืนยันตัวตนในสภาพแวดล้อมพรีวิวของคุณ เพื่อจำกัดการเข้าถึงเฉพาะ ผู้ใช้ภายในเท่านั้น. สิ่งนี้ช่วยตรวจสอบค่ากำหนดการยืนยันตัวตน การไหลของการเข้าถึงผู้ใช้ และการตั้งค่าการป้องกัน โดยไม่เปิดเผยการเปลี่ยนแปลงต่อสาธารณะ.
วิธีเปิดใช้งาน
- ไปที่ส่วนการควบคุมการเข้าถึงสาธารณะในหน้า Space Settings
- เลือกวิธีการยืนยันตัวตนใดก็ได้
- ปิดการใช้งาน การตั้งค่าพรีวิว
- เผยแพร่การเปลี่ยนแปลงของคุณไปยังพรีวิวและทดสอบการยืนยันตัวตน

การยืนยันตัวตนหลายรูปแบบ
ฟีเจอร์การยืนยันตัวตนหลายรูปแบบช่วยให้คุณเปิดใช้วิธีการยืนยันตัวตนมากกว่าหนึ่งวิธีสำหรับการเข้าถึงพอร์ทัลเอกสารของคุณ ซึ่งช่วยเพิ่มความยืดหยุ่นและการเข้าถึงสำหรับผู้ใช้ของคุณ
วิธีการทำงาน
จากการตั้งค่าการควบคุมการเข้าถึงสาธารณะ คุณสามารถสลับเปิดใช้งานวิธีการยืนยันตัวตนได้หลายแบบพร้อมกัน ผู้ใช้ที่เข้าถึงพอร์ทัลของคุณสามารถยืนยันตัวตนด้วยวิธีใดวิธีหนึ่งที่เปิดใช้งานอยู่
ตัวอย่างกรณีการใช้งาน
หากคุณเปิดใช้งานทั้ง ลิงก์ส่วนตัว และ รหัสผ่าน, ผู้ใช้สามารถเข้าถึงเอกสารของคุณได้โดยใช้วิธีใดวิธีหนึ่งดังนี้:
- ลิงก์ส่วนตัวที่ปลอดภัยซึ่งคุณแชร์ให้พวกเขา
- หรือรหัสผ่านทั่วไปที่คุณกำหนด

เฉพาะผู้ใช้ที่ตรงตามหนึ่งในวิธีการยืนยันตัวตนที่เปิดใช้งานเท่านั้นที่จะได้รับอนุญาตให้เข้าถึง คุณสามารถปิดใช้งานวิธีการใดก็ได้ทุกเมื่อผ่านสวิตช์ในหน้าการตั้งค่าการควบคุมการเข้าถึงสาธารณะ