cuốn sách gpt4 ai đã làm

Ví dụ nhỏ về xác minh quyền giả mạo

In lại Tác giả: Sahara Thời gian cập nhật: 2024-06-30 23:02:32 58 4
mua khóa gpt4 Nike

Lời nói đầu

Về cách xác thực quyền giả trong thử nghiệm cục bộ.

chữ

Khi chúng tôi sử dụng vênh vang để gỡ lỗi giao diện cục bộ, chúng tôi thường trì hoãn công việc của mình vì chúng tôi cần điền mã thông báo mỗi lần. Không thể đến môi trường thử nghiệm cục bộ để yêu cầu mã thông báo xác minh mỗi lần chúng tôi gỡ lỗi.

Hình trên có thể là vị trí mã thông báo mà chúng tôi cần điền vào trong quá trình thử nghiệm cục bộ rất bất tiện.

Vậy làm thế nào để giả mạo xác minh quyền và vượt qua nó?

Có hai chương tiên quyết:

  1. https://www.cnblogs.com/aoximin/p/15582365.html
  2. https://www.cnblogs.com/aoximin/p/15613974.html

Đọc hai chương mở đầu này, bạn có thể biết ngay những câu diễn đạt sau đây, nhưng nếu bạn không đọc kịp thời cũng không sao.

Còn khi xác thực trong khung .net thì sao?

Chúng tôi có thể thêm chương trình xác minh của riêng mình.

  AuthenticationBuilder ảo công khai AddScheme(chuỗi xác thựcScheme, string? displayName, Action? configureOptions) trong đó TOptions : AuthenticationSchemeOptions, new() trong đó THandler : AuthenticationHandler => AddSchemeHelper(authenticationScheme, displayName, configureOptions);

Nói cách khác, chúng tôi có thể tùy chỉnh sơ đồ xác minh, sau đó nếu chúng tôi thêm sơ đồ giả, nó sẽ vượt qua.

lớp công khai FakeAuthenticationOptions: AuthenticationSchemeOptions { public virtual ClaimsIdentity Identity { get;

ClaimsIdentity được thêm vào tùy chọn Fake. This Identity là thông tin người dùng mà chúng ta muốn giả mạo.

Sau đó, trình xử lý của chúng tôi được viết như thế này

lớp công khai FakeAuthenticationHandler: AuthenticationHandler { public FakeAuthenticationHandler( IOptionsMonitor tùy chọn, ILoggerFactory logger, bộ mã hóa UrlEncode, đồng hồ ISystemClock): base(options, logger, bộ mã hóa, đồng hồ) { } ghi đè được bảo vệ Task HandleChallengeAsync(AuthenticationProperties Properties) { return Task.CompletedTask; } ghi đè được bảo vệ Nhiệm vụ HandleForbiddenAsync(AuthenticationProperties Properties) { return Task.CompletedTask } ghi đè được bảo vệ Nhiệm vụ HandleAuthenticateAsync() { var prime = new ClaimsPrincipal(Options.Identity); (hiệu trưởng, mới AuthenticationProperties(), Schem.Name); var result = AuthenticateResult.Success(ticket); return Task.FromResult(result);

Vì chúng tôi giả mạo thông tin để vượt qua xác minh nên chúng tôi trực tiếp sử dụng Task.CompletedTask cho Thử thách (401) và Bị cấm (403) và tình huống này sẽ không xảy ra.

Sau đó chúng ta viết HandleAuthenticateAsync như thế này khi xác thực

  1. Tạo vé với thông tin giả mạo
  2. Tiêm vé vào kết quả xác thực
  3. Trả về kết quả xác thực

Tại thời điểm này chúng tôi đã giả mạo thông tin chứng nhận.

Lưu ý: Việc ủy quyền được thực hiện thông qua thông tin xác thực nên chúng tôi đã giả mạo thông tin xác thực nhằm đánh lừa việc ủy quyền.

Sau đó, chúng tôi gói gọn xác thực dưới dạng phần mềm trung gian thành giao diện phần mềm trung gian

lớp tĩnh công khai FakeAuthenticationExtensions { public static AuthenticationBuilder AddFake(trình tạo AuthenticationBuilder này, lược đồ chuỗi, Action configureOptions) => builder.AddScheme( lược đồ, lược đồ, configureOptions });

Khi đó tốt nhất nên thêm tên lược đồ mặc định vào lúc này

lớp công khai FakeScheme { chuỗi const công khai Mặc định = "Fake";

Sau đó, khi chúng tôi đưa sơ đồ vào, nó sẽ như thế này

builder.AddFake(FakeScheme.Default, u => { List Claims = new List(); var userId = configure.GetValue("AuthServer:FakeUser"); Claims.Add(new Claim( ClaimTypes.NameIdentifier, userId)); u.Identity = new ClaimsIdentity(claims, "Role"); });

Bằng cách này, thông tin chứng nhận sẽ bị giả mạo và sau đó các xác nhận quyền sở hữu có thể được điều chỉnh linh hoạt theo nhu cầu xác minh của riêng bạn.

Nút thắt

Phần trên mô tả ngắn gọn cách giả mạo thông tin xác thực để thử nghiệm cục bộ, thông tin này có thể được tắt trước hoặc trực tuyến thông qua các biến môi trường hoặc cấu hình.

Cuối cùng, bài viết về một ví dụ nhỏ về xác minh quyền giả mạo kết thúc tại đây. Nếu bạn muốn biết thêm về một ví dụ nhỏ về xác minh quyền giả mạo, vui lòng tìm kiếm bài viết của CFSDN hoặc tiếp tục duyệt các bài viết liên quan. tương lai! .

58 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress