Quá trình mở rộng đề cập đến trong mô hình Take – Grant là việc chỉ ra và tháo gỡ những hạn chế mà mô hình gặp phải. Mô hình Take – Grant nói trên chứa nhiều điều bất lợi, đó chính là những hạn chế khi ta áp dụng. Các hạn chế đó có thể tóm tắt như sau:
- Không chọn lọc các quyền quản trị: Quyền quản trị (take-grant) không quy định đặc tả về các quyền hạn ngay trong khi người dùng được phép. Thêm nữa, tất cả các quyền hạn của một chủ thể là quyền ‘grant’ có thể bị chuyển đổi, các quyền hạn trên đối tượng cho phép ‘take’ là hợp lệ.
- Không được điều khiển trên các quyền hạn phổ biến: Khi một chủ thể được quyền truy nhập lần lượt đến các chủ thể khác, thì chủ thể không thể thực hiện quyền này trên nhiều chuyển đổi.
- Không cục bộ: Mô hình là cục bộ nếu các đặc quyền nằm trong một miền (miền này được định nghĩa như tập liên hợp các quyền hạn trên mỗi chủ thể) chỉ có thể thực hiện được nếu quyền hạn của đặc quyền chưa bị huỷ bỏ miền. Tính không cục bộ của Take-Grant là hiển nhiên.
- Tính thuận nghịch của luồng chuyển đổi đặc quyền: nếu các quyền truy cập có thể chuyển đổi trực tiếp hay gián tiếp từ chủ thể x đến chủ thể y thì quyền truy cập từ y về x là không thể ngăn cản.
Biểu đồ mô tả luồng đặc quyền thuận nghịch được đề cập trong ví dụ hình 3.4. Theo trạng thái quyền hạn trong hình 3.4(a), các quyền hạn có thể đi từ chủ thể s1 đến chủ thể s2. Sự bổ sung này cho phép chủ thể s1 tạo lập đối tượng o đồng thời gán quyền sở hữu của chính nó và các đặc quyền trên đối tượng bằng phép toán yêu cầu:
Create Object(g,t)(s1,o)
Biểu đồ đặc quyền kết quả là hình 3.4(b). Bây giờ chủ thể s1 có phép toán yêu cầu sau:
Grant(g, s1, s2, o)
Điều đó có nghĩa là cho phép s2 có đặc quyền trên o. Biểu đồ đặc quyền kết quả là hình 3.4(c). Điều này có nghĩa là s2 có đặc quyền trên o với phép toán Grant và s1
s1 s 2 1 g (a) s1 s 2 1 g (b) g,t s1 s 2 1 g (c) g,t g O O