logologo
Başlangıç
Kılavuz
Geliştirme
Eklentiler
API
English
简体中文
日本語
한국어
Deutsch
Français
Español
Português
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
Başlangıç
Kılavuz
Geliştirme
Eklentiler
API
logologo
API'ye Genel Bakış

@nocobase/auth

AuthManager
Kimlik Doğrulama
BaseAuth

@nocobase/cache

CacheManager
Önbellek

@nocobase/cli

NocoBase CLI
Genel Ortam Değişkenleri

@nocobase/client

Uygulama
Eklenti

@nocobase/database

koleksiyon
Alan

interfaces

BaseInterface
Filtre Operatörleri

RelationRepository

BelongsToManyRepository
belongs-to-repository
HasManyRepository
HasOneRepository
Depo

shared

create-options
destroy-options
find-one
find-options
transaction
update-options

@nocobase/data-source-manager

DataSourceManager
Veri Kaynağı (Soyut)
ICollectionManager
ICollection
IField
IModel
IRepository

@nocobase/flow-engine

Veri Kaynağı Yöneticisi
FlowContext
FlowEngine
FlowModel
İş Akışı Kaynağı

@nocobase/logger

Logger

@nocobase/server

AppCommand
Uygulama
AuditManager
Bağlam
Taşıma
Eklenti

@nocobase/sdk

Kimlik Doğrulama (Auth)
Depolama
Previous PageAPI'ye Genel Bakış
Next PageKimlik Doğrulama
TIP

Bu belge AI tarafından çevrilmiştir. Herhangi bir yanlışlık için lütfen İngilizce sürümüne bakın

#AuthManager

#Genel Bakış

AuthManager, NocoBase'de farklı kullanıcı kimlik doğrulama türlerini kaydetmek için kullanılan kullanıcı kimlik doğrulama yönetim modülüdür.

#Temel Kullanım

const authManager = new AuthManager({
  // İstek başlığından (request header) mevcut kimlik doğrulayıcı tanımlayıcısını almak için kullanılır.
  authKey: 'X-Authenticator',
});

// AuthManager'ın kimlik doğrulayıcıları depolama ve alma yöntemlerini ayarlar.
authManager.setStorer({
  get: async (name: string) => {
    return db.getRepository('authenticators').find({ filter: { name } });
  },
});

// Bir kimlik doğrulama türü kaydeder.
authManager.registerTypes('basic', {
  auth: BasicAuth,
  title: 'Password',
});

// Kimlik doğrulama ara yazılımını (middleware) kullanır.
app.resourceManager.use(authManager.middleware());

#Kavramlar

  • AuthType: Parola, SMS, OIDC, SAML gibi farklı kullanıcı kimlik doğrulama yöntemleridir.
  • Authenticator: Bir kimlik doğrulama yönteminin varlığıdır. Gerçekte bir koleksiyon içinde saklanır ve belirli bir AuthType'ın yapılandırma kaydına karşılık gelir. Bir kimlik doğrulama yöntemi, birden fazla yapılandırmaya karşılık gelen ve farklı kullanıcı kimlik doğrulama yöntemleri sağlayan birden fazla kimlik doğrulayıcıya sahip olabilir.
  • Authenticator name: Bir kimlik doğrulayıcının benzersiz tanımlayıcısıdır ve mevcut istek için kullanılacak kimlik doğrulama yöntemini belirlemek amacıyla kullanılır.

#Sınıf Metotları

#constructor()

constructor, bir AuthManager örneği oluşturur.

#İmza

  • constructor(options: AuthManagerOptions)

#Tipler

export interface JwtOptions {
  secret: string;
  expiresIn?: string;
}

export type AuthManagerOptions = {
  authKey: string;
  default?: string;
  jwt?: JwtOptions;
};

#Detaylar

#AuthManagerOptions
ÖzellikTipAçıklamaVarsayılan
authKeystringİsteğe bağlıdır. İstek başlığında (request header) mevcut kimlik doğrulayıcı tanımlayıcısını tutan anahtardır.X-Authenticator
defaultstringİsteğe bağlıdır. Varsayılan kimlik doğrulayıcı tanımlayıcısıdır.basic
jwtJwtOptionsİsteğe bağlıdır. JWT ile kimlik doğrulama yapılıyorsa yapılandırılabilir.-
#JwtOptions
ÖzellikTipAçıklamaVarsayılan
secretstringToken sırrıX-Authenticator
expiresInstringİsteğe bağlıdır. Token'ın geçerlilik süresidir.7d

#setStorer()

Kimlik doğrulayıcı verilerini depolama ve alma yöntemlerini ayarlar.

#İmza

  • setStorer(storer: Storer)

#Tipler

export interface Authenticator = {
  authType: string;
  options: Record<string, any>;
  [key: string]: any;
};

export interface Storer {
  get: (name: string) => Promise<Authenticator>;
}

#Detaylar

#Authenticator
ÖzellikTipAçıklama
authTypestringKimlik doğrulama türü
optionsRecord<string, any>Kimlik doğrulayıcı ile ilgili yapılandırma
#Storer

Storer, kimlik doğrulayıcı depolaması için bir arayüzdür ve tek bir metot içerir.

  • get(name: string): Promise<Authenticator> - Tanımlayıcısına göre bir kimlik doğrulayıcıyı alır. NocoBase'de, gerçekte dönen tip AuthModel şeklindedir.

#registerTypes()

Bir kimlik doğrulama türü kaydeder.

#İmza

  • registerTypes(authType: string, authConfig: AuthConfig)

#Tipler

export type AuthExtend<T extends Auth> = new (config: Config) => T;

type AuthConfig = {
  auth: AuthExtend<Auth>; // Kimlik doğrulama sınıfı.
  title?: string; // Kimlik doğrulama türünün görünen adı.
};

#Detaylar

ÖzellikTipAçıklama
authAuthExtend<Auth>Kimlik doğrulama türü uygulaması, Auth bölümüne bakınız.
titlestringİsteğe bağlıdır. Bu kimlik doğrulama türünün ön yüzde (frontend) gösterilecek başlığıdır.

#listTypes()

Kayıtlı kimlik doğrulama türlerinin listesini alır.

#İmza

  • listTypes(): { name: string; title: string }[]

#Detaylar

ÖzellikTipAçıklama
namestringKimlik doğrulama türü tanımlayıcısı
titlestringKimlik doğrulama türü başlığı

#get()

Bir kimlik doğrulayıcıyı alır.

#İmza

  • get(name: string, ctx: Context)

#Detaylar

ÖzellikTipAçıklama
namestringKimlik doğrulayıcı tanımlayıcısı
ctxContextİstek bağlamı

#middleware()

Kimlik doğrulama ara yazılımıdır (middleware). Mevcut kimlik doğrulayıcıyı alır ve kullanıcı kimlik doğrulamasını gerçekleştirir.