Какие схемы аутентификации и авторизации Вы используете - и почему?

SceneKit - это абстракция, построенная на OpenGL / Metal. Он объединяет часто используемые операции, модели затенения и т. Д. В приятную среду, поэтому программистам не нужно реализовывать весь конвейер рендеринга. Вам не нужно переходить в Metal для выполнения часто поддерживаемых операций, таких как физический рендеринг.

Чтобы реализовать PBR, вам нужно указать, что ваш объект использует PBR, и установить различные входные данные, необходимые для визуализации эффекта:

let material = firstNode.geometry?.firstMaterial
material?.lightingModelName = SCNLightingModelPhysicallyBased
material?.diffuse.contents = UIImage(named: "albedo.png")
material?.roughness.contents = UIImage(named: "roughness.png")
material?.metalness.contents = UIImage(named: "metalness.png")
material?.normal.contents = UIImage(named: "normal.png")

Вам нужно только перейти в Metal, если вы пытаетесь реализовать эффект, который не поддерживается SceneKit. Надеюсь, это поможет!

39
задан marc_s 16 April 2009 в 20:22
поделиться

8 ответов

Попробуйте это исправить:

http://blogs.msdn.com/webdevtools/archive/2009/03 /03/hotfix-available-for-asp-net-mvc-crashes-with-azure-power-commands-resharper.aspx

It работал для меня.

NET провайдеры членства.

Большинство из того, что производит MS, «хорошо» или «достаточно хорошо», но всегда будут крайние случаи, когда вы хотите сделать что-то «не совсем стандартное», что означает, что вы в конечном итоге бросаете своя. Я предполагаю иметь что-то помимо «Базовой аутентификации» или «Аутентификации Windows», что было просто для понимания обычным разработчиком, они выбрали разумную опцию «давайте просто создадим это для Интернета».

Если вы посмотрите на Из многочисленных способов аутентификации в службе WCF вы поймете, что я имею в виду - эти предназначены и предназначены для работы с различными транспортными механизмами, и поэтому являются гораздо более сложными.

Тем не менее, роли по умолчанию и поставщики профилей довольно ограничены (роли: нет иерархии, поэтому вам нужно проверить каждую возможную роль, или явно назначить каждую роль пользователю; профили: все они хранятся в одном поле в виде значений, разделенных запятыми - нелегко найти всех пользователей, у которых есть набор значений).

19
ответ дан 27 November 2019 в 02:52
поделиться

Мы используем (3). Фактически это помогло нам в сценарии интеграции иметь учетные записи, синхронизированные с

  1. бизнес-процессами
  2. Другими системами (не все в одном технологическом стеке (ASP.NET))
6
ответ дан 27 November 2019 в 02:52
поделиться

Ldap кто-нибудь? Он бесплатный, кросс-платформенный, простой в использовании и удаленном администрировании, имеет мосты к другим схемам аутентификации и привязки на большем количестве языков, которые, как вы знали, существовали ...

1
ответ дан 27 November 2019 в 02:52
поделиться

Разве это не AZMan 2003 года?

Я бы порекомендовал 1 или 3. Лично я всегда обращался за 3. У меня есть много функций, которые я не использую или не хочу использовать.

1
ответ дан 27 November 2019 в 02:52
поделиться

Я бы держался подальше от AzMan. Однажды мы пошли по этому пути, и нам не понравился раздел города, в котором мы разбились. Мы всегда делали логины на основе AD, которые используют SID текущего пользователя для связи с пользователем в базе данных, а затем принимали разрешения оттуда. Учитывая ваши настройки, это может быть невозможно (или практически), но в любом случае я бы держался подальше от AzMan.

1
ответ дан 27 November 2019 в 02:52
поделиться

Я не являюсь разработчиком ASP или .NET, но моя интуиция говорит (3). Вы действительно не хотите, чтобы общедоступное веб-приложение имело какой-либо доступ к вашей корпоративной сети, тем более что вы не могли бы размещать учетные данные для аутентификации где-нибудь рядом с AD.

1
ответ дан 27 November 2019 в 02:52
поделиться

Конструктор объявлен как явный, что означает, что он не будет использоваться для неявного приведения типов. Неявное преобразование в auto_ptr может легко привести к нежелательным ситуациям, поскольку auto_ptr становится владельцем указателя.

Например, если auto_ptr разрешит неявное преобразование из указателя, и вы случайно передали указатель на метод, принимающий auto_ptr, указатель может быть тихо преобразованным в auto_ptr и впоследствии удаленным, когда функция заканчивается, даже если это не было намерением. Но, пометив конструктор как явное преобразование, больше не может происходить тихо, и, вызывая конструктор, вы четко выражаете намерение передать владение auto_ptr, таким образом избегая любой потенциальной путаницы. Вам просто нужно смоделировать его, чтобы он обеспечил вам необходимую гибкость и расширяемость

Что-то вроде:

    [ClassAttribute ( "Yordan Georgiev", "1.0.2", "20090302", "20090415" , false )]
public class User
{
    #region DomainName
    private string _DomainName;
    public string DomainName
    {
        get { return _DomainName; }
        set { _DomainName = value; }
    } //eof property DomainName 


    #endregion DomainName

    #region Status
    private int _Status;
    public int Status
    {
        get { return _Status; }
        set { _Status = value; }
    } //eof property Status 


    #endregion Status

#region Password
    private string _Password = Resources.GV.Pass; 
    public string Password
    {
        get { return _Password; }
        set {
            _Password = GenApp.Utils.Security.Encryptor.Encrypt ( value,
                GenApp.Conf.GenAppSettings.Instance.EncryptionAlgorithm );
            //debug_Password = value; //unencrypted 
        }
    } //eof property Password 


    #endregion Password 

#region ListUserRoles
        private List<UserRole> _ListUserRoles;
        public List<UserRole> ListUserRoles { get { return _ListUserRoles; } set     { _ListUserRoles = value; } }
        #endregion ListUserRoles


    #region UserSettings
    private GenApp.Conf.UserSettings _UserSettings;
    public GenApp.Conf.UserSettings UserSettings
    {
        get {
            if (_UserSettings == null)
                _UserSettings = (GenApp.Conf.UserSettings)GenApp.Conf.GenAppSettings.Instance;

            return _UserSettings; 
        }
        set { _UserSettings = value; }
    } //eof property UserSettings 

}

1
ответ дан 27 November 2019 в 02:52
поделиться

В недавнем проекте мы расширили поставщика членства ASP.NET (написал пользовательский поставщик) с намерением использовать некоторые элементов управления на основе ролей для управления разрешениями. Теперь, когда проект достаточно созрел, мы обнаруживаем, что элементы управления недостаточно гибки для наших требований, и в некоторой степени мы сожалеем о том, что идем по пути членства в MS. Лучше всего будет использовать собственную аутентификацию, если у вас есть время на ее правильную разработку.

Похоже, ваше приложение представляет собой гибрид, поскольку вы обслуживаете внутренних и внешних клиентов, но, возможно, также Рассмотрим возможность интеграции OpenID для ваших внешних клиентов. Есть несколько отличных ASP. NET OpenID контролирует, что действительно упрощает обработку новых учетных записей для внешних клиентов. Это, конечно, зависит от того, насколько «публичным» является ваше приложение.

3
ответ дан 27 November 2019 в 02:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: